译者序
序
前言
致谢
作者简介
第1章 导言
1.1 流程应用
1.2 流程概述
1.3 范围
1.4 总结
第2章 架构、架构师和架构设计
2.1 架构
2.1.1 架构定义结构
2.1.2 架构定义行为
2.1.3 架构关注重要的元素
2.1.4 架构平衡利益相关者的需要
2.1.5 架构基于合理证据使决策具体化
2.1.6 架构会遵循一种架构风格
2.1.7 架构受它的环境影响
2.1.8 架构影响开发团队的结构
2.1.9 所有系统都存在架构
2.1.10 架构有特定的范围
2.2 架构师
2.2.1 架构师是技术领导
2.2.2 架构师的角色可能由一个团队来履行
2.2.3 架构师理解软件开发流程
2.2.4 架构师掌握业务领域的知识
2.2.5 架构师掌握技术知识
2.2.6 架构师掌握设计技能
2.2.7 架构师具备编程技能
2.2.8 架构师是优秀的沟通人员
2.2.9 架构师进行决策
2.2.10 架构师知道组织政策
2.2.11 架构师是谈判专家
2.3 架构设计
2.3.1 架构设计是一门科学
2.3.2 架构设计是一门艺术
2.3.3 架构设计跨越很多方面
2.3.4 架构设计是一个渐进的活动
2.3.5 架构设计受许多利益相关者驱动
2.3.6 架构设计经常包括折中
2.3.7 架构设计承认经验
2.3.8 架构设计既由上而下也由下而上
2.4 架构设计的优点
2.4.1 架构设计解决系统的质量问题
2.4.2 架构设计促进达成共识
2.4.3 架构设计支持计划编制流程
2.4.4 架构设计促进架构的完整性
2.4.5 架构设计有助于管理复杂性
2.4.6 架构设计为重用提供基础
2.4.7 架构设计降低维护成本
2.4.8 架构设计支持影响分析
2.5 总结
第3章 方法基本原理
3.1 关键概念
3.2 方法内容
3.2.1 角色
3.2.2 工作产品
3.2.3 活动
3.2.4 任务
3.3 流程
3.3.1 瀑布流程
3.3.2 迭代流程
3.3.3 敏捷流程
3.4 总结
第4章 编写软件架构文档
第5章 可重用架构资源
第6章 案例介绍
第7章 定义需求
第8章 创建逻辑架构
第9章 创建物理架构
第10章 进阶
附录A 软件架构元模型
附录B 视点目录
附录C 方法概述
附录D 架构需求检查列表
术语表
参考文献