1. Software architecture in practice, 2nd edition By Len Bass, Paul Clement, Rick
Kazman
Pattern oriented software architecture By Frank Buschmann, Regine Meunier,
Hans Rohnert, Peter Sornmerald, Michael Stal
An introduction to Software Architecture By david Garrlan , Mary Shaw
Dr. Reeja S R
Associate Professor
CSE Dept
SJEC
2. What Makes “Good” Architecture?
No inherently good or bad Architecture
Architectures are either more or less fit for some
stated purpose
Architectures must be evaluated
Architecture should follow basic guidelines
3. 1. Identify leader
2. Pre-requisites: Functional requirements, Prioritized list of quality
attributes
3. Be well documented
4. Circulated to stakeholders
5. Analyzed for throughput and attainment of quality attributes
6. Lend itself to Incremental implementation
7. Should have minimal resource contention areas, the resolution of which
should be clearly specified.
4. 1. Features well-defined modules
2. Has well-defined interface for each module
3. Achieve quality attributes using well-known tactics
4. Be independent of specific commercial product or tool
5. Separation of data producers from data consumers
6. For parallel processing systems
Define processes/tasks to be carried out on each thread
Tasks can be moved from one processor to another at runtime
7. Architecture should feature a small number of interaction patterns i.e. should
do the same things same way throughout.
5. Architecture is more than the result of the
functional requirements
Influence on architecture
Architecture Business Cycle
Architecture guidelines to promote
Best possible design for system
System success
Editor's Notes
producer does not need to know whether there is one or many consumers connected