值得推荐的《软件架构设计》笔记

值得推荐的《软件架构设计》笔记

软件架构概念分类

组成派:软件系统的架构降系统描述为计算机组件及组件之间的交互。

关注架构实践中的客体--软件,以软件为描述对象

分析了软件的组成,即软件由承担不同计算机任务的组件组成,这些组件通过相互交互完成更高层次的计算

决策派:软件架构是在一些重要方面所做出的决策的集合。

软件系统的组织

选择组成系统的结构元素和它们之间的接口,以及这些元素相互协作时所体现的行为

如何组合这些元素,使它们逐渐合成为最大的子系统

用于指导这个系统组织的架构风格:这些元素以及它们的接口、协作和组合

软件架构并不仅仅注重软件本身的结构和行为,还注重其他特性:使用、功能性、性能、弹性、重用、可理解性、经济和技术的限制及权衡,以及美学等。

组成派:架构 = 组件 + 交互

决策派:架构 = 一组重要决策

值得推荐的《软件架构设计》笔记

架构设计:

  • 模块如何划分
  • 每个模块的职责为何
  • 每个模块的接口如何定义
  • 模块间采用何种交互机制
  • 开发人员如何选型
  • 如何满足约束和质量属性性的需求
  • 如何适应可能发生的变化

值得推荐的《软件架构设计》笔记

值得推荐的《软件架构设计》笔记

  1. 理解需求--此时软件系统是一个黑盒子
  2. 首轮决策--此时软件系统被高层切分
  3. 继续决策--此时软件系统被切分更小单元

值得推荐的《软件架构设计》笔记