软件体系结构

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
对象图 类图 Use Case图
:资源
消息内 容标签
1.1:按名找资源 3.1:[资源中无该技能]
UML 图 形
顺序图
协作图 状态图
1:找出资源 2:找出技能
3:把技能加入资源
资源管理窗口: 用户接口
把技能加入到资源
:资源—技能
活动图
构件图 配置图
:技能
2.1:按名找技能
连接和消 息传递
17
1.1、UML的内容与组成(续)
寄送货票
通宵发货
常规发货
接收付款
活动图
构件图 配置图
分支处理
关闭定货
同步行为
顾客定货处理的活动图
19
1.1、UML的内容与组成(续)
对象图 类图 Use Case图
业务 (源码)
开发期
资源管理 (源码) 资源管理 (对象) 资源管理 (执行码)
UML 图 形
顺序图
协作图 状态图
项目管理 (源码)
项目管理 (对象)
对象和类的划分 接口和接口实现的划分
扩展机制(Extensibility)
构造型(Stereotype) 标记值(Tagged Value) 约束(Constraint)
12
1.1、UML的内容与组成(续)
对象图 类图 Use Case图
d1:部门
部门名=“销售部”
c1:公司
d2:部门
部门名=“研发部”
* * {subset} 成员 1..* 1 经理
状态图
活动图
构件图 配置图
员工
编号:integer 姓名:string 职务:string
职工工号() 职工名() 取联系信息()
联系信息
地址:integer
14
1.1、UML的内容与组成(续)
示例1:资源管理Use Case图
对象图 类图 Use Case图 添加技能 删除技能 更新技能 添加资源 删除资源 更新资源
22
10:基于UML的SA描述
1、UML概述
2、“4+1”模型
2、 “4+1”模型---统一软件开发过程RUP
RUP的4+1视图
类、接口和协作, 主要支持功能需求
类图 (静态) 对象图 顺序图 (动态)
功能描述:(静态) 用况图;
(动态) 顺序图、 协作图、状态图、活动图
构件图 (静态)
逻辑视图
最终用户:功能需求 编程人员:软件管理
逻辑视图
场景 进程视图 系统集成人员:性能 可扩充性、吞吐量等
开发视图
物理视图 系统工程人员:系统 拓扑、安装、通信等
28
◇ 逻辑视图
逻辑视图主要支持系统的功能需求,即系统提供给 最终用户的服务。
在面向对象技术中,通过抽象、封装和继承, 可以用对象模型来代表逻辑视图,用类图来描述逻辑 视图。
项目管理 (执行码)
运行期
系统管理 (源码) 系统管理 (对象) 系统管理 (执行码)
活动图
构件图 配置图
不同开发过程的软件产物的构件图
20
1.1、UML的内容与组成(续)
对象图 类图 Use Case图
资源管理
桌面 客户
打印机
驻留构件
通讯联系
资源管理 (执行码)
UML 图 形
顺序图
协作图 状态图
29
◇ 逻辑视图
可以从Booch标记法中导出逻辑视图的标记法,只是 从体系结构级的范畴来考虑这些符号 ,用 Rational Rose进行体系结构设计。
构件 类 连接件 关联 包含,聚集 类服务 使用 继承
参数化类
类层次
实例
30
◇ 逻辑视图
逻辑视图中使用的风格为面向对象的风格。
会话
转换服务
例:某通信系统体系结构的主要 类
Use Case Use Case Diagrams Diagrams 用例图
State State Diagrams Diagrams 类图
State State Diagrams Diagrams 对象图
UML
Component Component Diagrams Diagrams
State State Diagrams Diagrams 构件图
7
1.1、UML的内容与组成
聚合(Aggregation)
8
1.1、UML的内容与组成
依赖(Dependency)
其中一个事物(独立事物)发 生变化会影响另一个事物 (依赖事物)的语义。在图形 上,把一个依 赖画成一条 可能有方向的虚线。
9
1.1、UML的内容与组成
依赖(Dependency)
领域特定
人机接口 外部系统
离线工具 测试工具
通用空中交通管制代码 客户定制
5
◇ 进程视图
进程视图侧重于系统的运行特性,主要关注一些非 功能性的需求。 进程视图强调并发性、分布性、系统集成性和容错 能力,以及从逻辑视图中的主要抽象如何适合进程结 构。它也定义逻辑视图中的各个类的操作具体是在哪 一个线程中被执行的。
软件体系结构
软件体系结构
10.基于UML的SA描述
2
10:基于UML的SA描述
1、UML概述
2、“4+1”模型
Part 10:基于UML的SA描述
1、UML概述
1.1、UML的内容和组成
1.2、UML的应用
1.1、UML的内容与组成
结构性事物 对象类 Use case
事物 模型的概念 和表示法
《extend》 把技能指定给资源 《Use》 《Use》 《extend》 从资源中清除技能 《Use》 《Use》
查找技能
UML 图 形
顺序图
协作图 状态图
活动图
构件图 配置图
查找资源
15
1.1、UML的内容与组成(续)
对象(对象类角色)
对象图 类图 Use Case图
:资源管理员
资源管理窗口 :用户接口
顺序图 (动态) 协作图 状态图 活动图 注重描述线程和 进程的主动类; 系统有一定的并 发行为时使用;
开发视图
(Implementation view)
协作图 状态图 活动图
(Design view)
Use Case视图
( Use Case view)
配置图 (静态)
进程视图
(Process view)
Scenario Scenario Diagrams Diagrams 状态图
部署图
活动图
11
1.1、UML的内容与组成(续)
说明(Specification)除图形之外的文字部分(具有语法和语义) 装饰(Adornment):细节特性的说明 语言的 公共机制
通用划分(Common Division)
接口 仿真和培训 外部接口网 关
飞行管理
空中交通管 理
航空信息 机械服务
基本元素
32
◇ 开发视图
开发视图也称模块视图,主要侧重于软件模块的组 织和管理。
开发视图要考虑软件内部的需求,如软件开发的容 易性、软件的重用和软件的通用性,要充分考虑由于 具体开发工具的不同而带来的局限性。 开发视图通过系统输入输出关系的模型图和子系统图 来描述。
功能是在终端之间建立连接 , 终端 可以是电话机、通讯线路等 线路控制器对象译码并把所有符号 加入到线路接口卡中。 终端对象是保持终端的状态 会话对象是代表一组参与会话的终 端,使用转换服务和连接服务在终端 之间建立语音路径
31
终端
连接服务
控制器
编号计划
◇ 逻辑视图
对于规模更大的系统来说,体系结构级中包含数十 甚至数百个类 。例:空中交通管制系统类图,包含8 组类。 显示及用户
:资源
:技能
:资源--技能
找出资源 按名找资源
UML 图 形
顺序图
协作图 状态图
时 间
找出技能
按名找技能
活动图
构件图 配置图
生命线 (lifeline) 把技能加入资源 [资源中无该技能] 把技能加入资源
激活期 (Activation)
消息 (message)
条件
16
1.1、UML的内容与组成(续)
33
◇ 开发视图
与逻辑视图一样,可以使用Booch标记法中某些符号来 表示开发视图。
构件 连接件
模块
参照相关性
子系统

34
◇ 开发视图
在开发视图中,最好采用4-6层子系统,而且每个子 系统仅仅能与同层或更低层的子系统通讯,这样可以 使每个层次的接口既完备又精练,避免了各个模块之 间很复杂的依赖关系。
35
◇ 开发视图
空中交通管制系统开发视图
各种各样的空中 交通管制系统 特定的空中交通 管制系统构件 空中交通管制 系统框架 分布式虚拟机 基本元素 硬件、操作系 统、数据库
36
4 空中交通管制功能区:飞行管理、雷达管理等 3 2 1 航空类、空中交通管制类
公用构件
低层服务
领域无关
支撑机制:通信、时间、储存、资源管理等
关联(Association)是一种结 构关系,它描述了一组链, 链是对象之间的连接。 泛化(Generalization)
聚合(Aggregation) 实现(Realization)
10
1.1、UML的内容与组成
4.5 软件体系结构与UML
Use Case Use Case Diagrams Diagrams 序列图 Scenario Scenario Diagrams Diagrams 协作图
26
◇ “4+1”模型概述
Kruchten在1995年提出了“4+1”的视图模型。
“4+1”视图模型从5个不同的视角包括逻辑视图、进 程视图、物理视图、开发视图和场景视图来描述软件 体系结构。 每一个视图只关心系统的一个侧面,5个视图结合在 一起才能反映系统的软件体系结构的全部内容。
27
◇ “4+1”模型概述
联系
语言的 公共机制 图形
关联(Association)
泛化(Generalization)
聚合(Aggregation) 实现(Realization)
状态图 模机制
活动图 构件图 配置图 5
1.1、UML的内容与组成
泛化(Generalization)即继承
6
1.1、UML的内容与组成
关联(Association):是一种结构关 系,它描述了一组链,链是对象 之间的连接。
空闲 Timer=0 Do:increase timer
UML 图 形
顺序图
协作图 状态图
停留在一层
GoUp(floor)
服务停靠 Entry:^Queue.delete(head)
活动图
构件图 配置图
向下运行 Dest_floor Entry:dest_floor=floor Do:下行到dest_floor
物理视图
(Deployment view)
顺序图 (动态) 协作图 状态图 活动图
针对系统的性能、 可收缩性和吞吐量
软件系统的物理分布
24
2、 “4+1”模型
◇ 软件体系结构建模
解决如何表示软件体系结构问题
25
◇ 软件体系结构建模的种类
◎ 结构模型 ◎ 框架模型 ◎ 动态模型 ◎ 过程模型
◎ 功能模型 按体系结构的模型分类,最常用的结构模型和 动态模型
行为性事物
接口(Interface) 构件(Component)
接点(Node)
等 交互 状态
UML
对象约束 语言OCL
的表达式以条 件或限制的形 式附加在模型 元素上。
等 成组性事物:包(Package)等 注释性事物:注释(Note) 等 依赖(Dependency)
Hale Waihona Puke Baidu
对象图
类图 Use Case图 顺序图 协作图 动态建
UML 图 形
顺序图
协作图 状态图
d3:部门
部门名=“国内部”
活动图
构件图
经理
配置图
p1:员工
编号=2 姓名=“张三” 职务=“销售经理”
:联系信息
地址=“师大路3号”
13
1.1、UML的内容与组成(续)
对象图 类图 Use Case图
*
公司
1 1..*
部门
0..1
UML 图 形
顺序图
协作图
部门名:string
应用 服务器
系统管理 (执行码)
通用应用 (执行码)
数据库服务器 DB:数据库
项目管理
桌面 客户
活动图
构件图 配置图
项目管理 (执行码)
打印机
项目与资源管理的配置图(C/S三层结构)
21
1.2、UML的应用
(1)可以描述非软件系统:如机械系统、企业结构等;
(2)支持软件系统开发的各个阶段: a)需求:Use Case捕获用户需求; b)分析:领域相关的类、对象及其关系; c)设计:与技术实现相关的类,如UI、DB、通讯等; d)编码:将设计的类转化为具体OO语言的代码。 e)测试: 单元测试:依据类图和规格说明; 集成测试:构件图和协作图; 系统测试: Use Case来验证系统行为。
[timer=timeOut/GoDown(firstFloor)]
对象图 类图 Use Case图
GoUp(floor)
向上运行 Dest_floor Entry:dest_floor=floor Do:上行到dest_floor
GoUp(floor) [CurrentFloor= dest_floor]
GoDown(floor)
[CurrentFloor= dest_floor]
GoDown(floor)
GoDown(floor)
18
1.1、UML的内容与组成(续)
对象图 类图 Use Case图
发货处 理业务 流
接收定货
接收货 款业务 流
UML 图 形
顺序图
协作图 状态图
[快速定货]
填写定单
[否则]
相关文档
最新文档