Prerequisite: COMP 200 Basics of Software Engineering, the terminologies involved and various principles, methods, tools and techniques used to produce quality software, two fundamental approaches of software engineering: structural and object-oriented.