XMI与UML合力推动产品开发(1)

发表于:2007-06-11来源:作者:点击数: 标签:
在软件开发过程中,无数组织依赖 UML(统一建模语言)。然而,用于管理 UML 本身的软件却有着灵活性差以及难于使用的口碑。本文讲述了丹麦开发公司 Ideogramic ApS 是怎样扩展 XMI(针对诸如 UML 的元数据的 XML 规范),以及探讨了“XML 化(XMLization)”

在软件开发过程中,无数组织依赖 UML(统一建模语言)。然而,用于管理 UML 本身的软件却有着灵活性差以及难于使用的口碑。本文讲述了丹麦开发公司 Ideogramic ApS 是怎样扩展 XMI(针对诸如 UML 的元数据的 XML 规范),以及探讨了“XML 化(XMLization)”的优点及局限性。

UML(统一建模语言)是一种软件建模表示法。这么说通常意味着使用 UML 的建模者并不是通过编写计算机程序来开始软件开发项目的。相反,他们相互讨论,在索引卡上作记录,绘制图形,进行少量的技术实践,评审图形以及进行其它一些抽象概念的设计,进行这些工作是为了编写代码时能获得更高的工作效率。典型的 UML“工作产品”包括所获取的位于一堆堆物理的记录(索引)卡片上的类概要,如同图 1 中所示的图形以及称为用例(use case)的叙述,该用例描述了期望用户将怎样同交付的软件产品交互。

简单地讲,UML 的目的在于成为人类工程学。它的成功基于这样一个事实:当人们在白板上书写或在小组内通过讨论解决问题时,他们表达有用想法和对事物的理解的效率特别高。

已经证明这些方法同人们的表达方式非常吻合,但是他们本身不适宜于完成计算机化这一过程。虽然以数字化的方式获取白板上的绘图是可能的。但这么做的代价通常很昂贵,并且所产生的数据难于发送、控制版本、归档、验证、转换。对于管理以源代码或 HTML(它是 Web 页面的基础)形式表示的数据,计算机的基础设施早已做好了准备。

通过以文本方式提供“序列化”UML 数据的构件,XML 消除了二者之间的部分差距。“XML 元数据交换(XMI)”是一项开放的工业标准,它将 XML 应用到诸如 UML 的抽象系统。XMI 方法捕捉和表达 UML 表达的关系,而抛弃特定 UML 图的大多数可视细节。这种将事物划分成必不可少的内容与可有可无的形式的做法增强了 UML 的可管理性。

本文研究了 XMI 对这个 Ideogramic ApS 小开发公司的影响。另外,还特别讲述了如下问题,即 XML 标准和一些逐渐成熟的工具(这些工具集成了市场上其它一些标准)是如何使得一个组织能够把精力集中在它自己的产品开发上。

Ideogramic ApS

Ideogramic ApS 是一家专业从事手势数字化(gestural digitization)和协作开发公司。该公司已经将一些理论知识精心转化成了产品,正如该公司的网站所描述的那样:“对编程的直觉工具支持,特别结合了诸如电子白板和图形输入板计算机等基于笔的界面。”

设计者可以使用任意多的常见输入设备 — 先进的电子白板、轨迹球等 — Ideogramic 的专利产品“手势识别”算法将这些草图转换成 UML 图。捕捉到这些结果,并将其表示成 XMI,然后加以调整,输入到可视化建模工具(譬如,Rational Software Corporation 软件公司的 Rational Rose)中。

这一过程是值得研究的,因为直到几年以前这一过程还不是很过硬。不同供应商的产品之间的互操作性是如此之差,以致于那些具有好的 UML 想法的人,在想把该想法推向市场时,都不得不随之带一套包罗万象的工具集。虽然 XMI 只实现了部分标准化,但是现在它已经足以允许 Ideogramic 把精力集中在他们最拿手的地方:相信第三方的产品可以处理此结果。

工作示例

为了更好的理解 Ideogramic 的“手势识别”是如何工作的,我们将采用一个包含单个类 Small 的示例。图 1 显示了由“手势识别”对设计者所画的略微有点潦草的草图进行了一点加工的样子。

图 1. 手势识别产生的 UML 图

当然,Ideogramic 的产品还包括许多工具,您可以选择这些工具来以图形方式精心制作这样的图形。尽管如此,我们所感兴趣的是位于 XMI 中的缺省序列化。该产品事实上将图 1 保存到清单 1 中所示的文档实例中。

XMI 定义了一个“插头”,该“插头”允许 Ideogramic 同其它产品(譬如 Rational Rose 或其它的 UML 制图工具)紧密结合。这使得 Ideogramic 能够解脱出来把全部精力集中在精益求精地提高其“手势识别”工具的独特价值上。例如,一个组织向 Rational Rose 保证,它能够将可视化建模工具与它的 Ideogramic UML 结合在一起。它之所以能有信心这么做是因为依赖 XML 在这两者之间来回传递信息。除了单向迭代之外,对往返迭代也是可能的,从而甚至逆向工程的 Rational 图可以“流”回 Ideogramic,作为进一步协作和细化的基础。

有关于实现的现状

至少,这是目标。这个梦想的实现还不完美。正如 Ideogramic 的产品经理 Klaus Marius Hansen 于 2001 年秋季所说的, “XMI 标准本身不支持所有需求,所以非常遗憾的是供应商对它的实现各不相同。”

Ideogramic 的解决方案是尽可能多地使用 XMI,并且在不能使用 XMI 的情况下定义扩展。由于 UML、XMI以及其它市场化产品都在不断地变化,因此维持版本的一致性是一项挑战,但是“手势识别”是一项功能强大的技术,在这方面作出努力是值得的。用 Hansen 的话说就是:“所有这些为我们带来了许多工作:使用不同工具进行测试,产生可替代的实现方案等等,但是这些辛苦是值得的。”


共2页: 1 [2] 下一页

原文转自:http://www.ltesting.net

...