软件工程-UML

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

目录

例图

类图

状态图

顺序图

活动图


例图

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

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

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

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

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

类图

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

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

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

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

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

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

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

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

状态图

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

实心圆表示状态图的开始

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

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

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

启动状态称为目标状态。

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

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

顺序图

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

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

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

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

活动图

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

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

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

决策节点用空心菱形表示

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

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

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

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

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

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

按照角色进行分组-泳道

相关推荐
雾江流10 小时前
悦读 1.11.0 | 有情感的AI电子书朗读,多国语言,支持多格式
软件工程
Warren2Lynch13 小时前
C4 vs UML:从入门到结合使用的完整指南(含 Visual Paradigm AI 实操)
人工智能·机器学习·uml
会周易的程序员14 小时前
openplc runtimev4 Docker 部署
运维·c++·物联网·docker·容器·软件工程·iot
雾江流16 小时前
PiliPlus 1.1.6 | 基于Flutter开发的第三方哔哩,目前最好用的一款
软件工程
成茂峰17 小时前
软考高级·系统架构设计师 | 五、软件工程基础知识
系统架构·软件工程·软考高级·架构设计
雾江流2 天前
小米堆叠桌面6.01.05.1991 | 提前享受丝滑堆叠桌面,仅限小米手机
智能手机·软件工程
爱思德学术2 天前
中国计算机学会(CCF)推荐学术会议-C(软件工程/系统软件/程序设计语言):SPIN 2026
软件工程·软件开发
赫尔·普莱蒂科萨·帕塔2 天前
智能体工程
人工智能·机器人·软件工程·agi
雾江流2 天前
BiliPai 5.0.5 | B站开源第三方应用,纯净无广流畅
软件工程
JMchen1233 天前
AI编程与软件工程的学科融合:构建新一代智能驱动开发方法学
驱动开发·python·软件工程·ai编程