王国维在《人间词话》里谈到:“古今之成大事业、大学问者,必经过三种之境界:‘昨夜西风凋碧树。独上高楼,望尽天涯路’。此第一境也。‘衣带渐宽终不悔,为伊消得人憔悴。’此第二境也。‘众里寻他千百度,蓦然回首那人却在,灯火阑珊处’。此第三境也。”
第一重境界:雾里看花
属于UML的初级应用,对UML有了初步的一点了解,知道了用例图,类图,能画出简单的时序图、协作图等。初入UML的世界,各种图型的特性、适用范围、图形元素的功用都还一知半解,而UML庞大的体系足以让初入者无从着手,就好比驾一扁舟,漂游于大海之上,“望尽天涯路”而不知所归。在第一重境界的应用所要完成的目标是达到与客户的需求沟通,即解决前文所说的“上不着天”的问题。在初级阶段,如果能拥有扎实的面向对象设计基础,同时配合以良好的UML工具,那么可以很快度过这个阶段,来到下一重境界。
第二重境界:小楼一夜听春雨
从第一重境界的迷茫中走过来了,当然这是一个痛苦的过程,不然为何“衣带渐宽”呢。如果说在第一个阶段的UML应用是属于局部范围的应用,那么到第二重境界,则是全局的利用UML了。在这个阶段,开始初窥UML的奥妙,不仅可以借助于UML的用例图、时序图等完成与用户的需求沟通,而且在此基础上,可以使用UML的类图、交互图、部署图、组件图等指导程序员进行开发。在第二重境界下,解决了前文所说的“下不着地”的问题 。
第三重境界:如鱼得水
随着UML的项目实践增加,软件组织也在不断的成长。明白了UML只是一种方法,而独立于过程,在实践中,UML是贯彻整个软件开发过程,解决了“一盘散沙”的问题。通过在前期需求分析阶段形成的业务用例模型,通过细化,进一步描述业务的细节,并且通过UML的类图、交互图等可以建立目标系统的逻辑模型。而UML应用的最高层次则是将UML作为一种“高高级”语言,实现从目标系统逻辑模型向物理模型的直接转换。
通过在现有的高级语言基础上描述业务过程,而UML编程语言的编译器则可以实现UML语言的编译执行,这也是当前MDA(Model Driven Architecture, 模型驱动架构)所追求的目标。
可以说,UML对系统模型的表达能力超出了以往任何一种面向对象的分析和设计方法。随之出现的问题是,它的复杂性也超出了以往任何一种方法。由于UML的复杂性,对它的掌握和使用确实不是一件轻松的事。因此,从初入“雾里看花”的第一重境界,并逐步进入到“如鱼得水”是一个循序渐进的过程,是一个逐步学习,逐步应用与提高的过程。
首先,UML是一个复杂的体系,而且为了能够灵活的适应各种项目的需要,增加了很多符号,而并不是每一个项目都需要使用到这些符号。为了成功使用UML,在使用的过程中必须流程化使用,针对不同的项目实际情况,对UML符号进行裁剪。当然,这也意味着几乎任何项目都可以使用UML来建模。
第二,需要保持项目组对UML的统一一致的理解,这是建模成功的保障。毕竟,现在大型项目都是几十个甚至成百上千的人员牵涉其中,要确保负责设计与开发人员对UML的各种符号有统一的理解,不然,UML不但不能起到沟通桥梁的作用,反而会导致信息传递的失真。可以通过项目组的培训等方式来实现。
文章来源于领测软件测试网 https://www.ltesting.net/