Current techniques in software design presented with emphasis on architecture first development. Introduction to the processes involved in development. Practice architectural design through a series of homework problems. Students work in teams to prepare the architecture for a software product.
Prerequisites:
- CS 326 - Programming Languages, Concepts and Implementation
- CS 370 - Operating Systems
Level: Senior