第5讲包图与组成结构图
- 格式:ppt
- 大小:1.03 MB
- 文档页数:50
一个大型系统中往往包含了数量庞大的模型元素,如何组织管理这些元素是一个十分重要的问题。
包是一种常规用途的有效的组合机制。
包类似于文件系统中的文件夹或者是目录结构,它是一个容器,用来对模型元素进行分组,并且为这些元素提供一个命名空间。
UML中的一个包直接对应于Java中的一个包。
在Java中,一个包可能含有其他包、类或者同时含有这两者。
进行建模时,通常使用逻辑性的包,用于对模型进行组织。
而包图是由包和包之间的联系组成的,它是维护和控制系统总体结构的重要建模工具。
本章将详细介绍包图的各种概念、表示方法和实例应用。
1.包图的概念1.1包图和包当对大型系统进行建模时,经常需要处理大量的类、借口、构件、节点和图,这时就很有必要将这些元素进行分组,即把那些语义相近并倾向于一起变化的元素组织起来加入同一包中,这样便于理解和处理整个模型。
同时也便于控制包中元素的可见性。
包图是描述包及其关系的图。
与所有UML的其它图一样,包图可以包括注释、约束。
通过各个包与包之间关系的描述,展现出系统的模块与模块之间的关系。
图1是一个包图模型。
包是包图中最重要的概念,它包含了一组模型的元素和图,如图1中的Package A和Package B就是两个包。
Package BPackage A在面向对象软件开发的过程中,类显然是构建整个系统的基本元素。
但是对于大型的软件系统而言,其包含的类将是成百上千,再加上类间的关联关系、多重性等,必然是大大超出了人们对系统的理解和处理能力。
为了便于管理这些类,我们引入了“包”这种分组元素。
在包中可以拥有各种其它元素,包括类、接口、构件、节点、协作、用例,甚至是其它子包或图。
一个元素只能属于一个包。
包的作用是:1)对语义上相关的元素进行分组。
如,把功能相关的用例放在一个包中。
2)提供配置管理单元。
如,以包为单位,对软件进行安装和配置。
3)在设计时,提供并行工作的单元。
如,在设计阶段,多个设计小组,可以同时对几个相互独立包中的类进行详细设计。