目录
一、类图
类图是静态图。它代表应用程序的静态视图。类图不仅用于可视化,描述和记录系统的不同方面,而且用于创建软件应用程序的可执行代码。
类注释:分别表示类名,属性,方法,附加组件;对象表示法相比于类,唯一区别在于类名下加了下划线。
如何绘制一个类视图:类图的名称应该是有意义的,每个要素及其关系应当事先识别,应当明确每一个类的职责(属性和方法),对于每个类,应制定最小数量的属性。定义一个系统框架,需要定义接口、各种类,然后相互关联。
类示例:
首先,订单和客户被确定为系统的两个要素。他们有一对多的关系,因为客户可以有多个订单。Order类是一个抽象类,它有两个具体的类(继承关系)SpecialOrder和NormalOrder。两个继承的类都有所有的属性作为Order类。此外,它们还具有其他功能,如dispatch()和receive()
活动类通常用于描述系统的并发行为。
二、对象图
对象图可以被设想为特定时刻运行系统的快照(正在运行的特定状态),用于制作一个系统的prototype;逆向工程;建模复杂的数据结构;从实践角度理解系统。
对象图(object diagram)表示在某一时间点上一组对象以及它们之间的关系的图。在图形上,对象图是顶点和弧的集合。对象图一般包括:对象和链。对象图可包含注解和约束。有时也要把类放在对象图中,特别是要把各实例背后的类可视化。
三、组件图
UML组件图主要是明确系统设计;显示组件之间的依赖关系,以及组件的接口和调用关系;
组件符号用于表示制作UML图的系统任何部分,可以随时添加附加元素。它是系统设计的一个模块化部分,隐藏了内部实现,对外提供一组接口。
组件图包含构件(Component)+接口(Interface)+关系(Relationship)+端口(Port)+连接器(Connector)。
对于接口而言,有两类接口,提供接口和需求接口
提供接口:组件提供出去工组件使用调用的接口,Customer
需求接口:组件需要外部提供的接口, Order
组件之间的关系包括依赖关系和泛化关系。依赖关系分为两种,一种是组件与需求接口之间建立依赖关系;另一种组件与组件之间建立依赖关系。泛化关系是组件与提供接口之间建立实现关系。
端口是表明组件对外提供接口的交互点,和网络中的端口概念相似。
连接器表示两个组件之间可以相互通讯表达方式。连接器是小正方块。
搜索引擎的组件图示例,前端的搜索框、后端提供了搜索服务和搜索内容的保存服务
参考: