Software architecture in practice
This award-winning book, substantially updated to reflect the latest developments in the field, introduces the concepts and best practices of software architecture--how a software system is structured and how that system's elements are meant to interact. Distinct from the details of implementat...
Autor principal: | |
---|---|
Otros Autores: | , |
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Boston :
Addison-Wesley
c2003.
|
Edición: | 2nd ed |
Colección: | SEI series in software engineering
|
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009627259106719 |
Tabla de Contenidos:
- Cover
- Contents
- Preface
- Acknowledgments
- Reader's Guide
- PART ONE: ENVISIONING ARCHITECTURE
- CHAPTER 1 The Architecture Business Cycle
- 1.1 Where Do Architectures Come From?
- 1.2 Software Processes and the Architecture Business Cycle
- 1.3 What Makes a "Good" Architecture?
- 1.4 Summary
- 1.5 Discussion Questions
- CHAPTER 2 What Is Software Architecture?
- 2.1 What Software Architecture Is and What It Isn't
- 2.2 Other Points of View
- 2.3 Architectural Patterns, Reference Models, and Reference Architectures
- 2.4 Why Is Software Architecture Important?
- 2.5 Architectural Structures and Views
- 2.6 Summary
- 2.7 For Further Reading
- 2.8 Discussion Questions
- CHAPTER 3 A-7E Avionics System: A Case Study in Utilizing Architectural Structures
- 3.1 Relationship to the Architecture Business Cycle
- 3.2 Requirements and Qualities
- 3.3 Architecture for the A-7E Avionics System
- 3.4 Summary
- 3.5 For Further Reading
- 3.6 Discussion Questions
- PART TWO: CREATING AN ARCHITECTURE
- CHAPTER 4 Understanding Quality Attributes
- 4.1 Functionality and Architecture
- 4.2 Architecture and Quality Attributes
- 4.3 System Quality Attributes
- 4.4 Quality Attribute Scenarios in Practice
- 4.5 Other System Quality Attributes
- 4.6 Business Qualities
- 4.7 Architecture Qualities
- 4.8 Summary
- 4.9 For Further Reading
- 4.10 Discussion Questions
- CHAPTER 5 Achieving Qualities
- 5.1 Introducing Tactics
- 5.2 Availability Tactics
- 5.3 Modifiability Tactics
- 5.4 Performance Tactics
- 5.5 Security Tactics
- 5.6 Testability Tactics
- 5.7 Usability Tactics
- 5.8 Relationship of Tactics to Architectural Patterns
- 5.9 Architectural Patterns and Styles
- 5.10 Summary
- 5.11 Discussion Questions
- 5.12 For Further Reading
- CHAPTER 6 Air Traffic Control: A Case Study in Designing for High Availability.
- 6.1 Relationship to the Architecture Business Cycle
- 6.2 Requirements and Qualities
- 6.3 Architectural Solution
- 6.4 Summary
- 6.5 For Further Reading
- 6.6 Discussion Questions
- CHAPTER 7 Designing the Architecture
- 7.1 Architecture in the Life Cycle
- 7.2 Designing the Architecture
- 7.3 Forming the Team Structure
- 7.4 Creating a Skeletal System
- 7.5 Summary
- 7.6 For Further Reading
- 7.7 Discussion Questions
- CHAPTER 8 Flight Simulation: A Case Study in an Architecture for Integrability
- 8.1 Relationship to the Architecture Business Cycle
- 8.2 Requirements and Qualities
- 8.3 Architectural Solution
- 8.4 Summary
- 8.5 For Further Reading
- 8.6 Discussion Questions
- CHAPTER 9 Documenting Software Architectures
- 9.1 Uses of Architectural Documentation
- 9.2 Views
- 9.3 Choosing the Relevant Views
- 9.4 Documenting a View
- 9.5 Documentation across Views
- 9.6 Unified Modeling Language
- 9.7 Summary
- 9.8 For Further Reading
- 9.9 Discussion Questions
- CHAPTER 10 Reconstructing Software Architectures
- 10.1 Introduction
- 10.2 Information Extraction
- 10.3 Database Construction
- 10.4 View Fusion
- 10.5 Reconstruction
- 10.6 Example
- 10.7 Summary
- 10.8 For Further Reading
- 10.9 Discussion Questions
- PART THREE: ANALYZING ARCHITECTURES
- CHAPTER 11 The ATAM: A Comprehensive Method for Architecture Evaluation
- 11.1 Participants in the ATAM
- 11.2 Outputs of the ATAM
- 11.3 Phases of the ATAM
- 11.4 The Nightingale System: A Case Study in Applying the ATAM
- 11.5 Summary
- 11.6 For Further Reading
- 11.7 Discussion Questions
- CHAPTER 12 The CBAM: A Quantitative Approach to Architecture Design Decision Making
- 12.1 Decision-Making Context
- 12.2 The Basis for the CBAM
- 12.3 Implementing the CBAM
- 12.4 Case Study: The NASA ECS Project
- 12.5 Results of the CBAM Exercise.
- 12.6 Summary
- 12.7 For Further Reading
- 12.8 Discussion Questions
- CHAPTER 13 The World Wide Web: A Case Study in Interoperability
- 13.1 Relationship to the Architecture Business Cycle
- 13.2 Requirements and Qualities
- 13.3 Architectural Solution
- 13.4 Another Cycle through the ABC: The Evolution of Web-Based E-Commerce Architectures
- 13.5 Achieving Quality Goals
- 13.6 The Architecture Business Cycle Today
- 13.7 Summary
- 13.8 For Further Reading
- 13.9 Discussion Questions
- PART FOUR: MOVING FROM ONE SYSTEM TO MANY
- CHAPTER 14 Software Product Lines: Re-using Architectural Assets
- 14.1 Overview
- 14.2 What Makes Software Product Lines Work?
- 14.3 Scoping
- 14.4 Architectures for Product Lines
- 14.5 What Makes Software Product Lines Difficult?
- 14.6 Summary
- 14.7 For Further Reading
- 14.8 Discussion Question
- CHAPTER 15 CelsiusTech: A Case Study in Product Line Development
- 15.1 Relationship to the Architecture Business Cycle
- 15.2 Requirements and Qualities
- 15.3 Architectural Solution
- 15.4 Summary
- 15.5 For Further Reading
- 15.6 Discussion Questions
- CHAPTER 16 J2EE/EJB: A Case Study of an Industry-Standard Computing Infrastructure
- 16.1 Relationship to the Architecture Business Cycle
- 16.2 Requirements and Qualities
- 16.3 Architectural Solution
- 16.4 System Deployment Decisions
- 16.5 Summary
- 16.6 For Further Reading
- 16.7 Discussion Questions
- CHAPTER 17 The Luther Architecture: A Case Study in Mobile Applications Using J2EE
- 17.1 Relationship to the Architecture Business Cycle
- 17.2 Requirements and Qualities
- 17.3 Architectural Solution
- 17.4 How Luther Achieved Its Quality Goals
- 17.5 Summary
- 17.6 For Further Reading
- 17.7 Discussion Questions
- CHAPTER 18 Building Systems from Off-the-Shelf Components
- 18.1 Impact of Components on Architecture.
- 18.2 Architectural Mismatch
- 18.3 Component-Based Design as Search
- 18.4 ASEILM Example
- 18.5 Summary
- 18.6 Further Reading
- CHAPTER 19 Software Architecture in the Future
- 19.1 The Architecture Business Cycle Revisited
- 19.2 Creating an Architecture
- 19.3 Architecture within the Life Cycle
- 19.4 The Impact of Commercial Components
- 19.5 Summary
- Acronyms
- References
- Index.