• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

统一建模语言(UML) 版本2.0简介

发布: 2009-4-16 11:32 | 作者: 网络转载 | 来源: 测试时代采编 | 查看: 141次 | 进入软件测试论坛讨论

领测软件测试网

因此,值得注意的是在UML 2.0中定义所使用的精确程度已经增强了。它是通过以下方法完成的:

一种元模型架构的主要重建: UML 2.0架构是由一组低层次的建模概念和模式所组成的,它们在大多数的案例中要么过于初级,要么太抽象,以至于不能直接地在建模软件应用程序中使用。然而,它们相对的简单性使得它们在其语义和形成的规则上更加精确。这些优化后的概念,以不同的方法结合产生了更加复杂的用户级别的建模概念。例如,在UML 1中,在所有权角度上(即,元素包含另外一些元素),命名空间的概念(也叫唯一命名的元素集合)与分类器的概念(元素是能根据它们的属性进行分类的)上,都与单个的复杂语义概念绑定在一起。(注意这同样意味着如果没有包含另外两个而使用其中的任意一个的话,那是不可能的。)在新的UML 2.0架构中,这些概念被分离开,并且它们的语法和语义也被单独的定义。可扩展的和更加精确的语义描述:UML 1模型概念语义的定义在许多方法都存在问题。它所描述的层次有些地方具有某些广泛的和详细的描述(例如,状态机),但是非常不平均,而其它的一些地方几乎没有解释。UML 2.0规范主要强调了语义,尤其是在基本行为动态的关键领域中(如下所述)。对于一个更加详细的UML 2.0语义的讨论,请参考资源部分中的[Selic04]。一种清晰定义的动态语义框架: UML 2.0规范澄清了一些在老版本中的严重语义缺陷。图一描述了这个框架,至于更多的细节在资源中有所描述。[Selic04]。此外,下面的问题将通过这个框架详细的描述出来: 在运行期间的链接和实例的结构化语义结构和行为之间的关联语义的基础或因果关系模型通过所有当前在UML中的高级行为形式(即状态机,活动,交互)所共享。这同样也确保了那些通过不同的形式表达行为的对象可以相互的交互。


图 1. UML2.0语义框架

新的语言架构

UML 2.0 在精确度方面的提升所造成的最直接的结果之一,就是即使不算它所新增的建模能力部分,这种语言的定义也变得更大了。特别是对于最初的UML,曾被批评过于庞大(以至于学习和使用起来太麻烦),对于现在更加庞大的定义,这点通常又将被关注。

这样的批评典型地忽略了一个事实,那就是UML原本就是用来表述一些现在最复杂的软件问题,这样的问题当然需要功能充分强大的工具。(成功的科技——如同汽车和电子学,从来没有变得简单;对机器持续不断的要求是人类的本性之一,这就造成了最终越来越复杂的工具。例如,没有人会企图用基本的手工建造现代的摩天大厦。)

不过,由于有了这些顾虑,UML2.0 在某种程度上进行了模块化,允许有选择性的使用一些语言模块,以便解决语言复杂度的问题。这种结构的通常形式如图2所示。一些像类和关联这样的共享概念组成了它的基础部分,顶部是垂直的子语言或语言单元的一个集合,集合中的每个单元都很适合用来对某个具体的方面进行建模(Table 1)。这些垂直的语言单元一般都是相互独立的,因此你可以单独地使用它们。(注意:这在UML1中是不行的,在UML1中,活动的形式完全是基于状态机的形式。)


图 2. UML 2.0的语言架构

此外,垂直语言单元按级别组织成三层,通过在那些可用的层上增加建模能力可以形成相互连续的更高层。这就对模块性提供了更多的空间,即使对一个已给定的语言单元,你也有可能只使用某些特定的子集。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网