软件的体系结构可以类比建筑中的结构
建筑:盖房子需要砖瓦石头,窗户,门还需要水泥,钉子,螺丝,砌砖墙需要水泥将其粘合起来,安窗户,门需要用钉子吧门窗固定到墙里,显然不能使用钉子将砖钉成墙,用水泥把窗户糊在墙里
构件={砖瓦石头,窗户,门};
连接件={水泥,钉子,螺丝};
约束={事物的普遍规律,比如墙需要水泥和砖砌,门窗需要钉子和螺丝固定在墙里};
软件体系结构=构件+连接件+约束
**软件体系结构(架构):**可预制和可重构的软件框架结构
**构件:**可预制和可重用的软件元素,是组成体系结构的基本计算单元和数据存储单元
**连接件:**可预制和可重用的软件元素,是构件之间的连接单元
**约束:**构件和连接件之间的关系用约束来表示
构件的形式:
**基本实现形式:**对象。
**不同设计环境和运行环境:**控件、组件、库、表、实体、包、设计模式、框架等。
**构件的表达形式:**对外部提供操作方法的集合,内部数据结构及其操作
构件分类:
**构成的概念层次:**基础构件、中层构件、高层构件。
**应用:**通用构件、专用构件。
**功能:**数据服务构件、功能服务构件、逻辑/处理构件、界面构件、控制构件、连接构件、体系结构构件
**连接件:**实现构件与构件之间联系的特殊机制或特殊构件;如何联系的:
消息和信 的传递,功能和方法的请求或调用,数据的转换和传送,特定关系
**与普通构件的区别:**构成系统的时候的作用不同
一般构件是软件功能设计和实现的承载体
连接件的种类:
-
ü操作/过程调用(caller和callee)
-
ü管道(reading和writing)
-
ü消息传递(sender和receiver)
-
ü事件广播(事件发布者角色和任意多个事件接收者角色)
连接件是负责完成构件之间信息交换和行为联系的承载体
约束
反映了构件和连接件如何连接在一起的。例如
- 上层构件可要求下层构件的服务,反之不行;
- 两对象不得递归地发消息;
- 代码复制迁移的一致性约束;在何条件下此种连接无效等
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!