本节向大家介绍一下UML2方面的知识,主要包括UML2设计原则和UML2问题答疑两部分内容,相信通过本节的学习你对UML2有深一步的理解。
UML2的设计原则
UML元模型的设计思想遵循以下原则:
模块化-应用强内聚、松耦合的原则来将建模的概念分组到多个包,并将功能特性组织到多个元类中。
分层-UML元模型应用了两种分层。
首先,包的结构分离了元语言核心概念与使用它们的高层概念。
第二,四层元模型的架构模式分离了跨越很多抽象层的关注点(尤其是有关实例的关注点)。
分区-分区用于组织相同层的概念范围。在InfrastructureLibrary中,细致的分区用于提供现在以及将来元模型建模标准所需要的灵活性;在UML元模型中,分区则比较粗略,这样增强了包的内聚性及多个包之间的松耦合性。
可扩展性-UML2扩展方式有两种:
1)使用Profiles来定义新的方言,定制面向特定平台(如J2EE/EJB,.NET/COM+)和领域(如金融、通讯、航空)的语言;
2)通过重用InfrastructureLibrary package,增加合适的元类以及元关系,可以定义一种与UML相关的新的语言。前一种情况定义了一种新的UML的方言,而后一种情况定义了UML语言家族中的新的成员。
重用-提供一种细致而灵活的元模型库,可被重用来定义UML元模型以及其它架构相关的元模型,如Meta Object Facility(MOF)和Common Warehouse Metamodel(CWM)。
UML2答疑
1.UML2为什么要定义兼容级别?
UML2是一个范围很大的语言集合。这些语言集被划分成不同的模块,不同厂商的UML工具可以实现不同的模块。这些工具之间的需要进行互操作(比如不同的工具提供开发过程不同步骤的建模功能),这样就可能会存在一个问题,就是不同的UML工具之间所定义的模型的兼容性的问题。因此,UML2规范定义了少量的UML2兼容级别,以增加两个工具支持相同的或者相互兼容的语言子集的可能性。
2.什么是语言单元(Language Unit)?
语言单元是一组紧密相关的建模概念的集合。这个集合中的概念可以反映要建模的系统的一个方面的内容,因此它们被打包到一块,形成一个基本的建模单位。对应到图中,可能就大体对应了几种不同的图形(理解是否正确?有待验证)。UML2中包含了十四个语言单元:动作、活动、类、组件、部署、通用行为、信息流、交互、建模、Profiles、状态机、结构、模板、用例。
每一级的兼容级别,要逐级的、递增的把所有的语言单元都合并进来。
【编辑推荐】