思维导图备注

软件系统架构:使用视点和视角与利益相关者合作
首页 收藏书籍 阅读记录
  • 书签 我的书签
  • 添加书签 添加书签 移除书签 移除书签

前言

浏览 1 扫码
  • 小字体
  • 中字体
  • 大字体
2022-01-24 10:46:36
请 登录 再阅读
上一篇:
下一篇:
  • 书签
  • 添加书签 移除书签
  • 译者序
  • 前言
  • 第1版前言
  • 第1章 简介
    • 1.2 本书结构
    • 1.3 谁应该阅读本书
    • 1.4 本书约定
  • 第一部分 架构的基本原则
    • 2.1.2 基本系统属性
    • 2.2 架构元素
    • 第3章 视点和视图
      • 3.2 视点
      • 3.3 核心概念之间的关系
      • 3.4 使用视点和视图的好处
      • 3.5 视点缺陷
      • 3.6 视点目录
      • 3.7 小结
      • 3.8 延伸阅读
    • 2.1.3 设计和发展的原则
    • 2.3 利益相关者
      • 2.3.2 兴趣和关注点
      • 2.3.3 利益相关者的重要性
    • 第4章 架构视角
      • 4.2 架构视角
      • 4.3 向视图应用视角
      • 4.4 应用视角的结果
        • 4.4.2 提升
        • 4.4.3 精品内容
      • 4.5 核心概念之间的关系
      • 4.6 使用视角的好处
      • 4.7 视角的缺陷
      • 4.8 视角与视点对比
      • 4.9 视角种类
      • 4.10 小结
      • 4.11 延伸阅读
    • 2.1.4 系统属性和内部组织形式
    • 2.4 架构描述
    • 第5章 软件架构师的角色
      • 5.1.2 需求分析和架构定义之间的区别
      • 5.2 架构师的角色
      • 5.1.3 架构定义和设计之间的区别
      • 5.3 核心概念之间的相互关系
      • 5.4 架构专门化
      • 5.5 组织情境
        • 5.5.2 项目经理
        • 5.5.3 设计主管
        • 5.5.4 技术专家
        • 5.5.5 开发者
      • 5.6 架构师的技能
      • 5.7 架构师的责任
      • 5.8 小结
      • 5.9 延伸阅读
    • 2.1.5 软件架构的重要性
    • 2.5 核心概念之间的关系
    • 2.6 小结
    • 2.7 延伸阅读
  • 第二部分 软件架构过程
    • 第7章 架构定义过程
      • 7.2 过程产出物
      • 7.3 过程情境
      • 7.4 支持活动
      • 7.5 架构定义活动
      • 7.6 过程完成标准
      • 7.7 软件开发生命周期中的架构定义
        • 7.7.2 迭代方法
        • 7.7.3 敏捷方法
      • 7.8 小结
      • 7.9 延伸阅读
    • 第8章 关注点、原则和决定
      • 8.1.2 业务目标和驱动力
      • 8.2 专注于解决方案的关注点
        • 8.2.2 技术目标和驱动力
        • 8.2.3 技术标准和政策
      • 8.1.3 系统范围和需求
      • 8.3 其他现实世界中的约束
      • 8.1.4 业务标准和政策
      • 8.4 什么决定了好的关注点
      • 8.5 架构原则
        • 8.5.2 定义自己的原则
      • 8.6 架构决定
      • 8.7 使用原则关联关注点和决定
      • 8.8 检查列表
      • 8.9 小结
      • 8.10 延伸阅读
    • 第9章 确定并引入利益相关者
      • 9.2 利益相关者的类别
        • 9.2.2 评估者
        • 9.2.3 沟通者
        • 9.2.4 开发人员
        • 9.2.5 维护人员
        • 9.2.6 生产工程师
        • 9.2.7 供应商
        • 9.2.8 支持人员
        • 9.2.9 系统管理员
        • 9.2.10 测试人员
        • 9.2.11 用户
      • 9.3 示例
        • 9.3.2 软件产品开发项目
        • 9.3.3 合作开发
      • 9.4 代理利益相关者
      • 9.5 利益相关者组
      • 9.6 利益相关者的责任
      • 9.7 检查列表
      • 9.8 小结
      • 9.9 延伸阅读
    • 第10章 识别并使用场景
      • 10.2 使用场景
      • 10.3 识别场景并排定优先级
      • 10.4 捕获场景
      • 10.5 什么造就了好场景
      • 10.6 应用场景
        • 10.6.2 走查
        • 10.6.3 模拟
        • 10.6.4 原型实现的测试
        • 10.6.5 完整规模真实测试
      • 10.7 有效使用场景
        • 10.7.2 使用清晰的场景
        • 10.7.3 尽早使用场景
        • 10.7.4 包含对系统质量场景的使用
        • 10.7.5 包含对故障场景的使用
        • 10.7.6 让利益相关者紧密参与
      • 10.8 检查列表
      • 10.9 小结
      • 10.10 延伸阅读
    • 第11章 使用样式和模式
      • 11.2 样式、模式和惯用法
        • 11.2.2 软件设计模式
        • 11.2.3 语言惯用法
        • 11.2.4 使用样式、模式和惯用法
      • 11.3 模式和架构策略
      • 11.4 架构样式的例子
      • 11.5 使用架构样式的好处
      • 11.6 样式和架构描述
      • 11.7 应用设计模式和语言惯用法
      • 11.8 检查列表
      • 11.9 小结
      • 11.10 延伸阅读
    • 第12章 创建架构模型
      • 12.2 模型的类型
        • 12.2.2 定量模型
        • 12.2.3 示意图
      • 12.3 建模语言
        • 12.3.2 统一建模语言
        • 12.3.3 可执行的领域专用语言
        • 12.3.4 其他建模语言
      • 12.4 创建有效模型的准则
        • 12.4.2 应对受众
        • 12.4.3 仔细、准确地抽象
        • 12.4.4 根据风险确定工作重点
        • 12.4.5 选择描述性的名称
        • 12.4.6 定义你的术语
        • 12.4.7 以简单为目标
        • 12.4.8 使用已定义的标记法
        • 12.4.9 了解暗示的语义
        • 12.4.10 验证模型
        • 12.4.11 保持模型的活力
      • 12.5 和敏捷团队一起建模
      • 12.6 检查列表
      • 12.7 小结
      • 12.8 延伸阅读
    • 第13章 创建架构描述
      • 13.1.2 充分
      • 13.2 词汇表
      • 13.1.3 及时
      • 13.3 ISO标准
      • 13.1.4 简洁
      • 13.4 架构描述的内容
        • 13.4.2 内容表
        • 13.4.3 介绍和管理纲要
        • 13.4.4 利益相关者
        • 13.4.5 通用架构原则
        • 13.4.6 架构设计决定
        • 13.4.7 视点
        • 13.4.8 视图
        • 13.4.9 质量属性摘要
        • 13.4.10 重要的方案
        • 13.4.11 亟待解决的问题
        • 13.4.12 附录
      • 13.1.5 清晰
      • 13.5 展现架构描述
      • 13.1.6 最新
      • 13.6 检查列表
      • 13.1.7 精确
      • 13.7 小结
      • 13.8 延伸阅读
    • 第14章 评估架构
      • 14.2 评估技术
        • 14.2.2 正式评审和结构化的走查
        • 14.2.3 通过使用场景来评估
        • 14.2.4 原型和概念验证系统
        • 14.2.5 骨架系统
      • 14.3 基于场景的评估方法
        • 14.3.2 以利益相关者为中心的活动
      • 14.4 在软件生命周期内评估
      • 14.5 验证现存系统的架构
      • 14.6 记录评估结果
      • 14.7 选择评估方法
      • 14.8 检查列表
      • 14.9 小结
      • 14.10 延伸阅读
  • 第三部分 视点类型
    • 第16章 情境视点
      • 16.1.2 外部实体和服务以及所用数据的标识
      • 16.2 模型
        • 16.2.2 交互场景
      • 16.1.3 外部实体的本质和特征
      • 16.3 问题和缺陷
        • 16.3.2 遗漏隐藏的依赖关系
        • 16.3.3 松散或不精确的接口描述
        • 16.3.4 详细程度不合适
        • 16.3.5 范围蔓延
        • 16.3.6 隐藏或假设的情境和范围
        • 16.3.7 过于复杂的交互
        • 16.3.8 过度使用术语
      • 16.1.4 外部接口的标识和职责
      • 16.4 检查列表
      • 16.1.5 外部接口的本质和特征
      • 16.5 延伸阅读
      • 16.1.6 其他外部依赖关系
      • 16.1.7 对系统环境的影响
      • 16.1.8 总体完成度、一致性和连贯性
      • 16.1.9 利益相关者的关注点
    • 第17章 功能视点
      • 17.1.2 外部接口
      • 17.2 模型
      • 17.1.3 内部结构
      • 17.3 问题和缺陷
        • 17.3.2 难以理解的职责
        • 17.3.3 基础架构作为功能性元素
        • 17.3.4 过载的视图
        • 17.3.5 没有元素定义的图
        • 17.3.6 难以调节多位利益相关者的需求
        • 17.3.7 错误的详细程度
        • 17.3.8 “神元素”
        • 17.3.9 过多依赖关系
      • 17.1.4 功能设计哲学
      • 17.4 检查列表
      • 17.1.5 利益相关者的关注点
      • 17.5 延伸阅读
    • 第18章 信息视点
      • 18.1.2 信息目的和用途
      • 18.2 模型
        • 18.2.2 信息流模型
        • 18.2.3 信息生命周期模型
        • 18.2.4 其他类型的信息模型
      • 18.1.3 信息所有权
      • 18.3 问题和陷阱
        • 18.3.2 不可避免的多个更新器
        • 18.3.3 键值匹配缺陷
        • 18.3.4 接口复杂
        • 18.3.5 过载的中心数据库
        • 18.3.6 不一致的分布式数据库
        • 18.3.7 信息质量很差
        • 18.3.8 信息延迟过大
        • 18.3.9 容量不足
      • 18.1.4 企业拥有的信息
      • 18.4 检查列表
      • 18.1.5 标识符和映射关系
      • 18.5 延伸阅读
      • 18.1.6 信息语义的易变性
      • 18.1.7 信息存储模型
      • 18.1.8 信息流
      • 18.1.9 信息一致性
      • 18.1.10 信息质量
      • 18.1.11 及时性、延迟和寿命
      • 18.1.12 归档和保留信息
      • 18.1.13 利益相关者的关注点
    • 第19章 并发视点
      • 19.1.2 功能元素与任务的映射关系
      • 19.2 模型
        • 19.2.2 状态模型
      • 19.1.3 进程间通信
      • 19.3 问题和缺陷
        • 19.3.2 错误地对并发建模
        • 19.3.3 过度复杂
        • 19.3.4 资源竞争
        • 19.3.5 死锁
        • 19.3.6 竞争条件
      • 19.1.4 状态管理
      • 19.4 检查列表
      • 19.1.5 同步和整合
      • 19.5 延伸阅读
      • 19.1.6 支持可伸缩性
      • 19.1.7 启动和关闭
      • 19.1.8 任务故障
      • 19.1.9 重入
      • 19.1.10 利益相关者的关注点
    • 第20章 开发视点
      • 20.1.2 通用处理
      • 20.2 模型
        • 20.2.2 通用设计模型
        • 20.2.3 代码行模型
      • 20.1.3 设计的标准化
      • 20.3 问题和缺陷
        • 20.3.2 过载的架构描述
        • 20.3.3 不平均的重点
        • 20.3.4 缺少开发者的关注
        • 20.3.5 精度不足
        • 20.3.6 特定环境的问题
      • 20.1.4 测试的标准化
      • 20.4 检查列表
      • 20.1.5 测试辅助
      • 20.5 延伸阅读
      • 20.1.6 代码行组织
      • 20.1.7 利益相关者的关注点
    • 第21章 部署视点
      • 21.1.2 硬件或者托管平台所需的规格和品质
      • 21.2 模型
        • 21.2.2 网络模型
        • 21.2.3 技术依赖关系模型
        • 21.2.4 模型之间的关系
      • 21.1.3 第三方软件需求
      • 21.3 问题和缺陷
        • 21.3.2 未经验证的技术
        • 21.3.3 不合适或者遗漏的服务级别协议
        • 21.3.4 缺少专家的技术知识
        • 21.3.5 未能及时考虑部署环境
        • 21.3.6 忽略站点间的复杂性
        • 21.3.7 提供的净空不合适
        • 21.3.8 未指定灾难恢复环境
      • 21.1.4 技术兼容性
      • 21.4 检查列表
      • 21.1.5 网络需求
      • 21.5 延伸阅读
      • 21.1.6 所需的网络能力
      • 21.1.7 物理约束
      • 21.1.8 利益相关者的关注点
    • 第22章 运维视点
      • 22.1.2 功能迁移
      • 22.2 模型
        • 22.2.2 迁移模型
        • 22.2.3 配置管理模型
        • 22.2.4 管理模型
        • 22.2.5 支持模型
      • 22.1.3 数据迁移
      • 22.3 问题和缺陷
        • 22.3.2 缺少撤销计划
        • 22.3.3 缺少迁移计划
        • 22.3.4 不充分的迁移窗口
        • 22.3.5 遗漏管理工具
        • 22.3.6 生产环境的约束
        • 22.3.7 缺少到生产环境中的整合
        • 22.3.8 不充分的备份模型
        • 22.3.9 不合适的警告
      • 22.1.4 运维监控和控制
      • 22.4 检查列表
      • 22.1.5 警告
      • 22.5 延伸阅读
      • 22.1.6 配置管理
      • 22.1.7 性能监控
      • 22.1.8 支持
      • 22.1.9 备份和还原
      • 22.1.10 第三方环境中的运维
      • 22.1.11 利益相关者的关注点
    • 第23章 保持视图一致性
      • 23.2 情境和功能视图的一致性
      • 23.3 情境和信息视图的一致性
      • 23.4 情境和部署视图的一致性
      • 23.5 功能和信息视图的一致性
      • 23.6 功能和并发视图的一致性
      • 23.7 功能和开发视图的一致性
      • 23.8 功能和部署视图的一致性
      • 23.9 功能和运维视图的一致性
      • 23.10 信息和并发视图的一致性
      • 23.11 信息和开发视图的一致性
      • 23.12 信息和部署视图的一致性
      • 23.13 信息和运维视图的一致性
      • 23.14 并发和开发视图的一致性
      • 23.15 并发和部署视图的一致性
      • 23.16 部署和运维视图的一致性
  • 第四部分 视角
    • 第25章 安全性视角
      • 25.2 关注点
        • 25.2.2 当事人
        • 25.2.3 策略
        • 25.2.4 威胁
        • 25.2.5 机密性
        • 25.2.6 完整性
        • 25.2.7 可用性
        • 25.2.8 可说明性
        • 25.2.9 检测和恢复
        • 25.2.10 安全机制
      • 25.3 活动:应用安全视角
        • 25.3.2 定义安全性策略
        • 25.3.3 识别对系统的威胁
        • 25.3.4 设计安全性实现
        • 25.3.5 评估安全风险
      • 25.4 架构策略
        • 25.4.2 对用户进行身份验证
        • 25.4.3 授权访问
        • 25.4.4 确保信息保密性
        • 25.4.5 确保信息的完整性
        • 25.4.6 确保可负责性
        • 25.4.7 保护可用性
        • 25.4.8 整合安全性技术
        • 25.4.9 提供安全性管理
        • 25.4.10 使用第三方的安全性基础架构
      • 25.5 问题和缺陷
        • 25.5.2 未经验证的安全性技术
        • 25.5.3 没有针对故障设计系统
        • 25.5.4 缺少管理工具
        • 25.5.5 技术驱动的方法
        • 25.5.6 没有考虑时间源
        • 25.5.7 过度依赖于技术
        • 25.5.8 没有清晰的需求或模型
        • 25.5.9 把安全性作为事后的想法
        • 25.5.10 忽略内部人员的威胁
        • 25.5.11 假设客户端是安全的
        • 25.5.12 嵌入在应用程序代码中的安全性
        • 25.5.13 零碎的安全性
        • 25.5.14 临时的安全技术
      • 25.6 检查列表
        • 25.6.2 架构定义的检查列表
      • 25.7 延伸阅读
    • 第26章 性能和可伸缩性视角
      • 26.2 关注点
        • 26.2.2 吞吐量
        • 26.2.3 可伸缩性
        • 26.2.4 可预测性
        • 26.2.5 硬件资源需求
        • 26.2.6 峰值负载行为
      • 26.3 活动:应用性能和可伸缩性视角
        • 26.3.2 创建性能模型
        • 26.3.3 分析性能模型
        • 26.3.4 执行实际的测试
        • 26.3.5 根据需求评估
        • 26.3.6 重做架构
      • 26.4 架构策略
        • 26.4.2 通过复制减少竞争
        • 26.4.3 对处理按优先级排序
        • 26.4.4 合并相关的工作
        • 26.4.5 随时间分发处理
        • 26.4.6 最小化对共享资源的使用
        • 26.4.7 重用资源和结果
        • 26.4.8 分解和并行化
        • 26.4.9 增强或扩展
        • 26.4.10 舒缓降级
        • 26.4.11 使用异步处理
        • 26.4.12 放松事务的一致性
        • 26.4.13 做出设计折中
      • 26.5 问题和缺陷
        • 26.5.2 不实际的模型
        • 26.5.3 对复杂情况使用简单的度量
        • 26.5.4 不合适的分区
        • 26.5.5 无效的环境和平台假设
        • 26.5.6 太多间接层
        • 26.5.7 与并发相关的竞争
        • 26.5.8 数据库竞争
        • 26.5.9 事务过载
        • 26.5.10 粗心地分配资源
        • 26.5.11 忽视网络和进程中调用的区别
      • 26.6 检查列表
        • 26.6.2 针对架构定义的检查列表
      • 26.7 延伸阅读
    • 第27章 可用性和弹性视角
      • 27.2 关注点
        • 27.2.2 有计划的停机时间
        • 27.2.3 未经计划的停机时间
        • 27.2.4 维修时间
        • 27.2.5 灾难恢复
      • 27.3 活动:应用可用性和弹性视角
        • 27.3.2 创建可用性日程表
        • 27.3.3 评估平台的可用性
        • 27.3.4 评估功能可用性
        • 27.3.5 根据需求进行评估
        • 27.3.6 应用策略以重做架构
      • 27.4 架构策略
        • 27.4.2 使用高可用性集群和负载均衡
        • 27.4.3 日志事务
        • 27.4.4 应用软件可用性解决方案
        • 27.4.5 选择或创建容错软件
        • 27.4.6 设计故障
        • 27.4.7 考虑组件复制
        • 27.4.8 放松事务一致性
        • 27.4.9 确定备份和灾难恢复解决方案
      • 27.5 问题和缺陷
        • 27.5.2 级联故障
        • 27.5.3 由于过载造成的不可用
        • 27.5.4 过分激进的可用性需求
        • 27.5.5 无效的错误侦测
        • 27.5.6 对组件弹性的过度估计
        • 27.5.7 忽略全球可用性需求
        • 27.5.8 不兼容的技术
      • 27.6 检查列表
        • 27.6.2 针对架构定义的检查列表
      • 27.7 延伸阅读
    • 第28章 演进视角
      • 28.2 关注点
        • 28.2.2 变化的量级
        • 28.2.3 变化的维度
        • 28.2.4 变化的可能性
        • 28.2.5 变化的时间跨度
        • 28.2.6 何时为变化支付
        • 28.2.7 由外部因素驱动的变更
        • 28.2.8 开发复杂度
        • 28.2.9 知识的保存
        • 28.2.10 变更的可靠性
      • 28.3 活动:应用演进视角
        • 28.3.2 评估当前演进的难易程度
        • 28.3.3 考虑演进的取舍
        • 28.3.4 重做架构
      • 28.4 架构策略
        • 28.4.2 创建可扩展的接口
        • 28.4.3 应用促进变更的设计技术
        • 28.4.4 应用基于元模型的架构样式
        • 28.4.5 把变化点构建到软件中
        • 28.4.6 使用标准的扩展点
        • 28.4.7 达到可靠地变更
        • 28.4.8 保存开发环境
      • 28.5 问题和缺陷
        • 28.5.2 永远不会发生的变更
        • 28.5.3 演进对重要质量属性的影响
        • 28.5.4 过度依赖特定的硬件或软件
        • 28.5.5 丢失开发环境
        • 28.5.6 临时的发布管理
      • 28.6 检查列表
        • 28.6.2 对于架构设计的检查列表
      • 28.7 延伸阅读
    • 第29章 其他视角
      • 29.1.2 关注点
      • 29.2 开发资源视角
        • 29.2.2 关注点
        • 29.2.3 活动:应用开发资源视角
        • 29.2.4 架构策略
        • 29.2.5 问题和缺陷
        • 29.2.6 检查列表
        • 29.2.7 延伸阅读
      • 29.1.3 活动:应用可访问性视角
      • 29.3 国际化视角
        • 29.3.2 关注点
        • 29.3.3 活动:应用国际化视角
        • 29.3.4 架构策略
        • 29.3.5 问题和缺陷
        • 29.3.6 检查列表
        • 29.3.7 延伸阅读
      • 29.1.4 架构策略
      • 29.4 位置视角
        • 29.4.2 关注点
        • 29.4.3 活动:应用位置视角
        • 29.4.4 架构策略
        • 29.4.5 问题和缺陷
        • 29.4.6 检查列表
        • 29.4.7 延伸阅读
      • 29.1.5 问题和缺陷
      • 29.5 法规视角
        • 29.5.2 关注点
        • 29.5.3 活动:应用法规视角
        • 29.5.4 架构策略
        • 29.5.5 问题和缺陷
        • 29.5.6 检查列表
        • 29.5.7 延伸阅读
      • 29.1.6 检查列表
      • 29.6 易用性视角
        • 29.6.2 关注点
        • 29.6.3 活动:应用易用性视角
        • 29.6.4 架构策略
        • 29.6.5 问题和缺陷
        • 29.6.6 检查列表
        • 29.6.7 延伸阅读
      • 29.1.7 延伸阅读
  • 第五部分 把所有内容组合起来
    • 30.1.2 敏捷项目中的架构
    • 30.2 支持不同类型的项目
      • 30.2.2 新产品开发
      • 30.2.3 企业服务
      • 30.2.4 对已经存在系统的扩展
      • 30.2.5 程序包实现
      • 30.2.6 Internet支持程序
      • 30.2.7 退役
    • 30.1.3 计划驱动项目中的架构
    • 30.1.4 大型项目中的架构
  • 附录A 其他视点集
    • A.2 RM-ODP
    • A.3 西门子(Hofmeister、Nord和Soni)
    • A.4 SEI“不仅仅是视图(Views and Beyond)”的视图
    • A.5 Garland和Anthony
    • A.6 IAF
    • A.7 企业架构框架
      • A.7.2 TOGAF
    • A.8 其他企业架构框架
  • 参考文献
暂无相关搜索结果!
    展开/收起文章目录

    二维码

    手机扫一扫,轻松掌上学

    《软件系统架构:使用视点和视角与利益相关者合作》电子书下载

    请下载您需要的格式的电子书,随时随地,享受学习的乐趣!
    EPUB 电子书

    书签列表

      阅读记录

      阅读进度: 0.00% ( 0/0 ) 重置阅读进度