UML(统一建模语言,Unified
Modeling Language)是一种建模语言,是第三代用来为面向对象系统的产品进行说明、可视化和编制文档的方法。
首先说明本人所介绍的uml是从软件行业的角度说的。
一个人通常只能说出心中所想的80%,但对方听到的最多只能是60%,听懂的却只有40%,结果执行时,只有20%了。你心中的想法也许很完美,但下属执行起来却差之千里,这是由"沟通的漏斗"造成的,克服这一"漏斗"现象,那么交往的效率和质量会高很多。
标准建模语言UML的主要任务就是让沟通更简明,正所谓有图有真像。UNL的重要内容可以由下列五类视图(共9种图形)来定义:
1. 用例(Use Case)图:对系统的使用方式(或功能)分类
2. 类(Class)图:显示类及其类之间的相互关系
3. 对象(Object)图:显示对象及其对象之间的相互关系
4. 活动(Action)图:显示人或对象的活动,类似流程图
5. 状态(Station)图:显示生命周期比较复杂对象的各种状态
6. 协作(Collaboration)图:显示在某种情形下对象之间发送的消息
7. 时序(Sequence)图:与协作类似,强调顺序
8. 部署(Deploy)图:显示安装已完成系统的机器、过程和部署软件
9. 组件(Component)图:显示可重用的组件(对象或子系统)及其接口
第一类 用例视图(Use case View)
强调从用户角度描述看到的或需要的系统功能,并指出各功能的操作者。 包括用例图,用来描述系统功能。
第二类 静态视图(Static View)
展现系统的静态或结构组成及特征,包括类图、对象图。
类图(Class Diagram)描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作)。类图是以类为中心来组织的,类图中的其他元素或属于某个类或与类相关联
对象图(Object Diagram)是类图的实例,几乎使用与类图完全相同的标识。不同点在于对象图显示类的多个对象实例,而不是实际的类。
第三类是行为视图(Behavior View)
描述系统的动态模型和组成对象间的交互关系。包括状态图和活动图。
状态图是对类描述的补充,它用于显示类的对象可能具备的所有状态,以及引起状态改变的事件。实际建模时,并不需要为所有的类都绘制状态图,仅对那些具有多个明确状态并且这些状态会影响和改变其行为的类才有绘制状态图的必要。此外,还可以为系统绘制整体状态图。
活动图(Activity Diagram)是状态图的一个变体,用来描述执行算法的工作流程中涉及的活动。活动状态代表了一个活动,即一个工作流步骤或一个操作的执行。活动图由多个动作状态组成,当一个动作完成后,动作状态将会改变,转换为一个新的状态。活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动。
第四类是交互图(Interactive View)
描述对象间的交互关系。包括顺序图和协作图。
顺序图(Sequence Diagram)显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互;顺序图的一个用途是用来表示用例中的行为顺序。当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或引起状态转换的触发事件
。
协作图(Collaboration Diagram)描述对象间的协作关系,协作图跟顺序图相似,显示对象间的动态合作关系。除显示信息交换外,协作图还显示对象以及它们之间的关系。
第五类是部署视图(Interactive View)
构件图(Component Diagram)为系统的构件建模型—构件即构造应用的软件单元—还包括各构件之间的依赖关系,以便通过这些依赖关系来估计对系统构件的修改给系统可能带来的影响
。
部署图(Deplayment Diagram)描述位于节点实例上的运行构件实例的安排。节点是一组运行资源,如计算机、设备或存储器。这个视图允许评估分配结果和资源分配。
|