06IS72 - Software Architectures |
PART – A |
UNIT 1 |
INTRODUCTION: 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: 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: 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: Introduction; from mud to structure:
Layers, Pipes and Filters, Blackboard. |
PART – B |
UNIT 5 |
ARCHITECTURAL PATTERNS – 2: Distributed Systems: Broker;
Interactive Systems: MVC, Presentation-Abstraction-Control. |
UNIT 6 |
ARCHITECTURAL PATTERNS – 3: Adaptable Systems: Microkernel;
Reflection. |
UNIT 7 |
SOME DESIGN PATTERNS: Structural decomposition: Whole – Part;
Organization of work: Master – Slave; Access Control: Proxy. |
UNIT 8 |
DESIGNING AND DOCUMENTING SOFTWARE ARCHITECTURE:
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. |
REFERENCE |
TEXT BOOKS: |
1. Software Architecture in Practice – Len Bass, Paul Clements,
Rick Kazman, 2nd Edition, Pearson Education, 2003.
2. Pattern-Oriented Software Architecture, A System of Patterns -
Volume 1 – Frank Buschmann, Regine Meunier, Hans Rohnert,
Peter Sommerlad, Michael Stal, , John Wiley and Sons, 2006.
3. Mary Shaw and David Garlan: Software Architecture-
Perspectives on an Emerging Discipline, Prentice-Hall of India,
2007.
|
Reference Books |
Design Patterns- Elements of Reusable Object-Oriented
Software – E. Gamma, R. Helm, R. Johnson, J. Vlissides:, Addison-
Wesley, 1995. Web site for Patterns:
http://www.hillside.net/patterns/ |