This course integrates tools and concepts from across the SIS curriculum to develop a system-level perspective on IT artifacts and solutions. It focuses on the iterative process of design and analysis through which business requirements and solution elements are transformed into implementable architectural descriptions. By combining hands-on design with critical analysis and reflection, the course prepares students to participate effectively in all stages of the life cycle of a software-intensive IT system, from conception and development to deployment and evolution.

Learning outcomes

- Familiarize students with system thinking skills: Analysis across an entire end-to-end system - Familiarize students with system thinking skills: Making and evaluating reasoned tradeoffs of desired qualities - Familiarize students with system thinking skills: Impact analysis to understand the implications of design choices. - Build students’ capacity to analyze software system designs, with an emphasis on system-level quality attributes, especially performance, scalability, and fault tolerance). - Teach standard practices in documenting system architectures using views and perspectives. - Develop familiarity with common architectural strategies and concerns for enterprise software systems. - Instill an appreciation for the value of software architecture.

Number of credit hours per week 3
Total number of credit hours 36
Course eligibility Compulsory
Presence of students On-campus