对两款UML建模工具的功能评价

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:nannalee
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:这篇文章针对UML建模工具的功能,从用户的角度提出了一种评价的方法。这种方法包括了对工具七个方面的功能进行测评,并且应用这一方法对当前最热门的两款工具Model Maker和Rational Rose进行了测评,通过测评最后得出了每种工具的优缺点及它们的适用场合。
  关键词:功能评价;CASE工具;model maker;rational rose
  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)12-21604-02
  
  Evaluation of the Functions of the two UML Case Tools
  
  WANG Lei, ZHOU Bing
  (Anhui University of Technology Institution of Computer Science and Application,Maanshan 243002,China)
  Abstract:The article puts forward a kind of method of evaluation of the functions which is on behalf of the users. This method includes seven parts of the evaluation of the functions and in this article, it evaluates the most popular two kinds of case tools (Rational Rose and Model Maker) by this method. Then, it gets the result of the advantages and disadvantages of each tool and their using conditions.
  Key words:evaluation of the functions;case tools;model maker;rational rose
  
  1 概述
  
  随着UML的提出与发展,UML建模工具也越来越多,每一个软件开发者都希望找到适合自己的,拥有自己所需要的功能并且尽可能简单的建模工具。为此本文提出了一种基于用户的对UML建模工具的功能评价的方法,并且对两款CASE工具做了简单的评价与比较。开发者也可以通过对下面几个方面的评价与测试来选择一款合适的工具。
  
  2 基于用户的功能评价
  
  2.1 绘图支持
  绘图支持功能的评价主要从三个方面入手,具体如下:
  (1)工具应使绘图工作简单而有趣,不仅必须提供优秀的选择、放置、连接和定义图中元素的机制,而且要帮助建模者着色,形成一张正确的图。
  RR的绘图区中提供了很好的选择功能,可以方便地选择某个,某些或全部元素,另外在绘图窗口中的右键菜单中还提供了“select in browser”在浏览器中选择的功能。MM同样提供了方便的选择功能,
  (2)工具还应该有理解元素语义的能力。这种能力能够提示一个具体的操作与其他操作之间存在不一致问题。比如,在一个模型中,若修改某个图后,将会引起该图与其他图的冲突,这时系统就会自动警告,提示建模者的修改可能出现错误。
  在测试不一致问题时,将从以下两个方面进行。
  浏览窗口中显示的不一致:
  RR中在左边的浏览器中的用例视图和组件视图中都可以创建类,如果在同一个视图中创建两个同名的类会发出警告,并且最终不允许类名相同。如果在不同的视图中创建两个相同的类,则也会出现警告,但最终将允许类名相同。
  RR中浏览器中的用例视图和组件视图中都可以创建类图,无论在相同或者不同的视图中创建一个同名的类图,系统都不会发出警告,并且默认它们为不同的类图。在两个视图中还分別可以创建用例图和序列图,协作图,活动图等,创建同名图的时候都属于上述情况。
  MM的界面设置相对合理,因此极少出现次类情况。
  图与浏览器显示的不一致:
  RR中在右边绘图窗口中的图与浏览器中所表示的图于元素是对应的,如绘图区的类图中加入一个新类,那么,左边的浏览器中,类图名子下就会多出这个类。但是,如果在绘图区中用DELETE键将该类删除时,浏览器下仍然保持显示这个类,并且没有任何警告。而反过来在浏览器中删除元素则会正常地对应到图中。
  MM中在绘图区删除某一元素,也不会直接反映到浏览器中,这一点与RR很象。
  (3)工具也应该提供图的版面设计功能。比如,允许建模者重新排列模型元素,而代表消息的线条由工具自动地重新排列,使它们彼此不会交叉。
  RR中在绘图区点鼠标右键出先的菜单中有一项“fit in window”功能,这一功能的主要作用是调整整个图在窗口中的位置,采取缩小的方式尽量将图一次全部显示出来。
  RR中没有自动调整图内各元素位置的功能。例如,当图中线条有交叉时,只能通过手动调整。
  MM具有全屏显示图形的功能。
  MM具有较强的自动排列功能。可以在绘图区的右键菜单中找到该功能,使用这一功能不仅可以让图中的各元素的位置变的更合理,还可以重新排列各元素位置,以消除线条的交叉现象。
  MM中的类图还可以自动按继承关系排列。该功能同样在绘图区的右边键菜单中。使用该功能可以使类图中的类按照继承关系自上而下排列,最上层的将是祖先。
  2.2 导航
  把几个视图和图合起来共同描述一个系统的时候,能够方便地在视图和图之间导航是很重要的。CASE工具一定要支持导航功能,达到方便地浏览不同的图和搜索模型元素的目的。
  (1)在CASE工具中表示的模型元素本身应该具有超链功能。右击元素应能弹出一个快捷菜单,上面显示普通的操作并给出可能的导航。
  RR没有超链功能。
  MM具有超链功能。用法为点击超链按钮,再点击图中想要加超链的图形元素,选择链接目标,便可以在添加超链元素的右键菜单中的“Navigation”子菜单下找到链接目标。比如说,给A类添加超链目标为B类,那么便可以在编辑A类的同时方便地找到B类,给设计者带来了很大的方便。
  (2)另一种控制复杂图的方式是定义过滤器,用过滤器把图中一些开发者感兴趣的方面独立表示出来或高亮显示。有了过滤器,建模者就可以在某一时段只研究那些重要的高亮显示部分。
  RR中没有过滤器功能。
  MM具有过滤器功能。主界面中的左下角的窗体用来显示图中与某个元素直接相关的子元素。比如说,一个类的所有属性、方法、事件、域等信息都显示在这个窗体中,该窗体上方有过滤按钮,可以分别过滤属性、方法、事件、域等信息,按下相应的按钮则该信息被过滤,不会显示在该窗体中,直到再按下该按钮取消过滤。
  MM中的绘图区域还可以选择是否显示类的关系,类的细节,单元的关系等等。这一点也属于过滤器功能。
  综合上述可以看出,在导航方面RR的功能明显不足于MM。
  2.3 输出图表
  一个经常被忽略的关键特性是用某种格式输出图表,以便引入到文字处理文档或Web页面中。用于输出的最流行图像格式是GIF、PNG和JPEG。这一功能将大大方便开发文档的制作。   MM中绘制的图不仅可以直接打印(“print”功能),还可以通过“export as image”功能将绘制的图做为图片文件输出,它支持的格式有WMF、PNG、BMP、JPG。用哪种格式来保存可以随意选择。
  
  RR也支持“print”功能,但是如果想将图作为图片文件输出的时候就必须通过工具栏中的拷贝按钮将图中元素拷贝,再粘贴到其他的文件中。比如说可以粘贴到Windows XP自带的画图软件中,或者干脆直接粘贴到WORD文档中。
  2.4 双向工程
  一款优秀的UML工具都支持由模型自动生成代码,而今天这一技术非常有限,一般只能对类产生代码。
  逆向工程与代码生成几乎是对立的二个功能。CASE工具阅读和分析代码为的是用图显示代码的结构。通常只有静态(比如类图)能用代码构建,动态信息是不能从代码中提取的。
  产生代码和逆向工程合在一起称为双向工程(ROUND-TRIP ENGINEERING)。
  RR只能产生类代码,产生代码时将自动转入开发环境的创建工程步骤,并将其引入该工程,如果系統没有安装所需要的开发环境的话,那么将用一个WINDOWS文本文档来保存代码。
  RR生成代码后如果对模型有所修改,那么它并不能够自动地反映带模型中去,必须通过手动来升级代码,通常会使用生成代码菜单中的“UPDATA CODE”功能。同时修改代码要想获得新的模型也需要手动完成。
  MM采用了强大的实时同步引擎,使得开发者的设计可以直接映射成代码,在代码上的修改可以自动逆向反映到设计模型。也就是说修改模型或者代码时候,它会自动地映射到代码或模型中去,而无需要手动升级。这一点RR很难做到。
  2.5多用户支持
  CASE工具应能让多个用户在同一个模型上协同工作。也就是说,彼此之间没有干扰。一般地,如果一个用户正在某个图上工作,那么该用户应该锁定这个图,不让其他用户同时改变这个图。更进一步地说,CASE工具要具有识别对积累中共享元素的任何改变的能力,但是这种改变是否适当是否有效还要靠用户决定。
  RR通过使用控制单元支持多用户的并行开发。控制单元可以是用例视图、逻辑视图、组件视图中的任何包。也可以是配置视图和模型道具单元。在控制一个单元时,这个单元中所有模型元素存放在独立于模型的文件中。这样独立文件可以利用支持SCC的版本控制工具进行控制。在使用控制单元的过程中,如果希望在任何时候都可以浏览但不能修改项目,可以对控制单元写保护。
  RR中的Model Integrator(模型集成器)可以比较和合并多个Rose模型,这项功能在多个设计人员共同开发时也非常有用,每个人可以独立工作,最后再将所有的模型集成到一起。
  在MM中,模型分界线是一对相关的问题,因为他们处理同样的问题:什么应该在一个模型中而什么不应该在一个模型中。 使用模型分界线功能可以完成多用户的共同开发。
  2.6 集成
  建模工具与系统开发时需要使用的其他工具形成一个整体,就是集成。其他工具主要包括开发环境(比如,编辑器、编译器和调试器)和企业工具(比如,配置管理和版本控制系统)等。
  CASE工具一定要能与其他工具集成,这样才能给开发者带来最大的方便,也是使用UML工具进行系统设计的先决条件。
  一款UML建模工具可以集成的工具有开发环境、配置和版本控制、文档工具、测试工具、GUI构造器、需求说明工具、工程管理和过程支持工具等七种。
  (1)开发环境:
  Rational rose:add-in manager:很多外部的产品都对rose发布了add-in支持,以对rose的功能做进一步的扩展,如java、oracle、delphi,有了这些add-in,rose就可以做更多的深层次的工作了。例如装了delphi link之后,rose就可以直接可以生成delphi的框架代码,也可以从delphi代码转化成rose模型,并进行两者的同步。
  Model maker:为delphi的建模而开发,因此与delphi可以说是无缝隙连接。
  (2)文档工具
  Rational rose:提供了文档窗口,它包含与模型元素规范窗口中完全相同的信息,描述模型元素或者关系,描述角色、约束、目的以及模型元素基本行为等信息。文档窗口中输入的一切都将显示为生成的代码中的说明语句,以后不必输入系统代码的说明语句。
  Model maker:图中的每一个单元,类,类的所有成员,事件类型和符号都可以用一个简短的描述(成为“One Liner”)和更长的文本(称为文档)来进行文档化。为编辑“One Liner”和文档,我们将使用文档视图。我们也可以使用浮动的文档窗口来进行编辑。
  
  3 结论
  
  从绘图支持、打印、导航、双向工程等九项功能指标当前最流行的两款Case工具进行测评。通过评测试,对结果进行比对,不难看出:
  (1)MM的界面虽然较RR复杂,但是使用起来更加方便。
  (2)在绘图支持这项功能的评测过程中,可以发现MM在不一致检查,自动排版等方面都强于RR。
  (3)导航方面MM又具有了RR所不具备的超链接和过滤器功能,为开发者提供了更大的方便。
  (4)MM采用了强大的实时同步引擎,使得开发者的设计可以直接映射成代码,在代码上的修改可以自动逆向反映到设计模型。而RR不能做到这一点。
  综上所述,Model maker的优势在于它的绘图操作更加的方便,而Rational rose的优势主要在于它支持更多的开发环境。
  
  参考文献:
  [1]Martin Fowler.UML Distilled[M].Addison Wesley,2003.
  [2]蔡敏,徐慧慧,黄炳强.UML基础与Rose建模教程[M].人民邮电出版社,2006年.
  [3]刘文红,王占武,吴欣,刘莹.软件评测技术研究与实践[J].飞行器测控学报,Jun 2004,Vol 23.
其他文献
摘要:本文根据Web服务器的特点,将检测Web服务器漏洞攻击的基于规范的入侵检测技术和检测脚本类型攻击的URL过滤技术相结合,设计了一种保护Web服务器的入侵检测模型WIDS,并对关键模块的实现加以说明,最后通过实例分析了该模型的工作过程。  关键词:入侵检测;基于规范的入侵检测;URL过滤技术;Web服务器  中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)12-21
期刊
摘要:从管理地区电网的实际出发,设计了一种集成化的地区电网集成信息系统。应用ASP.NET开发平台和C#语言技术,基于Web的B/S模式、以SQL Server 2000开发的开放式数据库为基础,运用网络技术综合管理与控制企业内其他开放式管理系统、实时信息系统、各部门的所有相关信息,具有各类信息统一管理、统一应用,传输方便、快捷,数据及时、准确、共享范围广等特点,并提供了BBS等功能。该系统完善了
期刊
摘要:数据库应用程序与数据库的数据访问接口有多种类型,最新的是ADO技术。本文以VB与SQL Server为平台,研究ADO对象编程技术。  关键词: ADO对象编程;VB;SQL Server  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)12-21488-01    Discuss the ADO Object ProgrammeBase on SQL Serv
期刊
摘要:结合上海民防信息化的特点和信息化建设实践,本文提出基于存储区域网络共享的上海民防信息存储改造方案,并还介绍了数据冗余容灾存储的设计。  关键词:SAN;存储区域网络;SNIA   中图分类号:TP274文献标识码:A文章编号:1009-3044(2007)12-21486-02    Reseach on the Storage of Shanghai Civil Defense Infor
期刊
摘要:Blog是近些年来发展很迅速的一种新的基于Web的信息交流技术。电子商务自诞生以来就与计算机技术紧密相连,电子商务系统是通过互联网完成的商务交易系统。通过对Blog及其相关技术和电子商务的特点的分析研究,提出了在电子商务系统的销售环节中应用Blog的新思路、技术可行性分析,以及实现企业Blog的方法。在企业的电子商务系统中应用Blog,能够提升企业的知名度、减少企业的经营风险、提高企业的知识
期刊
摘要:论文针对Win2000 Server操作系统的系统特性,以及对常用系统组件的安全分析和组件选择,深入的论述了服务器安全配置的系列问题,以求大部分用户更深入的了解、使用Server操作系统,最大程度的提高系统的安全系数。  关键词:服务器;安全配置  中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)12-21573-02    To Make a Thorough
期刊
摘要:DTS是一个强大而且灵活的数据库迁移工具,它能够实现各种异构数据源的数据转换。本文通过一个数据仓库实例,说明如何利用DTS将原始的业务数据源加载到数据仓库中,重点说明运用DTS中的ActiveX脚本语言转换数据。  关键词:DTS;数据仓库;数据转换;ActiveX  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)12-21514-02    Applicati
期刊
摘要:本文构建的系统是以PIC16F877单片机作为嵌入式系统的中央处理单元,并通过硬件集成电路S-7600A协议栈芯片来实现TCP/IP协议栈。因为以太网已经成为一种广泛的接入Internet的方式,可以通过RTL8019A以太网控制芯片把该系统接入以太网,然后通过以太网接入Internet,从而可实现对此嵌入式系统的远程访问和控制。  关键词:PIC;TCP/IP;嵌入式; 以太网  中图分类
期刊
摘要:在高校的文献管理过程当中,文献的借、还等工作的量大而重复烦琐,文献的管理管理难度大。而高校文献管理系统的开发使用,大大提高了高校文献资源管理的效率,尤其是在向管理自动化发展的时代,将极大地减轻资料管理的劳动力和提高工作效率。  关键词:ORACLE;FORM;图书;读者  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)12-21523-02    The Use
期刊
摘要:vsftpd是Linux操作系统下最常用的FTP服务器配置软件,可以通过对vsftpd.conf配置文件的修改来配置FTP服务,主要针对应用广泛的匿名FTP服务器的配置。通过本文对匿名FTP服务器配置的详细叙述,读者可以简单、快捷地在Linux操作系统上配置基于匿名用户的FTP服务器。  关键词:vsftpd;Linux;FTP服务;匿名用户  中图分类号:TP393文献标识码:A文章编号:
期刊