UML_note

UML_note

Charles Lv7

本知识点总结修改改编自uml笔记,主要对OO第四单元UML用到的三种图展开了简单介绍。

类图

类图定义

若干类关联在一起,反映系统或者子系统组成结构的静态图。

类图作用

描述软件系统中各个类的结构和类之间的关系。

类图组成元素

一个矩形,内含类名(Name)、属性(Attribute)、操作(Operation)。
(1)类名:首字母大写;由多个字母组成时需要合并,第二个单词首字母大写
(2)属性:语法为[可见性] 属性名称 [:属性类型] [=初始值] [{特征}],其中可见性包括公有类型(+)(public)、受保护类型(#)(protected)、私有类型(-)(private),单字属性名小写;多个单词,除第一个单词外其余单词首字母要大写
(3)操作:语法为[可见性] 操作名称 [(参数表)] [:返回类型] [{特征}]

类图间关系

(1)泛化(is a kind of):一般描述的类被称为父类,具体描述的类被称为子类。子类除继承父类的属性和操作外,也增加自己的属性和操作。

(2)实现(realization):接口(interface)描述一系列方法,被建模为实现关系。实现关系使用一条带封闭空箭头的虚线表示;接口用圆圈表示,通过一条实现附在表示类的矩形上来表示实现关系。

(3)依赖(Dependency):指明一个类使用另一个类的方法或一个类使用其它类所定义的属性和方法,强调类发生改变引起其他类相应变化,使用虚线箭头表示。

(4)关联(Association):表示一个对象拥有另一个对象,用实心三角形箭头表示,特性包含关联名称、角色、多重性、导航性、约束、特殊关联。

(5)组合:表示整体与部分关系,部分与整体具有相同生命周期,用实心菱形头实现表示,头部指向整体。

(6)聚合(aggregation):一个类由几个部分类组成,部分可以独立于整体而存在,用空菱形线段表示,头部指向整体。

附一张StarUML上各种关系的标记图,便于读者区分——

test

顺序图

动态分析

(1)任务:对对象群体行为建模,表达对象间动作协作关系,描述用例行为实现,显示用例实现/类操作涉及的对象和对象间的消息传递情况。
(2)概述:动态分析模型描述系统的动态行为,主要建立系统的交互图(序列图、协作图)和行为图(状态图、活动图)。

顺序图定义

描述以时间顺序组织的对象之间的交互活动。

顺序图作用

主要针对特定交互期间的消息流。

顺序图组成元素

(1)对象:参与交互的基本单位,可在交互中创建或删除。

(2)生命线:表示一个对象在一段时间内存在。

(3)激活:表示一个对象执行一个动作所经历的时间段,对象接收到消息活动就开始。

(4)消息:一条消息是一次对象间的通信。

消息类型

(1)调用(同步)消息:发送者请求接收者对象执行其某种操作,意味着阻塞和等待。

(2)异步消息:消息发送后,发送者继续操作,不等待,用于并发,意味着非阻塞。

(3)返回消息:消息的返回。

状态图

状态图定义

描述一个特定对象的全部能够存在的状态,还可以描述引起状态转移的事件。

状态图组成元素

(1)初始状态。
(2)终止状态。
(3)状态:由一个带圆角的矩形表示,包含名称、入口和出口动作、内部转换。

(4)转换:两个不同状态之间的一种关系,包含源状态、触发事件、监护事件、动作和目标状态。

(5)判定:包含一个转入和两个转出。

(6)同步:说明并发工作流的分支与汇合,用一条线段表示。

(7)并发分支:把一个单独的工作流分成两个或多个工作流,几个分支的工作流并行进行。

(8)并发汇合:两个或多个并发的工作流在此得到同步。

  • Title: UML_note
  • Author: Charles
  • Created at : 2023-06-11 22:23:45
  • Updated at : 2023-06-17 14:13:59
  • Link: https://charles2530.github.io/2023/06/11/uml-note/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments