用例图、类图与时序图的关系

类图和时序图是在软件系统设计中直接和程序代码相关联的图,准确地说,程序代码是由类图直接产生,而时序图可以定义类图的方法。用例图用来描述系统功能,和类图与时序图没有直接关系。

    类图在UML中由三个部分组成,如下图所示,分别表示类的名字、类的属性、类的方法。图片

在定义一个类时可需要给出类的名字、属性和方法,其中方法也可以在时序图中定义,在方法中定义了一个消息,则会在相应类图中自动增加一个方法,但在修改或删除时序图中已经定义的消息时,相应类图中的方法不会自动修改、删除。

例如; 学生注册的业务可以用以下的类图和时序图来描述。

1、用例图
 图片

2、类图
图片

Register类有一个方法inputStudents(),Student类有两个方法addNewStudent()和modifyRegisterDate(),每个方法都和时序图的消息相对应。
 

3、时序图
图片

消息传递箭头指向对象的类会自动生成一个相同的方法,Register有一个箭头指向它,则再Register类图中自动生成一个inputStudents()方法,Student有两个箭头指向它,则在Student类中自动生成modifyRegisterDate()和addNewStudent()方法。

综上所述,三个图可以有以下一些经验的归纳:

1、  用例图的每一个用例(这里是指系统用例而非业务用例)应有一张时序图来表述;

2、  时序图要将所有类图中类的连线表示出来,如做得好,每一个连线用一个时序图表述;

3、  时序图中的每一个消息,要和类图中各个类的方法一一对应。

    要做好以上三条,做到三个图中用例、类和时序的完美对应,就要看各人的水平和经验了。

原文地址:https://www.cnblogs.com/chenlong-50954265/p/3924137.html