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):
- Computer software.
- Computer architecture.
- System design.
- Physical Description:
- xxii, 528 pages : illustrations ; 25 cm.
- Edition:
- Second edition.
- Place of Publication:
- Boston : Addison-Wesley, [2003]
- Summary:
- This is the eagerly-anticipated revision to one of the seminal books in the field of software architecture which clearly defines and explains the topic.
- Contents:
- Part 1 Envisioning Architecture 1
- Chapter 1 The Architecture Business Cycle 3
- 1.1 Where Do Architectures Come From? 6
- 1.2 Software Processes and the Architecture Business Cycle 12
- 1.3 What Makes a "Good" Architecture? 14
- Chapter 2 What Is Software Architecture? 19
- 2.1 What Software Architecture Is and What It Isn't 19
- 2.2 Other Points of View 23
- 2.3 Architectural Patterns, Reference Models, and Reference Architectures 24
- 2.4 Why Is Software Architecture Important? 26
- 2.5 Architectural Structures and Views 35
- Chapter 3 A-7E Avionics System: A Case Study in Utilizing Architectural Structures 47
- 3.1 Relationship to the Architecture Business Cycle 48
- 3.2 Requirements and Qualities 49
- 3.3 Architecture for the A-7E Avionics System 54
- Part 2 Creating an Architecture 69
- Chapter 4 Understanding Quality Attributes 71
- 4.1 Functionality and Architecture 72
- 4.2 Architecture and Quality Attributes 73
- 4.3 System Quality Attributes 74
- 4.4 Quality Attribute Scenarios in Practice 78
- 4.5 Other System Quality Attributes 94
- 4.6 Business Qualities 95
- 4.7 Architecture Qualities 96
- Chapter 5 Achieving Qualities 99
- 5.1 Introducing Tactics 100
- 5.2 Availability Tactics 101
- 5.3 Modifiability Tactics 105
- 5.4 Performance Tactics 111
- 5.5 Security Tactics 116
- 5.6 Testability Tactics 118
- 5.7 Usability Tactics 121
- 5.8 Relationship of Tactics to Architectural Patterns 123
- 5.9 Architectural Patterns and Styles 124
- Chapter 6 Air Traffic Control: A Case Study in Designing for High Availability 129
- 6.1 Relationship to the Architecture Business Cycle 132
- 6.2 Requirements and Qualities 132
- 6.3 Architectural Solution 135
- Chapter 7 Designing the Architecture 153
- 7.1 Architecture in the Life Cycle 153
- 7.2 Designing the Architecture 155
- 7.3 Forming the Team Structure 167
- 7.4 Creating a Skeletal System 170
- Chapter 8 Flight Simulation: A Case Study in an Architecture for Integrability 175
- 8.1 Relationship to the Architecture Business Cycle 176
- 8.2 Requirements and Qualities 177
- 8.3 Architectural Solution 182
- Chapter 9 Documenting Software Architectures 201
- 9.1 Uses of Architectural Documentation 202
- 9.2 Views 204
- 9.3 Choosing the Relevant Views 205
- 9.4 Documenting a View 207
- 9.5 Documentation across Views 215
- 9.6 Unified Modeling Language 218
- Chapter 10 Reconstructing Software Architectures 231
- 10.2 Information Extraction 234
- 10.3 Database Construction 237
- 10.4 View Fusion 239
- 10.5 Reconstruction 241
- Part 3 Analyzing Architectures 261
- Chapter 11 The ATAM: A Comprehensive Method for Architecture Evaluation 271
- 11.1 Participants in the ATAM 272
- 11.2 Outputs of the ATAM 274
- 11.3 Phases of the ATAM 275
- 11.4 The Nightingale System: A Case Study in Applying the ATAM 288
- Chapter 12 The CBAM: A Quantitative Approach to Architecture Design Decision Making 307
- 12.1 Decision-Making Context 308
- 12.2 The Basis for the CBAM 310
- 12.3 Implementing the CBAM 314
- 12.4 Case Study: The NASA ECS Project 317
- 12.5 Results of the CBAM Exercise 324
- Chapter 13 The World Wide Web: A Case Study in Interoperability 327
- 13.1 Relationship to the Architecture Business Cycle 328
- 13.2 Requirements and Qualities 329
- 13.3 Architectural Solution 334
- 13.4 Another Cycle through the ABC: The Evolution of Web-Based E-Commerce Architectures 340
- 13.5 Achieving Quality Goals 346
- 13.6 The Architecture Business Cycle Today 346
- Part 4 Moving from One System to Many 351
- Chapter 14 Software Product Lines: Re-using Architectural Assets 353
- 14.2 What Makes Software Product Lines Work? 355
- 14.3 Scoping 357
- 14.4 Architectures for Product Lines 360
- 14.5 What Makes Software Product Lines Difficult? 363
- Chapter 15 Celsius Tech: A Case Study in Product Line Development 369
- 15.1 Relationship to the Architecture Business Cycle 370
- 15.2 Requirements and Qualities 387
- 15.3 Architectural Solution 390
- Chapter 16 J2EE/EJB: A Case Study of an Industry-Standard Computing Infrastructure 401
- 16.1 Relationship to the Architecture Business Cycle 402
- 16.2 Requirements and Qualities 403
- 16.3 Architectural Solution 406
- 16.4 System Deployment Decisions 419
- Chapter 17 The Luther Architecture: A Case Study in Mobile Applications Using J2EE 427
- 17.1 Relationship to the Architecture Business Cycle 429
- 17.2 Requirements and Qualities 432
- 17.3 Architectural Solution 434
- 17.4 How Luther Achieved Its Quality Goals 451
- Chapter 18 Building Systems from Off-the-Shelf Components 453
- 18.1 Impact of Components on Architecture 455
- 18.2 Architectural Mismatch 456
- 18.3 Component-Based Design as Search 462
- 18.4 ASEILM Example 466
- Chapter 19 Software Architecture in the Future 477
- 19.1 The Architecture Business Cycle Revisited 479
- 19.2 Creating an Architecture 479
- 19.3 Architecture within the Life Cycle 481
- 19.4 The Impact of Commercial Components 482.
- Notes:
- Includes bibliographical references (pages 489-494) and index.
- Local Notes:
- Acquired for the Penn Libraries with assistance from the Class of 1924 Book Fund.
- ISBN:
- 0321154959
- OCLC:
- 51861905
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.