UML建模和架构文档化
2023-12-15 12:09:20 0 举报
AI智能生成
软考UML图
作者其他创作
大纲/内容
UML基础
静态图(结构图)
静态图的定义:显示系统的静态结构,特别是存在事务的种类的内部结构相互之间的关系
用例图
说明:从外部用户的角度描述系统功能,并指出功能执行者。软件系统与外部参与者的交互.展现了一组用例、参与者及其之间的关系。
关系:
包含 include
执行某个事情前,必须要先执行
扩展 extend
可做可不做
泛化
一般和特殊,子类和父类,继承
需识别的元素
参与者
用例间关系
用例图
用例之间的描述
类图
类图定义:类与类之间的关系。一组类、接口、协作和他们直接的关系。类的内部属性和行为,以及类集合之间的交互关系。
精确完整的类图
关系
关联(部分和整体)
聚集
类似大雁和雁群
组合
生命周期一样,类似人和人脑
泛化
一般和特殊,父类和子类,类似继承
依赖
一个事务的语义依赖另一个事务的语义而变化
研究类图的步骤:
研究分析问题领域,确定系统的需求
确定类,明确类的含义和职责、确定属性和操作
确定类之间的关系
类图:
对象图
对象图定义:某一时刻,一组对象和他们之间的关系。类图的某一时刻快照。
对象图:
包图(架构图)
定义:是一种维护和描述系统总体结构的模型的重要建模工具,描述系统的分解机结构。表示包和包之间的关系,展现系统模板之间的依赖关系。
由模型本身分解而成的组织单元,以及他们之间的依赖关系。
由模型本身分解而成的组织单元,以及他们之间的依赖关系。
包的作用:在面向对象软件开发的过程中,类显然是构建整个系统的基本元素。但是对于大型的软件系统而言,其包含的类将是成百上千,再加上类间的关联关系、多重性等,必然是大大超出了人们对系统的理解和处理能力。为了便于管理这些类,我们引入了“包”这种分组元素。
描述软件体系结构图
包图
制品图
定义:系统的物理结构
组合结构图
动态图(行为图)
交互图
序列图(顺序图,时序图)
时序图:强调按时间顺序,以时间顺序组织的对象之间的交互活动。用于显示对象之间的交互
重点:描述多个对象之间的交互活动
通信图(协作图)
定义:描述系统的行为,强调参与交互的对象组织
重点:多个对象间的消息按序号传递
定时图
强调实际时间
交互速览图
状态图
定义:对类图的补充,单个对象在其生命周期的动态行为
重点:单个对象
状态图定义了对象的内部行为,描述复杂对象
活动图
定义:系统的工作图和并发行为。类似程序流程图,并发行为。
多个对象的活动
描述流程化处理过程
实现图
构件图
定义:一组构件及其之间的相互关系。一个【封装的类】和它的接口。
部署图
定义:也称配置图、实施图,可以用来显示系统中计算节点的拓扑结构和通信路径与节点上运行的软件构件,用于理解分布式系统。软硬件直接的映射
软件开发过程
基于UML进行需求分析
从业务需求描述出发获取执行者和场景,对场景进行汇总、分类、抽象,形成用例,确定执行者与用例、用例与用例之间的关系,生成用例图。
面向对象设计方法
提取边界类、实体类、控制类
实体类
映射需求中的每一个实体
保存需要存储在永久存储体重的信息
控制类
用于控制用例工作的类
对一个或者多个用例所特有的控制行为进行建模,控制对象通常需要控制其他对象,因此它们的行为具有协调性
边界类
封装在用例内、外流动的信息或数据流。
构造交互图
根据交互图简化类图
系统架构文档化
(4+1 视图)
(4+1 视图)
1. 逻辑视图(逻辑架构)
设计的对象模型(使用面向对象的设计方法时)。支持功能性需求,采用抽象,封装或继承的原理,用来识别遍布系统各个部分的通用机制和设计元素。
表示了设计模型在架构方面具有重要意义方面的部分,即类、子系统、包和用例实现的子集。
2、开发视图(开发架构、实现视图)
描述在开发环境中,软件的静态组织结构。用模块和子系统来表达,显示了“输入”和“输出”的关系。
实现视图对组成基于系统的物理代码的文件和构件进行建模。
3.过程视图(进程架构)
捕捉设计的并发和同步特征,考虑一些非功能的需求,如性能和可用性。在几种层次的抽象上进行描述,每个层次针对不同问题。
可执行线程和进程作为活动类的建模,它是逻辑视图的一次执行实例,描述了并发和同步结构。
4.物理视图(物理架构、部署视图)
软件到硬件的映射,反应了分布式特性。主要关注系统非功能性需求,如可用性、可靠性、性能和可伸缩性。
把构件部署到一组物理节点上,表示软件到硬件的映射和分布式结构
5.场景(用例视图)
架构的描述,即所做的各种决定,可以围绕这4个视图来组织,然后由一些用例(Use Cases)或场景(Scenarios)来说明,从而形成第5个视图。
用例视图是最基本的需求分析模型。
收藏
收藏
0 条评论
下一页