course
SWE321
This course covers the fundamental design principles and strategies for software architecture and design. Architectural styles and patterns, different types of software architecture such as data-centered, object-oriented, hierarchical, distributed (e.g., CORBA, SOA), component oriented, heterogeneous architecture. Architecture implementation, analysis, and designing non-functional properties are presented as well. Students participate in a group project on software design and architecture and design tools.