软件体系结构复习-01绪论
原文链接:《软件体系结构复习-01绪论》https://www.yuque.com/gaowichen/yyf2wt/az66qlvcb21w192p?singleDoc#
目录
1 软件体系结构的发展史
2 软件体系结构定义
2.1 组成派定义
- 软件体系结构是构件和交互的集合。
- 软件体系结构是具有一定形式的结构化元素
-
- 处理元素(processing elements)、数据元素(data elements)和连接元素
- 软件架构包括component、connector和constraint三大要素
-
- 组件(component)可以是一组代码,也可以是独立的程序;
- 连接件(connector)用于表示组件之间的相互关系,可以是过程调用、管道和消息等;
- 约束(constraint)为组件连接时的条件
- 软件架构是某一系统的基本组织结构,其内容包括软件构件,构件间的联系,构件与其环境间的联系,以及指导上述内容设计与演化的原理。
2.2 决策派定义
- 架构是一系列重要决策的集合
- 软件架构是架构层次上所有设计决策的集合体
- 软件体系结构是设计决策+设计(设计决策的推理过程)
2.2 定义总结!
- 软件体系结构 = 组件 + 连接件 + 约束
-
- Software Architecture = Components + Connectors + Constrains
- 组件:具有某种功能的可重用的软件模块单元,表示了系统中主要的计算单元和数据存储。
- 连接件:表示了组件之间的交互,简单的连接件有:管道(pipe)、过程调用(procedure-call)、事件广播(event broadcast)等。复杂的连接件有:客户-服务器(client-server)通信协议,数据库和应用之间SQL连接等。
- 约束:表示了组件和连接件的拓扑逻辑和约束(constraint)。
3 软件体系结构作用
3.1 软件生命周期中的作用
3.2 系统属性
- 软件体系机构的作用不是关于系统的功能,而是关于系统的属性。
4 软件体系结构研究活动
- 软件的基本构造单元是什么?
- 构造单元之间如何连接?
- 最终形成何种样式的拓扑结构?
- 典型应用领域的典型体系结构是什么样子的?
- 如何进行软件体系结构设计与实现?
- 如果对已经存在的软件体系结构进行修改?
- 使用何种工具来支持软件体系结构的设计?
- 如何对软件体系结构进行描述、分析和验证?