第3章软件体系结构风格
- 格式:docx
- 大小:18.25 KB
- 文档页数:5
第3章软件体系结构风格
第3章软件体系结构风格
3.1 软件体系结构风格概述
目的:体系结构级重用
风格(Style):特定应用领域中系统组织方式的惯用模式。
词汇表:描述系统的术语表,约束:指导构件连接的规则
风格问题:P49下。四要素:词汇表、约束、语义解释、分析,P50 通用风格:数据流、调用/返回、独立构件、虚拟机、仓库
3.2 经典软件体系结构风格
各种介绍一个。
3.2.1 管道和过滤器(数据流风格)
构件:过滤器,连接件:管道。
例如:编译器
特点:P50-51
3.2.2 数据抽象和面向对象组织(调用/返回风格)
构件是对象,通过调用来交互。优缺点:P51-52
3.2.3 基于事件的隐式调用(独立构件风格)
构件是模块,通过触发事件来调用。隐式:不知道哪些构件受影响。
优缺点:P52
3.2.4 分层系统(虚拟机风格、调用/返回风格)
构件在一些层实现虚拟机,对其他层不可见。
优缺点:P53
3.2.5 仓库系统及知识库(仓库风格)
两种构件:中央数据结构、独立构件。
输入流触发进程:传统数据库。状态触发进程:黑板系统。
图3-4,黑板组成
3.2.6 C2风格
UCI(加州大学Irvine)设计,基于构件和基于消息的风格。 Component,Connector,还有通信(竖线)。
规则:P54,特点:P55。
3.3 客户/服务器风格
C/S,从集中式->多用户->局域网,资源不对等,为了共享。
双方任务:P56。流程:P56,图3-7
优缺点:P57
3.4 三层C/S结构风格
3.4.1 三层C/S结构的概念
图3-8,增加应用服务器。
表示层、功能层、数据层。图3-10(2)优点显著。
中间件最重要。
3.4.2 三层C/S结构应用实例
劳动管理系统,P60-64
3.4.3 三层C/S结构的优点
P64,注意通信效率。
3.5 浏览器/服务器风格
利用了WWW,全新的软件体系结构。真正零客户端。
缺点:P66?
3.6 公共对象请求代理体系结构
COBRA,太复杂。解决平台无关、语言无关。
中间件,ORB
特点:P68-69
3.7 正交软件体系结构
3.7.1 正交软件体系结构的概念
由层和线索构成。层:相同抽象基本的构件。线索:由完全不同层的构件组成。
线索完全独立:结构完全正交。垂直线索构件族的层次化结构。
主要特征:P69
3.7.2 正交软件体系结构的实例
电力局管理信息系统,P70-73 3.7.3 正交软件体系结构的优点
P73
3.8 基于层次消息总线的体系结构风格
HMB提出背景:P73-74
消息总线是连接件。消息是构件之间通信的唯一方式。图3-22
3.8.1 构件模型
接口、静态结构、动态行为。图3-23
3.8.2 构件接口
基于消息的互联接口。两个特点:不关心消息如何产生,构件低耦合。响应消息后状态可变迁,不同状态不同响应。
发出消息,接收消息。P76
3.8.3 消息总线
图3-24。消息登记,消息分派与传递,消息过滤。
3.8.4 构件静态结构
图3-25,层次结构
3.8.5 构件动态行为
受消息类型和当前状态的影响,用有限状态机描述。Mealy机(输出是状态和输入的函数)。
3.8.6 运行时刻的系统演化
不用重新编译,HMB方便支持:动态增删,动态响应,消息过滤。
3.9 异构结构风格
3.9.1 为什么要使用异构结构
原因:P79。
3.9.2 异构结构的实例
C/S与B/S混合,两种:“内外有别”,图3-26,“查改有别”,图3-27。
实例:变电站信息管理,属于“内外有别”型。
3.9.3 异构组合匹配问题
九种解决不匹配问题方法:P83。
3.10 互连系统构成的系统及其体系结构 3.10.1 互连系统构成的系统
SIS,各独立系统互连,相互通信。一个系统体现整体功能(上级),其余系统代表局部(从属)。图3-30,可多级。
3.10.2 基于SASIS的软件过程
图3-31,六步。
1.系统分解:将上级功能分布在从属系统
2.用例建模:每个系统建立用例,高级用例与详细用例(图3-32),用例主角(图3-33)
3.分析设计:标识构件、选择风格、映射构件、分析交互、产生结构。考虑重用和实现
4.实现:构件的开发与测试
5.测试:组装集成测试
6.演化维护:主要功能变更才改上级版本,从属系统变化只内部变更。
3.10.3 应用范围
P87,大规模系统,分布式系统,遗留系统。优点:P89
3.11 特定领域软件体系结构
3.11.1 DSSA的定义
在特定应用领域为一组应用提供参考。必备特征:P90上。
领域:垂直域,水平域。
3.11.2 DSSA的基本活动
分析:获得领域模型,分析机制:图3-34
设计:获得DSSA
实现:开发和组织可重用信息。
3.11.3 参与DSSA的人员
领域专家,分析、设计、实现人员
3.11.4 DSSA的建立过程
五个阶段:
1.定义范围:输出需求
2.定义元素:编译词典 3.定义约束:描述解空间
4.定义模型:产生体系结构
5.产生构件:产生可重用产品单元
图3-35,三层次系统模型
3.11.5 DSSA实例
保险行业,图3-36
1.传统方法:左列
2.DSSA:中间
3.新应用构成:右列
3.11.6 DSSA与体系结构风格的比较
DSSA以问题域出发,在另一域不可重用。SA以解决域出发,不涉及特定领域。