一、UML图包括的图的种类
静态图:
类图:表述类的信息,和类之间的关系
用例图:站在系统用户(系统角色)的角度分析系统存在哪些功能。
动态图:
时序图:描述程序的执行过程、调用过程、返回值等信息。
状态图
协作图
活动图
二、类图
1、在Logical View目录下实现类图,创建多个目录组织类图,因为可能有多个类.
在该目录下创建新画布:
点此可以创建新类:
双击可以修改类,如下图(增添方法、属性等):
当然,也可以直接在类图上进行操作,进行相应增删改,如下(<<>>内的是注释,后面的是变量名,:后是变量类型):
2、泛化(继承)关系
强调类和类、接口和接口之间的关系
3、实现关系
4、关联关系
含义是程序员拥有电脑,被指向的(Computer)是Role A,指向他人的(Programmer)是Role B。这实际上说明,在Programmer的类中,有一个Computer类的成员变量,变量名是CodingTool.
5、聚合关系(可以简单理解为ClassRoom中可以有多个Student)
描述整体和局部的关系(属于关联关系)
将Role A的navigable去掉,Role B中的aggregate标上,这样两者就形成了聚合关系。
6、组合关系
是一种特殊的聚合关系。但是学生可以离开教室,作为独立的实体,但是肢体不能离开人。
在刚才的基础上,将Role B的by value勾选上,使箭头成为实心即可。
7、依赖关系
注意和关联关系区分,关联关系是指B有A类型的成员变量,而依赖关系仅仅是B的函数中有A类型的变量,函数使用完就释放了。
三、用例图
站在系统用户(角色)的角度,分析系统的功能,实现用例图的功能时,要先抽取系统角色。
四、时序图
描述了方法的调用过程,返回结果等。用例图中的一个用例对应一个时序图。
时序图是放在Logical View中,可以使用该View下的控制器等Package放在时序图中。
实线代表了调用关系。
右键点击new operation,就可以在对应Controller类中新建这个方法。
实现是调用;
虚线是返回;
回折线是当前类调用当前类的方法。
原则:
1、箭头指向谁,就是谁的方法
2、箭头从谁指出,就是谁调用了该方法