作品简介

本书由IBM杰出工程师、首席技术官Tilak Mitra亲笔撰写,Amazon全五星评价。全书通过一整套实用的案例研究,逐步讲解了系统环境、架构概述、架构决策、功能模型、操作模型、系统设计的集成模式及基础设施等方面的内容。

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

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

作品目录

  • 题献
  • 译者序
  • 前言
  • 致谢
  • 第1章 案例研究
  • 1.1 业务问题
  • 1.2 小结
  • 第2章 软件架构是什么?为什么需要做软件架构
  • 2.1 背景知识
  • 2.2 软件架构是什么
  • 2.3 为什么需要做软件架构
  • 2.4 架构视图与架构视点
  • 2.5 小结
  • 2.6 参考资料
  • 第3章 恰到好处地把握架构中的重要方面
  • 3.1 软件架构中需要关注的一些方面
  • 3.2 小结
  • 第4章 系统环境
  • 4.1 业务环境与系统环境之间的辨析
  • 4.2 捕获系统环境
  • 4.3 案例研究:Elixir的系统环境
  • 4.4 小结
  • 4.5 参考资料
  • 第5章 架构概述
  • 5.1 什么是架构概述
  • 5.2 为什么要做架构概述
  • 5.3 企业视图
  • 5.4 分层视图
  • 5.5 IT系统视图
  • 5.6 案例研究:Elixir的架构概述
  • 5.7 小结
  • 5.8 参考资料
  • 第6章 架构决策
  • 6.1 为什么需要做架构决策
  • 6.2 怎样开始进行架构决策
  • 6.3 创建架构决策
  • 6.4 案例研究:Elixir的架构决策
  • 6.5 小结
  • 第7章 功能模型
  • 7.1 为什么需要功能模型
  • 7.2 可追溯性
  • 7.3 制定功能模型
  • 7.4 案例研究:Elixir的功能模型
  • 7.5 小结
  • 7.6 参考资料
  • 第8章 操作模型
  • 8.1 为什么需要操作模型
  • 8.2 可追溯性与服务级别协议
  • 8.3 制定操作模型
  • 8.4 案例研究:Elixir的操作模型
  • 8.5 小结
  • 8.6 参考资料
  • 第9章 集成:方式与模式
  • 9.1 为什么需要进行集成
  • 9.2 集成方式
  • 9.3 集成模式
  • 9.4 案例研究:Elixir的集成视图
  • 9.5 小结
  • 9.6 参考资料
  • 第10章 基础设施问题
  • 10.1 为什么要把基础设施做好
  • 10.2 需要考虑的基础设施问题
  • 10.3 案例研究:Elixir系统的基础设施问题
  • 10.4 小结
  • 10.5 我们现在讲到什么地方了
  • 10.6 参考资料
  • 第11章 分析架构入门
  • 11.1 为什么要做分析
  • 11.2 进行数据分析所采用的维度
  • 11.3 分析架构的基础
  • 11.4 架构构建块
  • 11.5 小结
  • 11.6 参考资料
  • 第12章 架构经验谈
  • 12.1 各种敏捷开发观点应该加以融合
  • 12.2 传统的需求收集技术过时了
  • 12.3 MVP范式值得考虑
  • 12.4 不要忙于应付各种事务
  • 12.5 预测性的分析并不是唯一的分析切入点
  • 12.6 领导能力也可以通过培养而获得
  • 12.7 架构不应该由技术来驱动
  • 12.8 开源软件很好,但要谨慎使用
  • 12.9 把看似简单的问题总结起来
  • 12.10 根据技术产品的核心优势来确定架构基线
  • 12.11 小结
  • 12.12 参考资料
  • 附录A 25个实用小知识
  • 附录B Elixir的功能模型(续)
展开全部