软件工程-UML

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

目录

例图

类图

状态图

顺序图

活动图


例图

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

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

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

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

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

类图

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

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

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

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

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

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

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

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

状态图

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

实心圆表示状态图的开始

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

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

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

启动状态称为目标状态。

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

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

顺序图

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

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

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

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

活动图

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

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

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

决策节点用空心菱形表示

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

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

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

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

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

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

按照角色进行分组-泳道

相关推荐
guslegend4 小时前
从需求分析到 Spec-Kit 落地:三种思维、施工方案与规格驱动开发
aigc·软件工程·需求分析·ai编程·spec-kit
llilian_165 小时前
失真度校准装置有哪些重点指标?失真度测量仪校准
功能测试·嵌入式硬件·51单片机·软件工程
谢亮_vipxieliang1 天前
软件工程的全景地图:从知识体系到技术栈
软件工程
ggb喔1 天前
52pojie 的桌面工具:为什么它们总在高分屏上模糊、资源管理器重启后失效
windows·python·网络安全·软件工程·个人开发·用户界面·用户体验
seconp2 天前
AI 时代怎么做计算机毕业设计?
人工智能·毕业设计·软件工程·课程设计·毕设
郝学胜-神的一滴2 天前
C++ Templates 07:编译报错和调试手段与实战技巧
开发语言·c++·后端·软件工程·visual studio
小南知更鸟2 天前
飞利浦KeyLink软件分享下载
软件工程
RockHopper20253 天前
AI时代模型生命周期与软件资产重构:概要版
人工智能·系统架构·软件工程·ai编程·世界模型
記億揺晃着的那天4 天前
【Agent 架构实战】大模型长期项目开发:决策文档生命周期管理与 CI 门禁治理
软件工程·devops·架构设计·ai agent·文档管理
rolt4 天前
智能机床-06 机械 ISO 23704-4-2026-用UML表示的行业标准
软件工程·产品经理·架构师·uml