UML绘图要点

注明:整理自学习礼包,非彻底原创,原做没法考查。架构

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------并发

1、用例图(Use casedom

       参与者,经过使用系统服务实现其目标的那些人或者事物异步

  


    用例,外部可见的系统功能,对系统提供的服务进行描述。用椭圆表示。用例是动词或者动名词。能够从每个界面的主要功能来析取用例。学习

  


    关系:spa

    用例图中涉及的关系有:关联、泛化、包含、扩展。设计

    以下表所示:对象

关系继承

涉及对象接口

符号

箭头方向

关联

参与者与用例

无箭头

泛化

参与者与参与者

用例与用例

指向父用例或者父参与者

包含

用例与用例

指向分解出来的功能

扩展

用例与用例

箭头指向基础用例

 

泛化


包含


扩展


注意:用例的词性(动名词),关联是实线无箭头


2、活动图(Activity

每个用例有一个活动图,活动图尽可能简单

开始节点: (只有一个)

结束节点: (能够有多个)

同步条: (必须成对出现),表示并行执行 

选择/合并: (须要写明分支的判断条件)

活动: (圆边矩形,必须与状态图进行区分,动名词,能够从一个用例的执行流程中分析出动词)

注意:同步条必须成对出现,断定需列明条件,活动的框必定是圆边矩形


3、状态图(statement

每个用例有一个状态图,显示一个对象从建立到消亡的整个生命周期

状态:表示对象具备的一个情况,条件(名词或者说不是动名词格式)

转移:事件名 [监护条件]/动做名(若是前面出现“/”,说明是系统的动做,不加是使用者进行的操做)

开始/结束状态:

注意:状态是圆角矩形,状态不能是一个动做(动名词格式),而是一个情况(名词或者名词+动词的格式)必需要有状态发生变化的条件


4、领域模型(domain model

一组没有定义操做(方法的特征标记)的类图,也称为概念类图

步骤:(1)寻找概念类

概念类:思想,事物或对象(也就是说找名词

描述类:描述其余事物的信息,如FlightAirport之间最好添加一个FlightDescription这个描述类。

2)将其绘制为UML类图的类

3)添加关联和属性

关联:名称须要首字母大写,通常以类名-动词短语-类名的格式来命名。但在领域模型中,避免加入太多关联,是否须要记录关联,要基于现实世界的须要,就是那些“须要记住”的关联关系。

多重性:类A有多少个实例能够和类B的一个实例关联

  0或更多

1或更多

1~40


属性:对象的逻辑数据值。当需求(用例)建议或暗示须要记住信息时,引入属性

(能够只有属性名称,不须要类型,可见性)

注意:一般不超过10个概念类,至少有一个描述类,不能出现XX列表 


5、系统顺序图(SSD

对于用例的一个特定场景(通常是一个用例),外部参与者产生的事件,其顺序和系统之类的事件。该图强调的是从参与者到系统的跨越系统边界的事件。

也就是说系统被视为黑盒

参与者:须要加‘:’和下划线

系统:

循环:

注意:对象必须有“:”和下划线,消息须要有编号,而且消息为动做,必需要有控制焦点,不超过5个消息,尽量简单


6、包图

MVC架构 view【也就是UI,边界类】model【实体类,从领域模型中选取】 control【控制类】)

依赖: 箭头指向被依赖的包(包的图都是虚线)

层:

类,用例等:

嵌入包:

注意:包与包之间必定是虚线


7、顺序图

在时间上对象交互的安排

角色(Actor)系统角色,能够是人、及其甚至其余的系统或者子系统。

对象: (名称前面要加“:”,还有下划线)(对象通常是前面包图说起的与用例相关的边界类,控制类,实体类)

生命线: 表示对象存在的时间

控制焦点: 表示对象执行一个动做的期间 (也能够不用这个)

消息: (消息须要有序号,且消息为动做)

同步消息:消息的发送者把控制传递给消息的接收者,而后中止活动,等待消息的接收者放弃或者返回控制。用来表示同步的意义。

异步消息:消息发送者经过消息把信号传递给消息的接收者,而后继续本身的活动,不等待接受者返回消息或者控制。异步消息的接收者和发送者是并发工做的。

自调用信息:表示方法的自身调用以及一个对象内的一个方法调用另一个方法。

注意:对象必须有“:”和下划线,消息须要有编号,而且消息为动做,必需要有控制焦点,对象来源于包图


8、设计类图

类:

(和顺序图对应,分为实体类(领域模型的类),边界类(界面),控制类)


关系

表示关系

符号

箭头方向

关联

对象之间具备永久关系

能够用箭头表示关联的方向。没有箭头表示双向关联

多重性

多重性:类A有多少个实例能够和类B的一个实例关联

无箭头

依赖

表示一个类依赖于另外一个类的定义,其中一个类的变化将影响另一个类(use

指向被依赖的类

泛化

类与类的继承关系。子类继承超类的全部特(属性、操做、关系),并具备独自的特性

场景:父与子、植物与树等

指向父用例或者父参与者

实现

类与接口的实现关系

指向接口

聚合

当某一个类成为另外一类的一部分时,可以使用汇集的关系,表示类之间的关系是总体与部分的关系(has

部分指向总体

组合

对象A包含对象B,对象B离开对象A没有实际意义。是一种更强的关联关系。人包含手,手离开人的躯体就失去了它应有的做用。(contain

部分指向总体

组合>聚合>关联>依赖

注意:类名须要和领域模型,顺序图的同样;每一个类至少1属性,1操做;

注意继承,聚合这些关系,实线和虚线的区别,类之间的关联关系是几对几的关系;重要的是与前面的图保持一致性

 

 

9、部署图

(整个系统就一个)可经过修改这个基础模型来作

注意点:节点之间没有箭头,节点是软件仍是物理设备须要标记,须要写清链接的介质(如网线那些),协议(HTTP等)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

------------------------------------------------------------------------------------------------------------------------------------------------

相关文章
相关标签/搜索