前言:
经过对UML图的修正,对UML的九大图有了进一步的认识,以下是我新的认识,以及对机房收费系统画的UML图。
内容:
1、用例图
用例图中有俩种比较特殊的关系,包含关系和扩展信息。 包含关系表示是那个用例是必须要有的(比如学生上机状态查看中的选中学生下机和全部学生下机,你要运行学生上机状态查看这个功能,就必须运行选中学生下机或全部学生下机)。 扩展关系表示的那个用例是可有可无的(比如在学生记录查询中的导出Excel,运行的时候是可以选择导出,也可以选择不导出)。 还有一点很重要,extend的指向与include是相反的。include是指向扩展用例,而extend是由扩展例指向基例。
2、类图
这幅图操作员和管理员继承了俩个父类,这是可以的,但是有的语言是不支持的,就像C#是支持的,而Java是不支持的。
3、序列图
学生与数据库之间是通过系统传递消息的,互相看不到,所以不能直接接受对方的消息。例如上机成功的消息不能直接从数据库到学生,而是数据库返回给系统,系统返回给学生。
4、协作图
协作图可以由序列图转化而来,按F5就可以了。
5、活动图
活动图是描述系统在执行某一用例时的具体步骤,主要表现的是系统的动作。
6、状态图
状态图是描述某一对象的状态转化的,它主要表现的是该对象的状态。
7、构件图
构件图的单个组成部分可以是一个文件,产品、可执行文件和脚本等。
8、配置图
数据库、服务器与客户端(主机)的关系:
我们在做机房时,用自己的电脑做,数据库也在自己的电脑上,也是用自己的电脑使用做好的系统,所有可能对数据库、服务器和客户端的理解有些模糊。其实服务器是开发者开发这个系统的电脑,数据库也可以在这个电脑上,但由于数据库比较庞大,不能让所有主机访问服务器,服务器会承受不了,,所以要将数据库独立出去。系统发布后,别人电脑安装了这个系统,那么这个电脑就是客户端(主机)。对于一些设备(如打印机、刷卡机),这是与主机有关的,与服务器无关。
9、对象图
对象图与类图类似,是类图的实例。就比如有一个学生类,某一个学生(z张三)则是这个类的一个对象。
总结
通过画UML图对机房收费系统有了进一步的认识,有一种对系统总布局及轮廓大概有一个了解,更加认识到系统中运作,及各个联系。UML中的九个图都有其自己的功能,互相间也有联系,画每一个图都要先想想这个图应该包含什么成分,都应该有什么关系,其次站在系统的角度分析,最后以画图来描述系统。