该篇文章是UML知识的扩充。
什么是轮廓图
源文链接:https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-profile-diagram/
作为一种通用建模语言,UML
为各种需求提供了稳定的基础。它没有为特定的应用领域或任何特定的技术定义。然而,在某些情况下,UML
过于笼统,使用它需要付出相当大的努力。在这种情况下,使用针对给定领域优化的语言并因此提供特殊概念是有利的。
轮廓图是统一建模语言(UML
)中的一种结构图,它提供了一种通用扩展机制,用于为特定领域和平台定制UML
模型。扩展机制允许以严格附加的方式细化标准语义,防止它们与标准语义相矛盾。配置文件是使用构造型、标签值定义和应用于特定模型元素(如类、属性、操作和活动)的约束来定义的。Proflie
是这样的扩展集合,它们共同为特定领域(例如:航空航天、医疗保健、金融)或平台(J2EE、.NET)定制UML。
一、轮廓图的基本概念
轮廓图基本上是一种可扩展性机制,它允许您通过添加新构建块、创建新属性和指定新语义来扩展和自定义UML
,以使语言适合您的特定问题域。
轮廓图具有三种类型的扩展机制:
- 构造型
- 标签值
- 约束
构造型
构造型允许您增加UML
的词汇量。您可以添加、创建新模型元素,这些元素源自现有元素,但具有适合您的问题域的特定属性。构造型用于引入新的构建块,这些构建块使用您的领域语言并且看起来很原始。它允许您引入新的图形符号。
例如:在对网络进行建模时,您可能需要为<<router>>
、<<switches>>
、<<hub>>
等提供符号。构造型允许您使这些东西看起来很原始。
标签值
标签值用于扩展UML
的属性,以便您可以在模型元素的规范中添加附加信息。它允许您指定模型的关键字值对,关键字是属性。标签值以图形方式呈现为括在括号中的字符串。
例如:考虑一个负责组装、测试和部署系统的发布团队。在这种情况下,有必要跟踪主子系统的版本和测试结果。标签值用于添加此类信息。
标签值可用于为模型添加属性以用于某些有用的目的:
- 代码生成
- 版本控制
- 配置管理
- 作者身份
- 等等
约束
它们是用于指定必须始终保持为真的语义或条件的属性。它允许您通过添加新协议来扩展UML
构建块的语义。在图形上,约束被呈现为字符串,包含在关联元素附件的括号中。
例如:在实时系统的开发中,有必要用一些必要的信息来装饰模型,例如响应时间。约束定义了必须使用*{subset}或{xor}*的模型元素之间的关系。约束可以在属性、派生属性和关联上。它也可以附加到一个或多个显示为注释的模型元素上。
二、何时使用轮廓图-UML Extension Meacham
作为创建新元模型的替代方法,您还可以扩展UML
元模型的扩展和修改,并根据您的要求修改UML
元模型。在UML
中,我们称其为基于原型和配置文件的轻量级扩展。UML
轮廓图可以通过以下3中方式之一定义:
- 创建新的元模型
UML
元模型的扩展和修改- 使用语言固有机制扩展
UML
元模型
三、轮廓图-工作原理
UML1.1
中的扩展机制相对不精确,因为只能基于原始数据类型字符串进行扩展。UML2.0
允许您对扩展元素使用任意数据结构,这意味着现在可以进行更广泛和更精确的模型扩展。
轮廓图机制不是一流的扩展机制。它不允许:
- 修改现有元模型
- 像MOF一样创建一个新的元模型
轮廓图仅允许对现有元模型进行调整或定制。在UML2.0
或更高版本中,还可以动态组合轮廓图,以便在同一模型上同时应用多个轮廓图。
四、轮廓图概览
在这个例子中,我们可以看到一个原型可以从一个或多个元类扩展。这种扩展关系被描述为一个带有实线和实心箭头的箭头。箭头从原型指向元类。
在下图中,我们将EJB的轮廓图定义为一个包。bean本身从组件元模型扩展为抽象bean。抽象bean可以具体化为实体Bean或会话Bean。EJB由两种类型的远程接口和本地接口。EJB还包含一种称为JAR文件的特殊文件,用于存储Java代码的集合。
五、文本与图形图表构造型
构造型可以是文本或图形标识。图表也可以代替普通的类框。例如:人们经常使用这3个原型类来标识建模软件MVC框架:
六、UML轮廓图的其他流行用法
每个技术目标,即编程语言、中间件、库或数据库都是定义UML轮廓图的自然候选者。举些例子:
CORBA
、EJB
、C++ or JAVA
、Oracle or Mysql
等
七、轮廓图文件的构造型
要在特定应用程序中使用构造型,您必须首先集成包含构造型的配置文件。您可以使用虚线箭头而不是从应用程序包执行轮廓图文件的空心箭头来执行此操作。该箭头标有关键字<<apply>>
。
八、轮廓图示例
8.1 IT管理
轮廓图文件应用于另一个包,以便是轮廓图文件中的构造型可用于该包。下图显示了应用于ITManagement
包的网络、电信和软件轮廓图。
8.2 轮廓图示例2-EJB应用程序
在下图中,我们将EJB的配置文件定义为一个包。bean本身从组件元模型扩展为抽象bean。抽象bean可以具体化为实体Bean或会话Bean。EJB有两种类型的远程接口和本地接口。EJB还包含一种称为JAR文件的特殊文件,用于存储Java代码的集合。