Software Architecture
- An Introduction to Software Architecture and Architectural Thinking
- Architectural and qualitative characteristics
- Modular Coordination, Components, and Principles of Architectural Design
- Architectural Decisions and Trade-off Analysis
- Architectural Styles and Patterns - Part 1: Layered Architecture, Pipe-and-Filter, Repository, Client-Server, Kernel, and Modular Architectures.
- Architectural Styles and Patterns - Part 2: Service-Oriented, Microservices, and Event-Driven Architectures; Comparison of Styles Based on Quality Attributes
- Distributed Systems Architecture and Architectural Challenges
- Perspectives on software architecture description (architectural viewpoints), documentation, and visualization.
- Architecture Assessment, Risk, and Governance
- Architectural Evolution, Maintenance, and Technical Debt
- Principles of clean and secure architecture
- Artificial Intelligence and Machine Learning System Architectures
- Software Architecture of Generative Systems and Systems Based on Large Language Models
- Effective leadership of the software architecture technical team
- Research and Open Problems in Software Architecture and Course Review
- Final Course Exam