This course strives to prepare the students for real-world software development problems. The objective of the course is to develop an understanding of the technical and organizational complexities involved in system design and to teach key concepts and techniques used to manage these complexities. Students are required to design a complex computer-based system through team effort. The target system is complex, involving distributed processing, user interfaces, and real-time constraints. Issues such as human factors, performance, operation costs, and maintainability are addressed and resolved in a reasonable manner.
Emphasis is placed on emulating the realities of an industrial organization.