1 option
Software architecture in practice / Len Bass, Paul Clements, Rick Kazman.
- Format:
- Book
- Author/Creator:
- Bass, Len.
- Series:
- SEI series in software engineering
- Language:
- English
- Subjects (All):
- Software architecture.
- System design.
- Physical Description:
- 1 online resource (xxii, 528 p. ) ill. ;
- Edition:
- 2nd ed.
- Place of Publication:
- Boston : Addison-Wesley, c2003.
- Language Note:
- English
- System Details:
- text file
- Summary:
- 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 implementation, algorithm, and data representation, an architecture holds the key to achieving system quality, is a reusable asset that can be applied to subsequent systems, and is crucial to a software organization's business strategy. Drawing on their own extensive experience, the authors cover the essential technical topics for designing, specifying, and validating a system. They also emphasize the importance of the business context in which large systems are designed. Their aim is to present software architecture in a real-world setting, reflecting both the opportunities and constraints that companies encounter. To that end, case studies that describe successful architectures illustrate key points of both technical and organizational discussions. Topics new to this edition include: Architecture design and analysis, including the Architecture Tradeoff Analysis Method (ATAM) Capturing quality requirements and achieving them through quality scenarios and tactics Using architecture reconstruction to recover undocumented architectures Documenting architectures using the Unified Modeling Language (UML) New case studies, including Web-based examples and a wireless Enterprise JavaBeans™ (EJB) system designed to support wearable computers The financial aspects of architectures, including use of the Cost Benefit Analysis Method (CBAM) to make decisions If you design, develop, or manage the building of large software systems (or plan to do so), or if you are interested in acquiring such systems for your corporation or government agency, use Software Architecture in Practice, Second Edition, to get up to speed on the current state of software architecture.
- Contents:
- 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.
- Notes:
- Bibliographic Level Mode of Issuance: Monograph
- Includes bibliographical references (p. 489-494) and index.
- Description based on publisher supplied metadata and other sources.
- ISBN:
- 9786612433177
- 9780321680419
- 0321680413
- 9781282433175
- 1282433172
- 9780321680396
- 0321680391
- OCLC:
- 1027169147
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.