Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives
暫譯: 軟體系統架構:使用觀點與視角與利害關係人合作

Nick Rozanski, Eóin Woods

  • 出版商: Addison Wesley
  • 出版日期: 2005-04-30
  • 售價: $2,360
  • 貴賓價: 9.5$2,242
  • 語言: 英文
  • 頁數: 576
  • 裝訂: Hardcover
  • ISBN: 0321112296
  • ISBN-13: 9780321112293
  • 相關分類: Design Pattern
  • 已過版

買這商品的人也買了...

相關主題

商品描述

Description:

Software Systems Architecture is a practitioner-oriented guide to designing and implementing effective architectures for information systems. It is both a readily accessible introduction to software architecture and an invaluable handbook of well-established best practices. It shows why the role of the architect is central to any successful information-systems development project, and, by presenting a set of architectural viewpoints and perspectives, provides specific direction for improving your own and your organization's approach to software systems architecture.

With this book you will learn how to

  • Design an architecture that reflects and balances the different needs of its stakeholders
  • Communicate the architecture to stakeholders and demonstrate that it has met their requirements
  • Focus on architecturally significant aspects of design, including frequently overlooked areas such as performance, resilience, and location
  • Use scenarios and patterns to drive the creation and validation of your architecture
  • Document your architecture as a set of related views
  • Use perspectives to ensure that your architecture exhibits important qualities such as performance, scalability, and security

The architectural viewpoints and perspectives presented in the book also provide a valuable long-term reference source for new and experienced architects alike.

Whether you are an aspiring or practicing software architect, you will find yourself referring repeatedly to the practical advice in this book throughout the lifecycle of your projects.

A supporting Web site containing further information can be found at www.viewpoints-and-perspectives.info

 

Table of Contents:

Preface.

Acknowledgments.

About the Authors.

1. Introduction.

    Stakeholders, Viewpoints, and Perspectives.

    The Structure of This Book.

    Who Should Read This Book.

    Conventions Used.

I. ARCHITECTURE FUNDAMENTALS.

2. Software Architecture Concepts.

    Software Architecture.

    Architectural Elements.

    Stakeholders.

    Architectural Descriptions.

    Interrelationships between the Core Concepts.

    Summary.

    Further Reading.

3. Viewpoints and Views.

    Architectural Views.

    Viewpoints.

    Interrelationships between the Core Concepts.

    The Benefits of Using Viewpoints and Views.

    Viewpoint Pitfalls.

    Our Viewpoint Catalog.

    Summary.

    Further Reading.

4. Architectural Perspectives.

    Quality Properties.

    Architectural Perspectives.

    Applying Perspectives to Views.

    Consequences of Applying a Perspective.

    Interrelationships between the Core Concepts.

    The Benefits of Using Perspectives.

    Perspective Pitfalls.

    Our Perspective Catalog.

    Summary.

    Further Reading.

5. The Role of the Software Architect.

    The Architecture Definition Process.

    The Role of the Architect.

    Interrelationships between the Core Concepts.

    Architectural Specializations.

    The Organizational Context.

    The Architect's Skills.

    The Architect's Responsibilities.

    Summary.

    Further Reading.

II. THE PROCESS OF SOFTWARE ARCHITECTURE.

6. Introduction to the Software Architecture Process.

7. The Architecture Definition Process.

    Guiding Principles.

    Process Outcomes.

    The Process Context.

    Supporting Activities.

    Architecture Definition Activities.

    Process Exit Criteria.

    Architecture Definition in the Software Development Lifecycle.

    Summary.

    Further Reading.

8. Scope, Concerns, Principles, and Constraints.

    Business Goals and Drivers.

    Architectural Scope.

    Architectural Concerns.

    Architectural Principles.

    Other Architectural Constraints.

    Checklist.

    Summary.

    Further Reading.

9. Identifying and Engaging Stakeholders.

    Selection of Stakeholders.

    Classes of Stakeholders.

    Examples.

    Proxy Stakeholders.

    Stakeholder Groups.

    Stakeholders' Responsibilities.

    Checklist.

    Summary.

    Further Reading.

10. Identifying and Using Scenarios.

    Types of Scenarios.

    Uses for Scenarios.

    Identifying and Prioritizing Scenarios.

    Capturing Scenarios.

    Applying Scenarios.

    Effective Use of Scenarios.

    Checklist.

    Summary.

    Further Reading.

11. Using Styles and Patterns.

    Software Patterns.

    Styles, Patterns, and Idioms.

    An Example of an Architectural Style.

    The Benefits of Using Architectural Styles.

    Styles and the Architectural Description.

    Common Architectural Styles.

    Design Patterns and Language Idioms in Architecture.

    Checklist.

    Summary.

    Further Reading.

12. Producing Architectural Models.

    Why Models Are Important.

    Types of Models.

    Modeling Languages.

    Guidelines for Creating Effective Models.

    Agile Modeling Techniques.

    Checklist.

    Summary.

    Further Reading.

13. Creating the Architectural Description.

    Properties of an Effective Architectural Description.

    Glossaries.

    The IEEE Standard.

    Contents of the Architectural Description.

    Checklist.

    Summary.

    Further Reading.

14. Validating the Architecture.

    Why Validate the Architecture?

    Validation Techniques.

    Scenario-Based Evaluation Methods.

    Validation during the Software Lifecycle.

    Recording the Results of Validation.

    Checklist.

    Summary.

    Further Reading.

III. THE VIEWPOINT CATALOG.

15. Introduction to the Viewpoint Catalog.

16. The Functional Viewpoint.

    Concerns.

    Models.

    Problems and Pitfalls.

    Checklist.

    Further Reading.

17. The Information Viewpoint.

    Concerns.

    Models.

    Problems and Pitfalls.

    Checklist.

    Further Reading.

18. The Concurrency Viewpoint.

    Concerns.

    Models.

    Problems and Pitfalls.

    Checklist.

    Further Reading.

19. The Development Viewpoint.

    Concerns.

    Models.

    Problems and Pitfalls.

    Checklist.

    Further Reading.

20. The Deployment Viewpoint.

    Concerns.

    Models.

    Problems and Pitfalls.

    Checklist.

    Further Reading.

21. The Operational Viewpoint.

    Concerns.

    Models.

    Problems and Pitfalls.

    Checklist.

    Further Reading.

22. Achieving Consistency across Views.

    Relationships between Views.

    Functional and Information View Consistency.

    Functional and Concurrency View Consistency.

    Functional and Development View Consistency.

    Functional and Deployment View Consistency.

    Functional and Operational View Consistency.

    Information and Concurrency View Consistency.

    Information and Development View Consistency.

    Information and Deployment View Consistency.

    Information and Operational View Consistency.

    Concurrency and Development View Consistency.

    Concurrency and Deployment View Consistency.

    Deployment and Operational View Consistency.

IV. THE PERSPECTIVE CATALOG.

23. Introduction to the Perspective Catalog.

24. The Security Perspective.

    Applicability to Views.

    Concerns.

    Activities: Applying the Security Perspective.

    Architectural Tactics.

    Problems and Pitfalls.

    Checklists.

    Further Reading.

25. The Performance and Scalability Perspective.

    Applicability to Views.

    Concerns.

    Activities: Applying the Performance and Scalability Perspective.

    Architectural Tactics.

    Problems and Pitfalls.

    Checklists.

    Further Reading.

26. The Availability and Resilience Perspective.

    Applicability to Views.

    Concerns.

    Activities: Applying the Availability and Resilience Perspective.

    Architectural Tactics.

    Problems and Pitfalls.

    Checklists.

    Further Reading.

27. The Evolution Perspective.

    Applicability to Views.

    Concerns.

    Activities: Applying the Evolution Perspective.

    Architectural Tactics.

    Problems and Pitfalls.

    Checklists.

    Further Reading.

28. Other Perspectives.

    The Accessibility Perspective.

    The Development Resource Perspective.

    The Internationalization Perspective.

    The Location Perspective.

    The Regulation Perspective.

    The Usability Perspective.

V. PUTTING IT ALL TOGETHER.

29. Working as a Software Architect.

    The Architect in the Project Lifecycle.

    The Architect in Different Types of Projects.

Appendix: Other Viewpoint Sets.

    Kruchten "4+1".

    RM-ODP.

    Siemens (Hofmeister, Nord, and Soni).

    SEI Viewtypes.

    Garland and Anthony.

Bibliography.

Index.

商品描述(中文翻譯)

**描述:**
《軟體系統架構》是一本面向實務的指南,旨在設計和實施有效的信息系統架構。它既是對軟體架構的易於理解的介紹,也是一本寶貴的最佳實踐手冊。書中展示了架構師在任何成功的信息系統開發項目中的核心角色,並通過呈現一組架構觀點和視角,為改善您和您組織的軟體系統架構方法提供具體指導。

通過本書,您將學會如何:
- 設計一個反映並平衡不同利益相關者需求的架構
- 向利益相關者傳達架構並證明其滿足他們的需求
- 專注於設計中具有架構意義的方面,包括經常被忽視的領域,如性能、韌性和位置
- 使用場景和模式來推動架構的創建和驗證
- 將您的架構記錄為一組相關的視圖
- 使用視角來確保您的架構展現出重要的特性,如性能、可擴展性和安全性

書中呈現的架構觀點和視角也為新手和經驗豐富的架構師提供了寶貴的長期參考資源。

無論您是有志於成為或已經在職的軟體架構師,您都會在項目的整個生命周期中不斷參考本書中的實用建議。

支持的網站包含更多信息,網址為 www.viewpoints-and-perspectives.info

**目錄:**
**前言**
**致謝**
**關於作者**
**1. 介紹**
- 利益相關者、觀點和視角
- 本書的結構
- 誰應該閱讀本書
- 使用的約定
**I. 架構基礎**
**2. 軟體架構概念**
- 軟體架構
- 架構元素
- 利益相關者
- 架構描述
- 核心概念之間的相互關係
- 總結
- 進一步閱讀
**3. 觀點和視圖**
- 架構視圖
- 觀點
- 核心概念之間的相互關係
- 使用觀點和視圖的好處
- 觀點的陷阱
- 我們的觀點目錄
- 總結
- 進一步閱讀
**4. 架構視角**
- 質量屬性
- 架構視角
- 將視角應用於視圖
- 應用視角的後果
- 核心概念之間的相互關係
- 使用視角的好處
- 視角的陷阱
- 我們的視角目錄
- 總結
- 進一步閱讀
**5. 軟體架構師的角色**
- 架構定義過程
- 架構師的角色
- 核心概念之間的相互關係
- 架構專業化
- 組織背景
- 架構師的技能
- 架構師的責任
- 總結
- 進一步閱讀
**II. 軟體架構的過程**
**6. 軟體架構過程介紹**
**7. 架構定義過程**
- 指導原則
- 過程結果
- 過程背景
- 支持活動
- 架構定義活動
- 過程退出標準
- 軟體開發生命周期中的架構定義
- 總結
- 進一步閱讀
**8. 範圍、關注點、原則和限制**
- 商業目標和驅動因素