《实用软件架构 从系统环境到软件部署》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:(印)蒂拉克·米特拉(Tilak Mitra)
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2016
  • ISBN:7111550266
  • 页数:258 页
图书介绍:

第1章 案例研究 1

1.1 业务问题 1

1.1.1 技术挑战 2

1.1.2 用例 2

1.1.3 在机器运转过程中进行实时处理与监控 3

1.1.4 为新机器提供无缝的激活服务 3

1.1.5 生成工作定单 3

1.1.6 尽量减少在为全球客户提供服务时所产生的延迟 4

1.2 小结 4

第2章 软件架构是什么?为什么需要做软件架构 6

2.1 背景知识 6

2.2 软件架构是什么 7

2.3 为什么需要做软件架构 9

2.3.1 把架构视为交流工具 9

2.3.2 对项目规划施加影响力 10

2.3.3 关注非功能方面的能力 11

2.3.4 与设计团队和实现团队做出约定 12

2.3.5 为影响力分析提供支持 12

2.4 架构视图与架构视点 13

2.5 小结 16

2.6 参考资料 16

第3章 恰到好处地把握架构中的重要方面 17

3.1 软件架构中需要关注的一些方面 17

3.2 小结 19

第4章 系统环境 20

4.1 业务环境与系统环境之间的辨析 20

4.2 捕获系统环境 22

4.2.1 系统环境图 23

4.2.2 信息流 25

4.3 案例研究:Elixir的系统环境 27

4.3.1 Elixir的系统环境图 27

4.3.2 Elixir的信息流 32

4.4 小结 33

4.5 参考资料 33

第5章 架构概述 34

5.1 什么是架构概述 34

5.2 为什么要做架构概述 36

5.3 企业视图 37

5.3.1 用户与传输渠道 39

5.3.2 核心业务流程 39

5.3.3 数据与信息 40

5.3.4 技术推动力 41

5.4 分层视图 42

5.4.1 第1层:操作层 45

5.4.2 第2层:服务组件层 45

5.4.3 第3层:服务层 45

5.4.4 第4层:业务流程层 46

5.4.5 第5层:消费者层 46

5.4.6 第6层:集成层 46

5.4.7 第7层:QoS层 46

5.4.8 第8层:信息架构层 47

5.4.9 第9层:治理层 47

5.4.10 进一步研究分层视图的用法 47

5.5 IT系统视图 48

5.6 案例研究:Elixir的架构概述 53

5.6.1 Elixir的企业视图 53

5.6.2 Elixir的业务流程 54

5.6.3 Elixir的数据及信息 54

5.6.4 Elixir的技术推动力 55

5.6.5 Elixir的分层视图 56

5.6.6 Elixir的IT系统视图 57

5.7 小结 58

5.8 参考资料 59

第6章 架构决策 60

6.1 为什么需要做架构决策 60

6.2 怎样开始进行架构决策 61

6.3 创建架构决策 62

6.4 案例研究:Elixir的架构决策 67

6.5 小结 69

第7章 功能模型 71

7.1 为什么需要功能模型 71

7.2 可追溯性 73

7.3 制定功能模型 74

7.3.1 逻辑层面的设计 75

7.3.2 规格层面的设计 79

7.3.3 物理层面的设计 89

7.4 案例研究:Elixir的功能模型 91

7.4.1 逻辑层面 92

7.4.2 规格层面 94

7.4.3 物理层面 97

7.5 小结 98

7.6 参考资料 99

第8章 操作模型 100

8.1 为什么需要操作模型 101

8.2 可追溯性与服务级别协议 102

8.3 制定操作模型 104

8.3.1 概念操作模型 105

8.3.2 规格操作模型 116

8.3.3 物理操作模型 122

8.4 案例研究:Elixir的操作模型 132

8.4.1 COM 132

8.4.2 SOM 137

8.4.3 POM 138

8.5 小结 140

8.6 参考资料 141

第9章 集成:方式与模式 142

9.1 为什么需要进行集成 142

9.2 集成方式 143

9.2.1 用户界面的集成 144

9.2.2 数据层面的集成 144

9.2.3 消息层面的集成 147

9.2.4 API层面的集成 149

9.2.5 服务层面的集成 150

9.3 集成模式 152

9.3.1 同步的请求-响应模式 152

9.3.2 批次模式 153

9.3.3 同步的批次请求-应答模式 153

9.3.4 异步的批次请求-应答模式 153

9.3.5 存储并转发模式 154

9.3.6 发布-订阅模式 154

9.3.7 聚合模式 154

9.3.8 管道与过滤器模式 155

9.3.9 消息路由器模式 155

9.3.10 消息转换器模式 156

9.4 案例研究:Elixir的集成视图 156

9.4.1 标签1~5所表示的数据流 157

9.4.2 标签6~8所表示的数据流 158

9.4.3 标签9~10所表示的数据流 158

9.4.4 标签11~12所表示的数据流 158

9.5 小结 159

9.6 参考资料 160

第10章 基础设施问题 161

10.1 为什么要把基础设施做好 162

10.2 需要考虑的基础设施问题 162

10.2.1 网络 163

10.2.2 托管 165

10.2.3 高可用性与容错性 169

10.2.4 灾难恢复 178

10.2.5 能力规划 178

10.3 案例研究:Elixir系统的基础设施问题 181

10.4 小结 183

10.5 我们现在讲到什么地方了 184

10.6 参考资料 186

第11章 分析架构入门 187

11.1 为什么要做分析 188

11.2 进行数据分析所采用的维度 189

11.2.1 操作分析 189

11.2.2 描述性的分析 190

11.2.3 预测性的分析 190

11.2.4 指示性的分析 191

11.2.5 认知计算 192

11.3 分析架构的基础 194

11.3.1 分层视图中的各层及五大支柱 195

11.3.2 水平层 196

11.3.3 垂直层 199

11.3.4 五大支柱 201

11.4 架构构建块 205

11.4.1 数据类型层中的ABB 206

11.4.2 数据获取与访问层中的ABB 207

11.4.3 数据存储库层中的ABB 208

11.4.4 模型层中的ABB 209

11.4.5 数据集成与整合层中的ABB 210

11.4.6 分析解决方案层中的ABB 211

11.4.7 消费者层中的ABB 213

11.4.8 元数据层中的ABB 213

11.4.9 数据与信息安全层中的ABB 214

11.4.10 描述性的分析中的ABB 215

11.4.11 预测性的分析中的ABB 215

11.4.12 指示性的分析中的ABB 217

11.4.13 操作分析中的ABB 217

11.4.14 认知计算中的ABB 218

11.5 小结 219

11.6 参考资料 220

第12章 架构经验谈 222

12.1 各种敏捷开发观点应该加以融合 222

12.2 传统的需求收集技术过时了 224

12.3 MVP范式值得考虑 225

12.4 不要忙于应付各种事务 226

12.5 预测性的分析并不是唯一的分析切入点 227

12.6 领导能力也可以通过培养而获得 227

12.7 架构不应该由技术来驱动 228

12.8 开源软件很好,但要谨慎使用 230

12.9 把看似简单的问题总结起来 230

12.10 根据技术产品的核心优势来确定架构基线 231

12.11 小结 232

12.12 参考资料 232

附录A 25个实用小知识 233

附录B Elixir的功能模型(续) 252