UML 统一建模语言
2024-12-02 14:24:24 0 举报
UML(Unified Modeling Language)是一种用于描述、可视化、构建和文档化软件系统的标准建模语言。它包括一组图形符号,用于描述系统的静态结构和动态行为。UML中的核心内容主要包括类图、对象图、构件图、部署图、活动图、状态图和序列图,这些图可以帮助开发者理解和分析系统的各个方面。UML文件类型通常为.uml,可能包含在项目文档、需求规格说明书、设计文档等文件中。修饰语(stereotypes)是UML中用于扩展和自定义图元素的机制,用于表示特定领域或特定应用背景下的特定概念。
作者其他创作
大纲/内容
动态模式
状态图
概念:描述一个对象可能处于各种不同状态以及这些状态如何转移。
组成:状态图= 状态 + 转移
状态:是某一对象在它的生命周期中某一个时刻产生的状态值。
状态内部的活动:在特定的状态下对象可能执行的功能。
三种标准状态:
entry:进入一个状态被自动触发
Do:处于激活状态执行的功能
Exit:离开一个状态时候自动触发,所有其他的活动结束之后才触发。
转移:一个状态到另外一个状态的变化过程。
引发转移的事件:
信号事件 。比如开机电脑操作,当我们按下“开机键”
发送信号 接收信号
变化事件 。对象执行某一功能行为,当布尔条件值为true,发生状态转移
时间事件。对象的状态因为系统设定时间点或者时间段而自动发生转移。
调用事件。其他系统通过接口等方式直接执行该系统的内部
状态的分类:初态、终态、中间态、复合态
对象的行为,引发状态转移。
状态图的总结:
状态图虽然精确的描述了对象在不同的状态下的复杂行为,但是它仅仅描述一个
对象的多种状态,不能描述对象的所有行为,而且不能同时描述多个对象之间的协作行为。
要确定整体对象的行为,必须同时结合顺序图和协作图。
活动图
概念:活动图用于表示系统控制流的,描述系统的动态行为,是状态图特殊形式。
描述对象的活动的顺序关系所遵守的规则,侧重表现是系统的行为,而非系统处理过程。
组成: 活动图 = 活动 + 对象 +状态转移+信号+泳道
活动图的关系 :
迁移:活动的完成与新活动的开始
分支(选择关系):根据条件,控制执行方向。
分叉:以下活动可以并发执行
结合: 以上并发活动再此结合
活动图的总结:
活动图主要秒速系统全部活动,在模型化活动图与UML状态图、顺序图和协作图
形成互补关系。
活动图用于表达某一个方法的具体逻辑。适合描述工作流、业务流和开发过程。
状态图和活动图的区别
(1)状态图是确定某个类(或者是对象)的各种状态转换,例如:冰,水,水蒸气三种表示了水三种状态。
活动图表示某个过程的步骤先后顺序,比如。冰加热变成水蒸气的过程。1.冰块融化化成水 2.水蒸发变成水蒸气
(2)状态:行为的结果
活动:行为的动作
注意:实际项目中,UML活动图不是必须的。
下列情况我们可以考虑使用UML活动图:
描述并行的过程的行为。
描述一个算法
描述一个跨越多个用例的活动
动态模型 :顺序图 和 协作图
顺序图:称为时序图,用来描述对象之间动态的交互关系,重点体现对象间的消息传递的时间顺序
顺序图包含四个元素:
对象
生命线
消息
消息是顺序图活动对象之间通信的唯一方式。
消息定义对象之间某种通信的方式。
它可以激活某个操作、唤起信号、导致目标对象的创建与销毁。
消息传递是可以带参数。UML中,使用箭头符号来表示消息类型。
消息的类型:
(1)同步消息 :代表一个操作调用控制流,同步消息的发送者把控制消息
传递给消息接收者,暂停当前的活动,等待消息接受者应答信号,
\ 收到应答信号才能继续自己后续的操作。
UML图形符号:
(2)异步消息:用于控制流在完成前不需要中断的情况。
例如:网络数据的发送与接收。就是采用异步消息。
UML图形符号:
(3)返回消息: 表示过程调用返回
UML图形符号:
(4)普通消息:展示一个对象传递到另外一个对象,但不描述细节
UML图像符号与同步消息一样。(这里省略)
控制流 :分支 循环
激活
UML图形符号 :
协作图:
交互图中的一种,描述了收发消息的对象的组织关系。强调对象之间的合作关系,时序图按照时间顺序,而协作图按照空间结构布图。
对象:
矩形框。框内写上对象名(类名:对象名)
消息: 箭头符号表示消息传递。
构件图
(1)概念:构件图是从软件架构的角度来描述一个系统的主要功能。
比如: 子系统 、 类、 包、构件等 .
使用构件最重要的是复用。(构件是可以替换的物理单元)
每一个构件实现一定的功能,为其他构件提供使用接口
(2)构件的类型
[1]源代码构件(源代码文件)
[2]二进制构件 (目标代码文件,静态链接库,动态链接库)
[3]可执行构件(可执行程序)
[4]数据文件或文档
(3)构件和类
类 :表示逻辑抽象 类可以直接拥有属性和操作
构件:表示物理抽象 .。一般情况下,构件只有
通过其接口访问操作。
(4)构件的特点
<1>构件是物理的
<2>构件是可以替换的
<3>构件是系统的一个部分
<4>构件遵从一组接口并提供对一组接口的实现。
(5)构件图的构成
构件图=构件+接口+关系(四种)
(6) 构件与接口
构件与其对应接口之间的关系:实现
构件与其他构件之间的关系:依赖
示出接口:构件实现的接口
引入接口:构件使用的接口
部署图
(1)概念:部署图显示了运行系统的物理硬件,以及如何将软件部署到硬件上
(2)部署图的组成 = 节点+组件+关联关系
<1>节点:是一个物理元素,它在运行时存在,代表一个可计算的资源。通常占用一些内存和具有处理的能力。一个构件集合一般位于一个
节点,但有可能从一个节点转到另外一个节点。
节点有两种类型:处理器 和 设备
<2>组件(构件):部署图中可以包含构件,也就是构件图的基本元素,它是系统可以替换的物理部件,并包装提供某些服务。
<3>关系:依赖关系和关联关系
概念:unified modeling language 是由一套标准图形化得符号来表达软件建模过程
为什么要用UML? 让整个软件设计有更好的可读性、可理解性,方便各个开发人员之间
的交流。软件产品经理、开发人员、项目需求分析人员等沟通建立基础。
UML组成:
UML图分为五大类九类图 (4+1模型视图)
(1)用例图
用于描述系统的功能。指出各个功能的执行者(actor)。
(2)静态图
用于描述系统的静态结构。包括类图(class)、对象图(objects)、包图。
(3)行为图
用于描述系统的对象之间的交互关系。包括 状态图 和 活动图。
(4)交互图
用于描述系统对象之间动态合作关系。包括顺序图(时序图)和 合作图(协作图)
(5)实现图
用于描述系统的物理实现。包括构件图和部署图(配置图)
UML 模型划分
静态模型(类图、对象图、构件图、配置图)
动态模型(动态图、活动图,顺序图、协作图)
用例模型(用例图)
用例图:
组成部分:
(1)用例 use case
(2)执行者 actor
(3)关系 communcation
用例图描述系统用户完成某一个目标所需要的功能操作。
用例之间的关系
(1)关联关系
指参与者与用例之间的关系。
泛化关系 :参与者之间继承关系。
(2)包含关系
指用例之间的关系。两个用例之间,一个用例包含另外一个用例的行为,并作为
自己行为一个部分。
(3)扩展关系
将其中基用例中一段相对独立并且可选动作,用扩展加以封装。然后再
让它从基用例中声明的扩展点进行扩展。
包含关系与扩展关系区别:
include:当可以从两个或者两个以上的用例中提供公共行为时,则
可以使用包含关系。
extend:如果一个用例明显地混合两种或两种以上的不同场景,
即根据情况可能发生多种分支,则可以使用扩展关系。
(2)执行不同
include:基本用例包含用例必须执行
extend:扩展用例不一定执行,根据情况选择可以执行或不执行
(3)添加不同
include:不可以为基用例添加新的行为
extend:可以添加。
(1)使用不同
收藏
0 条评论
下一页