06IS72 Software Architectures syllabus for CS


Part A
Unit-1 INTRODUCTION 6 hours

The Architecture Business Cycle: Where do architectures come from? Software processes and the architecture business cycle; What makes a “good” architecture? What software architecture is and what it is not; Other points of view; Architectural patterns, reference models and reference architectures; Importance of software architecture; Architectural structures and views.

Unit-2 ARCHITECTURAL STYLES AND CASE STUDIES 7 hours

Architectural styles; Pipes and filters; Data abstraction and object-oriented organization; Event-based, implicit invocation; Layered systems; Repositories; Interpreters; Process control; Other familiar architectures; Heterogeneous architectures. Case Studies: Keyword in Context; Instrumentation software; Mobile robotics; Cruise control; Three vignettes in mixed style.

Unit-3 QUALITY 6 hours

Functionality and architecture; Architecture and quality attributes; System quality attributes; Quality attribute scenarios in practice; Other system quality attributes; Business qualities; Architecture qualities. Achieving Quality: Introducing tactics; Availability tactics; Modifiability tactics; Performance tactics; Security tactics; Testability tactics; Usability tactics; Relationship of tactics to architectural patterns; Architectural patterns and styles.

Unit-4 ARCHITECTURAL PATTERNS 1 7 hours

Introduction; from mud to structure: Layers, Pipes and Filters, Blackboard.

Part B
Unit-5 ARCHITECTURAL PATTERNS 2 7 hours

Distributed Systems: Broker; Interactive Systems: MVC, Presentation-Abstraction-Control.

Unit-6 ARCHITECTURAL PATTERNS 3 6 hours

Adaptable Systems: Microkernel; Reflection.

Unit-7 SOME DESIGN PATTERNS 6 hours

Structural decomposition: Whole – Part; Organization of work: Master – Slave; Access Control: Proxy.

Unit-8 DESIGNING AND DOCUMENTING SOFTWARE ARCHITECTURE 7 hours

Architecture in the life cycle; designing the architecture; Forming the team structure; Creating a skeletal system. Uses of architectural documentation; Views; choosing the relevant views; Documenting a view; Documentation across views.

Last Updated: Tuesday, January 24, 2023