【UML学习】九种图分析
来源:互联网 发布:淘宝双11外围报名条件 编辑:程序博客网 时间:2024/06/06 12:39
图是UML基本构成中最重要的一块,是可视化建模的核心体现。对于九种图的学习,自我感觉,最重要的是明白每种图的侧重表达点,从而达到从不同的角度分析事件的目的。
UML图按照描述对象性质的不同可分为:
静态建模机制:类图、对象图
动态建模机制:用例图、交互图(协作图、顺序图)、行为图(活动图、状态图)
面向对象机制:实现图(构件图、部署图)
下面总结一下我学习这九种图的收获和体会。
1.用例图
主要是描述用户需求(功能、角色)
三要素:用例(关系描述)、角色(相关人员)、关系(执行者与用例关系)
2.类图
定义:是将系统中类和类之间的关系用图形的形式表现出来,直观、规范。
如上思维导图,我们在画类图的时候应该包括以上几点,当然需要特别注意的是:关系当中对于关联分 类——组合和聚合的区分。
二者都可表示整体/部分之间的关系。不同之处在于聚合的联系性相对弱(即:丢掉其中某一部分,对整体影响不大)而组合的联系性相比更强。比如说,轿车由发动机、车轮、外壳等组成。对于汽车制造厂商来说,这几个类可以单独存在,因此属于聚合关系;但是,对于汽车销售厂商来说,这几个类缺一不可,因此属于组合关系。
此外,对于类图还应该注意其可见性(public、private、protect)约束。
下面是我最近画的类图,刚开始画,总觉得有点迷茫,哪里不对,还望大家批评指正!
3.对象图:类图的变体,使用与类图相类似的符号描述。不同之处在于对象图显示的是类的多个对象实例而非实际的类。简单来说,对象图是类图的实例化。
需要包含的要素:对象、连接、包
4.活动图:描述执行流程,由多个动作组成。一个动作的完成预示着另一个动作的开始,串联成一个流动的整体。
注记组件:活动、状态、转移
分区工具:泳道(用来区分负责活动的对象)
下面以用户登录为例:
5.状态图
是对对象可能出现的状态及引起状态变化的事件的描述。(与活动图类似)
三要素:对象、状态、事件
标记符:状态、转移、决策点、同步
下面以注册卡为例:
6.组件图:从软件构架的角度来描述一个系统的主要功能(物理实现),是系统中实际存在的可更换部分,它实现特定的功能,符合一套接口标准并实现一组接口
三要素:组件、接口、依赖关系。
类型:源代码构件、二进制构件、可执行构件、数据文件或文档
下面是组件图对机房收费系统进行描述。
7.部署图:显示系统的软硬件结构。
两要素:节点(硬件设备)、关联关系。
下面是利用部署图对机房收费系统进行描述。
8.协作图(Communication Diagram)
作用:用于描述消息的交互及对象间关系。
三要素:对象、链、消息
以机房收费系统注册学生卡为例
9.顺序图(时序图):按时间顺序对系统活动进行描述。
构成要素:对象、状态、时间、状态线、事件与消息
下面用顺序图描述一下机房收费系统中一般用户工作状况。
小结:“一张图胜过千言万语”,图画好了,才能更好的指导实践工作,画图是个技术活,当然图的质量也就不言而喻啦。
0 0
- 【UML学习】九种图分析
- UML之九种图分析
- Star UML 九种图 分析
- UML:九种图的学习
- 【UML学习】九种图的初识
- UML学习-------UML简介
- UML学习-------UML概述
- uml学习--uml结构
- uml学习--uml结构
- 【UML学习】UML概述
- 【UML学习】--绘制图的要点和实例分析
- UML 小结(6)- UML九种图的比较与学习
- 学习UML
- UML学习
- 学习 UML
- uml学习
- UML 学习
- 学习UML
- 开源硬件+软件开发平台Arduino体验总结
- android常见问题
- 趣聊-匈牙利算法
- linux常用命令加实例大全
- Codeforces Round#478--Random Teams
- 【UML学习】九种图分析
- Stripies - POJ 1862 水题
- js闭包理解
- C++Primer + 12章
- JavaScript总结--创建对象
- 职业程序员的克制与放纵
- C++ delete指针依然可访问问题
- 线程
- poj2528(线段树离散染色)