统一建模语言的漫长奇怪的十五周年历程

日期: 2012-10-18 作者:Alan EarlstJack Vaughan翻译:张宣彬 来源:TechTarget中国 英文

本月是对象管理集团(OMG)采用统一建模语言(UML)作为官方规范的15周年纪念。虽然有时候有争议,但是UML已经在现代应用程序建模中发挥了很大作用。

  在UML之前,面向对象分析和设计的世界被许多竞争对象方法所超越。UML在很大程度上是由对象方法论者Jim Rumbaugh, Ivar Jacobson和Grady Booch合作创立,他们在20世纪90年代中期在瑞理软件公司(Rational Software)一起工作,现在是IBM的一部分。

  瑞理软件公司事实上已经就标准提交向OMG RFP作出回应。在各种输入后(最终UML的符号为居中的“boxes”代表类,而不是Booch的原始“clouds”)1997年9月25日通过OMG的OA&D(对象分析与设计)特别小组一致投票推荐采纳UML。

  今天,它用于模型结构并作用于遍及许多行业不同的软件系统。从小公司到大公司,UML是许多模型工具的基础。在2008年,微软对UML迟来的怀创造出各种各样的里程碑(不低于创始人比尔•盖茨在他最后一次的技术大会主题演讲中宣布的)。

  UML越来越强大

  如果你看一下UML出现之前,有一个广泛的大多是互不兼容的建模选项,Eclipse基金会的执行董事Mike Milinkovich说,原因是人们对开源软件的合作。“UML在将一个相当破碎的社区整合起来, 并创建一个每个人都可以参照的标准”,他说。“它使整个模型社区可用,包括在这里的开源社区。”

  OMG总裁William Hoffman很好的记住了UML的根源_丰富的建模方法时代。“这是揭示‘哪一种语言是面向对象的语言’战争的后续战斗,”他说。“它成为设计和方法的战争。”

  这些年来,UML增加了额外的元素,其中许多支持嵌入式系统和模型驱动的代码生成。现在有些人想知道它是否已被要求做得太多。

  Ovum公司的高级分析师Tony Baer,说,UML已经成长并改变——但并不总是更好的。例如,他指出,UML 2.0变得如此复杂,在他看来,它的可用性变得远不及以前。“其实很多人使用UML今天依靠原来的UML规范,”他说。

  尽管如此,UML还是有许多让人敬佩的。可以说它已经预示着在应用程序开发标准上更广泛的承诺——在今天这比在20世纪90年代中期的时候显著。

  “这在软件工程中是一个特别活跃的时期,有来自许多其他方法论强有力的思想”,Grady Booch(目前IBM研究院的软件工程的首席科学家,IBM院士)在一份声明中指出”。

  Baer表示:“这是一个罕见的案例,由几个在同一公司的人提交的一个行业标准,实际上赢得了一群竞争对手。他说,UML走过了一个应用程序开发的创新浪潮,在20世纪90年代初的这种情况下,跟随着客户端服务器计算的发展。

  “一旦我们从绿色屏障中得到自由,出乎意料的得到一个巨大的发展,”他说。当时,引人注目的还有,尽管无休止的炒作,计算机辅助软件工程(CASE)已经失败。

  “CASE是一个自上而下的灾难,但有些人认为,也许它包括部分的模型概念,可能有益于探索,”他说,并且,尽管自我和利益相冲突,“IBM,微软,甲骨文其实同意了。”

  随着时间的推移,虽然UML已经纳入了许多扩展和配置文件,但是有些已经比不上其他的成功了。Baer指出,系统建模语言(SysML),一个通用的建模语言系统,直接继承于UML,已经是“一个空前成功的故事,”他说。

  OMG的Hoffman说,有些众多的UML扩展是OMG开放式规范过程的副产品。“我们的规范过程是开放的,”他说。“UML向着社会希望它发展的方向发展去的。实际上,我们非常满足的看到从初期的做图到现在它的所有扩展使用。”

  “UML 2.0是一个比UML 1.1更大的语言,模型驱动的解决方案公司的模型驱动架构服务副总裁Ed Seidewitz说,“无论是否过大都是一个主观判断。”

  这个语言不需要软件架构师使用它的全部内容,他指出,不同的人使用不同的部件。

  “大多数人不使用全部语言。也很少有不被人利用的,”他说。“最关键的事情是,你可以有一个大的语言,并且你不必使用整个语言。”

  UML仍然有增长空间,并且有时它已被定位为诅咒敏捷开发。Baer说,作为他的部分,由于开发和交付速度和敏捷开发部门的压力,UML的采用受挫。“人们急于避免分析瘫痪,”他说,“这使得UML停滞。”

  “对于许多人来说,UML是如何定义自己的模式,他们喜欢画视觉效果图和使用活动图,这是UML的一部分,Macro Modeling公司总裁兼Eclipse建模项技术总监Ed Merks说。

  “当然,有很多的机构,喜欢UML,并把它看作是一个重要的标准,并利用它来描述他们的信息,描述他们正在尝试做并用可视化的方式与其他建筑师分享的事情,并完全指定需要实现什么,”Merks说。

  但还有改进的余地。例如,Merks斥责OMG不接受的参考实现,他说的一些东西伤害了UML。例如,他说,“每个人都实现了XML的序列化和反序列化,但是通过他们自己的努力和一些不完全确定的事情,所以大家都按照他们自己的方式做,因此,它在供应商之间定义交换格式相当困难。”

  展望UML 2.5

  UML的下一步是2.5版本,它的出现旨在解决一些问题。一个主要目标是简化。 “UML 2.5规范使工具制造商和供应商更容易了解,从不同的供应商那里成为完全符合的工具,更一致和可互操作,”OMG的CEO Richard Soley说。

  他预测,UML 2.5的发展,作为整体工作的一部分,使UML生态系统,更好,更精确,更可用。

  UML是一个大而复杂的语言,而且作出根本的改变是很困难的。即将发布的新版UML 2.0“实际上并没有简化UML,它正在简化规范,”Ed Seidewitz说,这是一个工作组的一员,思考着近期和较长期UML的变化。“UML社区考虑的是,在短期内,我们至少可以使规范更有用——更清晰,更一致和更正确。”

  展望未来,UML 2.5“为UML的未来变化或增强功能提供坚实的基础”,Richard Soley说。回顾之前,OMG的Bill Hoffman说:“这是一个很好的旅程。”

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

作者

Alan Earlst
Alan Earlst

Jack Vaughan
Jack Vaughan

TechTarget新闻记者和网站编辑,主要关注数据管理领域的技术趋势和动态。

相关推荐