【UML】开发常用图记录

挑了几个UML常用图,整理一下,方便自己查询

多半是应付设计师考试的,考试专用不喜可踩勿喷;

类图示例

 

类图示例

类图:
实现: 类实现接口 , [表现] implements
泛化: 类继承类 , [表现] extends
组合: 特殊的关联关系, 是整体与部分的关系, 部分与整体同生命周期, [表现] 成员变量
聚合: 特殊的关联关系, 是整体与部分的关系, 部分与整体不同生命周期, [表现] 成员变量关联: 一个类知道另一个类的行为(方法), [表现] 成员变量
依赖: 一个类的实现需要另一个类的协助, [表现] 局部变量、方法的参数或者对静态方法的调用

关系强弱:
泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖

示例说明:
1. 汽车和飞机实现交通工具接口
2. 引擎组合成汽车,车载收音机聚合成汽车
3. 出租车继承自汽车
4. 出租车与司机是多对多的双向关联关系,司机单向关联驾照(一个司机持有一个驾照)
5. 司机依赖车载WIFI
 

 

 

用例图示例

用例图:

参与者:外部参与者(用户/其他系统)

用例:功能

包含关系:一个用例包含另一个用例(不可或缺)

拓展关系:一个用例存在是为了拓展另一个用例(锦上添花)

继承关系:一个用例继承自一个用例

依赖关系:一个用例依赖另一个用例

 

--------------------------------------------静态图结束---------------------------------------------------

 

静态视图:  用例图  ,  部署图  ,  类图  ,  对象图

动态视图:  序列图  ,  协作图  ,  状态图  ,  活动图

--------------------------------------------动态图开始---------------------------------------------------

 

序列图示例

 

时序图:

对象: 类的实例

焦点: 对象操作的执行

同步消息(黑实心箭头):等待响应

异步消息(尖角箭头):无需等待响应

返回消息:操作响应

 

示例说明:

1.       用户向控制器发送一个同步登录消息(调用控制器的login方法)

2.       控制器先检查用户信息(查询DB或会话),成功匹配后向账户发送一个信息请求

3.       账户收到请求,返回一个账户信息,控制器返回给用户

4.       控制器给自己发送一个异步用户已登录消息(保存会话信息)

 

 

 

 

 

通信图示例

时序图和协作图可以相互转化!此图来自上述时序图;

 

 

 

状态图示例

 

状态图:

超状态:状态的父状态

事件:激发状态转换

动作:状态转换伴随的行为

监护条件:满足条件状态才可转换

 

示例说明:(假设是一台咖啡机)

1.       打开开关,开机灯亮,状态置为On::Ready

2.       按下制作按钮,判断监护条件:是否有水有咖啡粉,满足进入工作状态,工作灯亮

3.       制作完毕,就绪灯亮,状态转换为Ready

4.       按下关闭按钮,灯灭进入Off状态

 

 

 

活动图示例

 

活动图

和流程图类似,但又有所区别:

1.       活动图侧重对象活动顺序,表现系统行为; 流程图侧重控制结构,表现处理过程;

2.       活动图面向对象,流程图面向过程;

3.       活动图可以表示并发活动;

 

 

最后总结一下没画出的图:

 

对象图: 系统类的实例快照,图形元素同类图

部署图: 和物理相关的图,与构件图相关;

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值