UML模型组织包和包图
Posted 系斯模科技
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UML模型组织包和包图相关的知识,希望对你有一定的参考价值。
J.D. Baker,Sparx
UML中的包元素由文件夹图标表示,这与文件系统图形用户界面(GUI)中的目录类似,这绝非巧合。
包用于组织模型的元素,就像文件夹用于组织文件一样。包的内容是作为模型一部分的任何类型的元素,包括其他包。除此之外,没有更多关于如何在UML规范中使用包的信息。因为它们是一种通用的分组方式,所以应该由使用场景来建议使用包的最佳实践是什么。有一些实践适用于大多数情况,更多的实践取决于建模方法或模型的目的。
首先,不管模型的用途是什么,都要使用包来组织模型。如果没有某种组织,即使是最简单的模型也很快变得难以管理。
组织模型没有单一的正确方法。建模者可以选择围绕过程或产品进行组织,也可以选择两者的组合。第二,使用包图提供组织的可视化。下面的“模型浏览器”视图说明了即使是简单的模型也会因为没有模型元素的组织而开始混淆。
除了能够将类似的项目聚集在一起,使建模人员能够将注意力集中在相关的元素上,并使这些元素更容易在浏览器中找到之外,包还为它们所包含的元素提供了一个名称空间。名称空间允许建模者为模型中的每个元素创建明确的命名引用。这在一些情况下非常有用,例如建模人员正在开发系统并创建一个现有和未来的系统模型。每个模型中的元素名称相同是很自然的。为了消除同名元素的歧义,可以将它们放在不同的包中,这样完全限定名就不同了。
包可以放在UML包图上。建模者可以选择这样做,以呈现模型的高级视图或显示元素包之间的关系。这里给出了三个不同的包图,它们表示上面所示的模型组织。每个图都使用可选的图框架,显示图类型(pkg)和图名称(用例视图)。注意,尽管图和包具有相同的名称(Use Case View).),但这不是必需的。在下图中,显示了两个高级包。与许多其他建模情况一样,只提供了我们需要的细节,而忽略了包内容的细节。
在下图中,显示了Actors包中包含的包。Human和Non-Human包上的标签描述了包含包的名称空间。包含关系还用于描述名称空间。在这个示例中,Actor operator的完全限定名是usecase View::Actors::Human::Operator
在下图中,包的内容显示为嵌入在包元素中。这个表示是UML规范中的第三个表示选项。
包图很可能是这些风格的组合,组织原则的选择也是如此。选择适合其预期用途的。
以上是关于UML模型组织包和包图的主要内容,如果未能解决你的问题,请参考以下文章
UML实践详细经典教程----用例图顺序图状态图类图包图协作图