Evaluating software architectures : methods and case studies
著者
書誌事項
Evaluating software architectures : methods and case studies
(The SEI series in software engineering)
Addison-Wesley, c2002
大学図書館所蔵 全9件
  青森
  岩手
  宮城
  秋田
  山形
  福島
  茨城
  栃木
  群馬
  埼玉
  千葉
  東京
  神奈川
  新潟
  富山
  石川
  福井
  山梨
  長野
  岐阜
  静岡
  愛知
  三重
  滋賀
  京都
  大阪
  兵庫
  奈良
  和歌山
  鳥取
  島根
  岡山
  広島
  山口
  徳島
  香川
  愛媛
  高知
  福岡
  佐賀
  長崎
  熊本
  大分
  宮崎
  鹿児島
  沖縄
  韓国
  中国
  タイ
  イギリス
  ドイツ
  スイス
  フランス
  ベルギー
  オランダ
  スウェーデン
  ノルウェー
  アメリカ
注記
Includes bibliographical references (p. 303-306) and index
内容説明・目次
内容説明
The foundation of any software system is its architecture. Using this book, you can evaluate every aspect of architecture in advance, at remarkably low cost -- identifying improvements that can dramatically improve any system's performance, security, reliability, and maintainability. As the practice of software architecture has matured, it has become possible to identify causal connections between architectural design decisions and the qualities and properties that result downstream in the systems that follow from them. This book shows how, offering step-by-step guidance, as well as detailed practical examples -- complete with sample artifacts reflective of those that evaluators will encounter. The techniques presented here are applicable not only to software architectures, but also to system architectures encompassing computing hardware, networking equipment, and other elements. For all software architects, software engineers, developers, IT managers, and others responsible for creating, evaluating, or implementing software architectures.
目次
List of Figures.
List of Tables.
Preface.
Acknowledgments.
Reader's Guide.
1. What Is Software Architecture?
Architecture as a Vehicle for Communication among Stakeholders.
Architecture and Its Effects on Stakeholders.
Architectural Views.
Architecture Description Languages.
Architecture as the Manifestation of the Earliest Design Decisions.
Architectural Styles.
Architecture as a Reusable, Transferable Abstraction of a System.
Summary.
For Further Reading.
Discussion Questions.
2. Evaluating a Software Architecture.
Why Evaluate an Architecture?
When Can an Architecture Be Evaluated?
Who's Involved?
What Result Does an Architecture Evaluation Produce?
For What Qualities Can We Evaluate an Architecture?
Why Are Quality Attributes Too Vague for Analysis?
What Are the Outputs of an Architecture Evaluation?
Outputs from the ATAM, the SAAM, and ARID.
Outputs Only from the ATAM.
What Are the Benefits and Costs of Performing an Architecture Evaluation?
For Further Reading.
Discussion Questions.
3. The ATAM-A Method for Architecture Evaluation.
Summary of the ATAM Steps.
Detailed Description of the ATAM Steps.
Step 1: Present the ATAM.
Step 2: Present the Business Drivers.
Step 3: Present the Architecture.
Step 4: Identify the Architectural Approaches.
Step 5: Generate the Quality Attribute Utility Tree.
Step 6: Analyze the Architectural Approaches.
Step 7: Brainstorm and Prioritize Scenarios.
Step 8: Analyze the Architectural Approaches.
Step 9: Present the Results.
The Phases of the ATAM.
Phase 0 Activities.
Phase 1 Activities.
Phase 2 Activities.
Phase 3 Activities.
For Further Reading.
Discussion Questions.
4. The Battlefield Control System-The First Case Study in Applying the ATAM.
Preparation.
Phase 1.
Step 1: Present the ATAM.
Step 2: Present the Business Drivers.
Step 3: Present the Architecture.
Step 4: Identify the Architectural Approaches.
Step 5: Generate the Quality Attribute Utility Tree.
Step 6: Analyze the Architectural Approaches.
Phase 2.
Step 7: Brainstorm and Prioritize Scenarios.
Step 8: Analyze the Architectural Approaches.
Step 9: Present the Results.
Results of the BCS Evaluation.
Documentation.
Requirements.
Sensitivities and Tradeoffs.
Architectural Risks.
Summary.
Discussion Questions.
5. Understanding Quality Attributes.
Quality Attribute Characterizations.
Performance.
Availability.
Modifiability.
Characterizations Inspire Questions.
Using Quality Attribute Characterizations in the ATAM.
Attribute-Based Architectural Styles.
Summary.
For Further Reading.
Discussion Questions.
6. A Case Study in Applying the ATAM.
Background.
Phase 0: Partnership and Preparation.
Phase 0, Step 1: Present the ATAM.
Phase 0, Step 2: Describe Candidate System.
Phase 0, Step 3: Make a Go/No-Go Decision.
Phase 0, Step 4: Negotiate the Statement of Work.
Phase 0, Step 5: Form the Core Evaluation Team.
Phase 0, Step 6: Hold Evaluation Team Kick-off Meeting.
Phase 0, Step 7: Prepare for Phase 1.
Phase 0, Step 8: Review the Architecture.
Phase 1: Initial Evaluation.
Phase 1, Step 1: Present the ATAM.
Phase 1, Step 2: Present Business Drivers.
Phase 1, Step 3: Present the Architecture.
Phase 1, Step 4: Identify Architectural Approaches.
Phase 1, Step 5: Generate Quality Attribute Utility Tree.
Phase 1, Step 6: Analyze the Architectural Approaches.
Hiatus between Phase 1 and Phase 2.
Phase 2: Complete Evaluation.
Phase 2, Step 0: Prepare for Phase 2.
Phase 2, Steps 1-6.
Phase 2, Step 7: Brainstorm and Prioritize Scenarios.
Phase 2, Step 8: Analyze Architectural Approaches.
Phase 2, Step 9: Present Results.
Phase 3: Follow-Up.
Phase 3, Step 1: Produce the Final Report.
Phase 3, Step 2: Hold the Postmortem Meeting.
Phase 3, Step 3: Build Portfolio and Update Artifact Repositories.
For Further Reading.
Discussion Questions.
7. Using the SAAM to Evaluate an Example Architecture.
Overview of the SAAM.
Inputs to a SAAM Evaluation.
Outputs from a SAAM Evaluation.
Steps of a SAAM Evaluation.
Step 1: Develop Scenarios.
Step 2: Describe the Architecture(s).
Step 3: Classify and Prioritize the Scenarios.
Step 4: Individually Evaluate Indirect Scenarios.
Step 5: Assess Scenario Interactions.
Step 6: Create the Overall Evaluation.
A Sample SAAM Agenda.
A SAAM Case Study.
ATAT System Overview.
Step 1: Develop Scenarios, First Iteration.
Step 2: Describe the Architecture(s), First Iteration.
Step 1: Develop Scenarios, Second Iteration.
Step 2: Describe the Architecture(s), Second Iteration.
Step 3: Classify and Prioritize the Scenarios.
Step 4: Individually Evaluate Indirect Scenarios.
Step 5: Assess Scenario Interactions.
Step 6: Create the Overall Evaluation-Results and Recommendations.
Summary.
For Further Reading.
Discussion Questions.
8. ARID-An Evaluation Method for Partial Architectures.
Active Design Reviews.
ARID: An ADR/ATAM Hybrid.
The Steps of ARID.
Phase 1: Rehearsal.
Phase 2: Review.
A Case Study in Applying ARID.
Carrying Out the Steps.
Results of the Exercise.
Summary.
For Further Reading.
Discussion Questions.
9. Comparing Software Architecture Evaluation Methods.
Questioning Techniques.
Questionnaires and Checklists.
Scenarios and Scenario-Based Methods.
Measuring Techniques.
Metrics.
Simulations, Prototypes, and Experiments.
Rate-Monotonic Analysis.
Automated Tools and Architecture Description Languages.
Hybrid Techniques.
Software Performance Engineering.
The ATAM.
Summary.
For Further Reading.
Discussion Questions.
10. Growing an Architecture Evaluation Capability in Your Organization.
Building Organizational Buy-in.
Growing a Pool of Evaluators.
Establishing a Corporate Memory.
Cost and Benefit Data.
Method Guidance.
Reusable Artifacts.
Summary.
Discussion Questions.
11. Conclusions.
You Are Now Ready!
What Methods Have You Seen?
Why Evaluate Architectures?
Why Does the ATAM Work?
A Parting Message.
Appendix A: An Example Attribute-Based Architectural Style.
Problem Description.
Stimulus/Response.
Architectural Style.
Analysis.
Reasoning.
Priority Assignment.
Priority Inversion.
Blocking Time.
For Further Reading.
References.
Index. 020170482XT10082001
「Nielsen BookData」 より