这样的架构意味着,你可以学习和使用UML那些最适合你的部分。你不再需要为了有效地使用UML去熟悉它所有的内容,就如同你不必为了说好英语而去学习英语里所有的内容一样,从这点来说,它可能比学英语更简单。随着你经验的增长,如果有必要你可以逐渐引入更强大的建模概念。
表1 UML 2.0的语言单元
语言单元目的 动作 (基础) 细粒度动作的建模 活动数据和控制流行为建模 类 (基础) 基本结构的建模 组件组件技术的复杂结构建模 部署部署建模 通用行为 (基础)公共行为语义基础和时间建模 信息流抽象数据流建模 交互内部对象行为建模 建模模型组织 Profiles 语言定制化 状态机事件驱动行为建模 结构复杂的结构建模 模板模式建模 用例非正式的行为需求建模作为相同架构下重组的一部分,在UML2.0中,语言的定义和结构的灵活性被显著地简化了。在UML1中,规范性的基本单元是由元模型的包定义的,包含了差不多成百个可能的组合。(事实上,因为UML 1 为一个特定的适应性给出了规范化的但又不完全的灵活定义 ,也就是说这些性能可以有很多种不同的组合)这就意味着,几乎不可能找到两个或更多的建模工具能相互之间进行模型交换,因为每一种工具可能只支持包的一种不同的组合。
在UML 2.0中,只定义了三个规范性层次,那些对应于分级语言单元的层已经在0层中就被提及并描述了。它们是这样被定义的,层(n)的模型服从于任何比它更高的层(如n+1)所定义的模型。换句话说,一个符合给定层规范的工具可以从那些符合任一相同或低于它所在层规范的工具中导入模型――在没有丢失信息的情况下。
注释: 形式上,UML 2 也定义了第四层(层 0),但这只是一个内部层,主要用来供工具的实现者使用。
四种规范标准类型的定义
抽象句法规范标准混合句法规范标准(也就是UML符号)抽象句法和混合句法规范标准抽象句法和混合句法规范,和图之间相互交换的标准这就意味着最多有12种不同规范标准组合,并且它们之间有着清晰的从属关系。(比如,抽象和具体的语法标准与仅仅是具体的或仅仅是抽象的语法标准保持一致)。从而使得在UML2.0中不同厂商的工具之间的模型交换成为可能,而不仅仅只停留在理论上。
大规模系统建模能力
在UML2.0中,新增的特性相对来说不是很多。这是特意为了避免已经声名狼藉的“次要系统”效应[Brooks95],因为一门语言没有必要由于非常多变的分用户群的提出新的需求而过度的膨胀。实际上,新的建模能力的主要实质是对已存在的特征进行简单地扩充,以便用于大规模的软件系统的建模。
此外,这些扩展都是通过使用相同的基本方法达到的:即在不同的抽象层面上递归地应用那些相同的基本概念集。这就意味着,你可以把一个给定类型的模型元素合并到单元里,依次类推,你可以用这种方式在下个抽象层面上进行合并,并把这些合并后的单元作为一个模块进行使用。这跟编程语言中的过程类似,它能根据你想要的深度进行嵌套的调用。
特别是,以下建模能力通过这样的方式被扩展了:
复杂结构活动交互状态机上述的前三项占到了UML2.0的新特性中的90%以上复杂结构
文章来源于领测软件测试网 https://www.ltesting.net/