UML—对象图、包图

一.对象图

1.对象图是什么

       在UML中,对象图表示在某一时刻一组对象及它们之间关系的图,对象图可以被看作是类图在系统某一时刻的实例。

2.对象图长什么样子

       在图形上,对象图由节点以及连接这些节点的连线组成,节点可以是对象也可以是类,连线表示对象间的关系,对象图模型如下:

       上图描述了一个公司的部门分组情况,c是类Company的对象,这个对象与d1,d2,d3连接,d1,d2,d3,d4都是类Department的对象,它们具有不同的属性值,d1和d4连接,d4是d1的一个实例。

3.机房收费管理系统对象图

       由于对象图是反映的某一时刻的类图实例,所以我挑选了一个时刻来画机房收费管理系统对象图,这个时刻就是一为名叫小红的一般用户正在查询她的上机记录,所以她在访问数据库中的online_info表,一位名叫小绿的操作员正在修改用户信息,所以他正在访问数据库中的student_info表,此时还有一位名叫小蓝的管理员,她正在结账,并且在访问数据库中的check_info表。

二.包图

1.包图是什么

       包图是维护和控制系统总体结构的重要建模工具,由包和包之间的关系构成。

2.包图元素—包

       包是对模型元素进行分组的机制,它把模型元素划分成若干个子集,包可以拥有UML中的其他元素,包括类、接口、组件、节点、协作、用例和图,包甚至还可以包含其他包。

3.包图元素—关系

       在包之间可以有两种关系:

           1)引入和访问依赖

                用于在一个包中引入另一个包输出的元素

           2)泛化

                用于说明包的家族

4.包图标准元素

       UML的扩充机制同样适用于包,可以使用标记值来增加包的新特性,用构造型来描述包的新种类,UML定义了5种构造型来为其扩充标准,分别是虚包、框架、桩、子系统和系统。它们分别的用途如下表所示:

构造型用途
虚包(facade)描述一个只引用其他包内元素的包
框架(framework)描述一个主要由模式组成的包
桩(stub)描述一个作为另一个包的公共内容代理的包
子系统(subsystem)描述正在建模中的整个系统的独立部分的包
系统(system)描述正在建模中的整个系统的包

5.机房收费系统包图

       在System Service中主要包含系统为服务用户提供的用例和类等,如查询各种信息等,在System Form中主要包含了操作界面和窗体相关的用例,在System Database中主要包含了和数据库操作有关的用例和类等信息。