实用软件架构

出版日期:2016-12
ISBN:9787111550269
作者:[印] 蒂拉克·米特拉(Tilak Mitra)

内容概要

Tilak Mitra IBM全球企业谘询服务部首席技术官(CTO)。他是IBM杰出工程师,在IT界拥有超过18年的专业经验,主要关注复杂系统的设计、企业架构、应用分析与优化等技术,并致力于将这些技术运用到工业制造、自动化、工程学及相关领域中。他是一位有影响力的技术专家和战略专家,也是一位颇受好评的意见领袖,他在IBM所引领和推动的跨学科创新活动受到了很多人的欢迎。

书籍目录

题献
译者序

前言
致谢
第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 同步的请求栂煊δJ?…… 152
9.3.2 批次模式 …… 153
9.3.3 同步的批次请求栍Υ鹉J?…… 153
9.3.4 异步的批次请求栍Υ鹉J?…… 153
9.3.5 存储并转发模式 …… 154
9.3.6 发布柖┰哪J?…… 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

作者简介

本书由IBM杰出工程师、首席技术官Tilak Mitra亲笔撰写,Amazon全五星评价。全书通过一整套实用的案例研究,逐步讲解了系统环境、架构概述、架构决策、功能模型、操作模型、系统设计的集成模式及基础设施等方面的内容。
本书共分12章。第1章描述了一个虚构的案例,以演示问题的陈述;第2章给出软件架构的一些背景知识,以及一些能够促使我们做好架构工作的成熟价值理念;第3章讲解软件架构中需要关注的一些方面;第4章介绍IT系统的系统环境;第5章介绍3种关键视图:企业视图、分层视图和IT系统视图;第6章讨论架构决策的重要性,并指导大家捕获这些决策;第7章演示怎样确定系统在功能方面的宏观设计工件,并告诉大家如何用文档来记录这些工件;第8章着重讲解系统的操作模型;第9章研究与系统集成有关的基本技术;第10章简要地讲解与主机托管有关的关键因素,帮助读者更有效地利用计算资源和存储资源;第11章简单介绍数据分析的价值及各种形式,并从架构的角度演示数据分析蓝图中一些较为关键的功能构建块;第12章分享了一些有用的实际工作经验。
本书适合软件架构师、项目经理、高层管理人员、高校计算机及相关专业师生阅读。


 实用软件架构下载



发布书评

 
 


精彩短评 (总计1条)

  •     小弟翻譯的書,請大家多多指教
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024