UML用户指南--UML图简介
本节和大家一起学习一下UML图,这里主要介绍UML结构图和UML行为图两部分,下面让我们一起看一下UML图的详细介绍吧。
UML图
这里再次提到对软件体系结构进行可视化、详述、构造和文档化,有5种最重要的互补视图:用况视图(usecaseview)、设计视图(designview)、进程视图(processview)、实现视图(implementationview)、实施视图(deploymentview)。每一种视图都包含结构建模(对静态事物建模)和行为建模(对动态事物建模)。
UML中包含9种图,这在第二章已经介绍过。可以将这9种图分为两类,一类用于结构建模,称为结构图;一类用于行为建模,称为行为图。
①结构图
结构图有4种,分别是:
⑴类图(classdiagram)
类图显示一组类、接口、协作以及它们之间的关系。类图可用于说明系统的静态设计视图。包含主动类的类图可用于说明系统的静态进程视图。
⑵对象图(objectdiagram)
UML图中对象图显示一组对象以及他们之间的关系。对象图是类图中发现的事物的实例的数据结构和静态快照。对象图也可用于说明系统的静态设计视图和静态的进程视图,但它是从现实或原型的方面来透视的(因为是类的实例)。
⑶构件图(componentdiagram)
UML图中构件图显示了一组构件以及他们之间的关系。构件图可用于说明系统的静态实现视图。
⑷实施图(deploymentdiagram)
UML图中实施图显示了一组节点以及他们之间的关系。实施图可用于说明系统的静态实施视图。
这4种图还有一些常见的变体,例如子系统图实际就是一个类图。
②行为图
行为图有5种,分别是:
⑴用况图(usecasediagram)
UML图中用况图用于组织系统的行为,描述了一组用况和参与者以及他们之间的关系。用况图用于描述系统的静态用况视图。
⑵顺序图(sequencediagram)和协作图(collaborationdiagram)
UML图中顺序图和协作图在语义上是等价的,它们可以互相转换。顺序图和协作图又被统称为交互图(interactiondiagram)。它们显示了一组对象和由这组对象发送和接收的消息。顺序图强调消息的时间次序,协作图强调发消息的对象的结构组织。
⑶状态图(statechartdiagram)和活动图(activitydiagram)
UML图中状态图和活动图在语义上是等价的,它们可以互相转换。状态图显示了一个由状态、转换、事件和活动组成的状态机,它强调一个对象按事件次序发生的行为,通常状态图用于对接口、类或协作的行为建模。活动图显示了系统从活动到活动的流,它强调对象之间的控制流,通常活动图用于对系统的功能建模。
对于一个系统而言,前面提到的5种视图并非必须的,可以根据系统的需要进行裁剪或补充。
最新文章
- linux 服务的操作
- Django 的开始之路
- ZOJ2588 Burning Bridges(割边模板)
- Android实现SQLite数据库联系人列表
- javascript禁用与启用select标签(实用版)
- 学习第一个头文件stdio.h
- hdu 1208 Pascal's Travels
- BZOJ 1062 糖果雨
- CSS备忘-1
- Linux: service network/Network/NetworkManager
- 不可不知的HTML优化技巧
- Assets.xcassets误删后的恢复
- 设 $y_1(x), y_2(x)$ 是 $y''+p(x)y'+q(x)y=0$ 的两个解 ($p(x), q(x)$ 连续), 且 $y_1(x_0)=y_2(x_0)=0$, $y_1(x)\not\equiv 0$. 试证: $y_1(x)$, $y_2(x)$ 线性相关.
- 使用JavaScript实现单向链表
- 接口自动化测试 (三)request.post
- finecms如何控制调用子栏目的数量
- The zero inflated negative binomial distribution
- 使用Redis数据库(1)(三十三)
- Vue.js学习使用心得(一)
- SQL Server窗口框架——ROWS、RANGE
热门文章
- C#解决微信支付Exception has been thrown by the target of an invocation(调用的目标发生了异常)的问题
- 数据结果与算法分析(1)——算法分析
- 【转】Split strings the right way – or the next best way
- <;item name=";android:windowNoTitle";>;true<;/item>; 不起作用。标题栏未被隐藏
- 深入理解计算机系统第二版习题解答CSAPP 2.16
- [引]LINQ to XML 类概述
- C#总结3
- PHP中foreach循环详解
- ###STL学习--适配器
- java集合_collection 中的方法 通过Arraylist来体现