This course introduces students to large-scale software development including software design, implementation and maintenance. Topics included are: software life cycle, design techniques, Psychology and Economics of software testing, organization and management of modular inter-communications, software engineering tools, project management including resource estimation, team organization and review. The students will apply these techniques to develop a software project.
Prerequisite: COMP 223, ENGL 229 or ENGL 230