软件工程-UML

例图,类图,状态图,顺序图,活动图

目录

例图

类图

状态图

顺序图

活动图


例图

例图由四个元素组成,参与者、用例、系统边界、参与者和用例之间的关系

参与者用一个小人表示,用例用椭圆表示,系统边界用方形容器表示

参与者 系统外部实体,如人、设备或其它系统。通过与系统交互完成特定任务。

用例 描述系统如何响应参与者发起的请求。实现特定目标的一系列动作。

参与者与用例之间的关系有关联,泛化,包含,扩展四种

类图

类图由类、接口、关联、依赖等元素构成,每个类包含属性(数据)和操作(方法)

#意味着只能由同一个类或其子类访问

~意味着只要他在同一个包中,任何其他类都可以访问

因为我们不会实例化动物本身

还有关联关系(水獭吃海胆)

聚合关系(用于说明整体和部分之间的关系),为乌龟(tortoise)创建新的类(creep),乌龟可以随时离开creep并独立存在,一部分可以存在于整体之外,用空心菱形表示

组合关系(部分不能存在于整体之外),游客中心被拆除,大堂不能独立存在,没有父类时,子类将无法存在,用实心菱形表示

多重性允许对关系设置数字约束

状态图

状态图可以描述一个对象在其生命周期中的各种状态以及状态的转换

实心圆表示状态图的开始

状态用圆角矩形表示,每个状态代表对象执行特定行为的时期

每个状态由两个部分组成,分别是状态名和活动

关闭状态称为原状态,由关闭状态转换为启动状态可以是一个触发事件,也可以是一个动作,是事件的话,需要有一个监护条件。

启动状态称为目标状态。

圆圈内实心圆,表示状态的结束

客服审核用一个菱形表示选择状态,条件分支上方括号内的文字表示监护条件

顺序图

参与者 与系统、子系统或类发生交互作用的外部用户

生命线是一条垂直的虚线,对象之间的消息位于两条虚线之间,生命线从上往下表示时间顺序的先后。生命线代表对象存在时间

横的虚线表示返回消息,实线表示请求消息,选择框表示在两个或多个消息之间进行选择

激活框显示对象执行某个动作的时间段,这可以让我们一目了然地看到对象何时处于活动状态或空闲状态

活动图

活动图展现了从一个活动到另一个活动的控制流程,它可以显示系统的活动顺序

实心圆表示活动的开始节点,一个图中只有一个

动作节点,表示需要执行的任务,用圆角矩形表示

决策节点用空心菱形表示

空心菱形还可以表示合并节点,合并节点指不同条件的分支子流程执行后,最终都会在某个节点上进行合并,执行同一个后续流程,

Fork节点分叉出的子流程表示是并行执行的,也就是异步操作,用黑色粗线表示

join节点表示在某个位置等待所有异步执行的流程都执行完毕后再合并成同一个流程运行,也用黑色粗线表示

圆圈内实心圆表示活动的结束

一个活动图中可以有多个结束节点

转换:当一个活动结束时,控制流会马上传递给下一个活动节点,在活动图中称之为"转换",用一条带箭头的直线表示

按照角色进行分组-泳道

相关推荐
PXM的算法星球12 分钟前
【软件工程】面向对象编程(OOP)概念详解
java·python·软件工程
赛卡13 小时前
IPOF(Input-Process-Output-Feedback)方法学简介
人工智能·机器学习·流程图·硬件工程·软件工程·系统工程
ICT_SOLIDWORKS1 天前
智诚科技苏州SOLIDWORKS授权代理商的卓越之选
大数据·人工智能·科技·软件工程
PLUS_WAVE1 天前
【Tools】chezmoi 跨多台不同的机器管理 dotfiles 的工具
linux·服务器·软件工程·工具·chezmoi
PLUS_WAVE2 天前
【SSH 端口转发】通过SSH端口转发实现访问远程服务器的 tensorboard
linux·服务器·ssh·软件工程·端口转发·tensorboard
菠萝崽.2 天前
安装docker,在docker上安装mysql,docker上安装nginx
java·mysql·nginx·docker·软件工程·springboot·开发
瓯雅爱分享2 天前
任务管理系统,Java+Vue,含源码与文档,科学规划任务节点,全程督办保障项目落地提效
java·mysql·vue·软件工程·源代码管理
光头颜2 天前
UML之序列图事件时刻与轨迹
软件工程·uml
Nita.3 天前
UML 类图基础和类关系辨析
软件工程·uml类图
斗转星移33 天前
Ubuntu20.04 中使用vscode中编辑查看PlantUML
linux·vscode·uml·plantuml