uml 工具总结
argouml:
图太丑,可通过java web start启动,使用很方便,开源免费;
Omondo EclipseUML:
进化太慢,似乎开发的公司转为收费的了,免费版功能贫乏,不过画类图还挺漂亮;
visual paradigm community版:
功能很强大,community版是免费的,但我的commnunity license不知怎么会过期,而且commnunity版导出的图都有背景logo,上面说了只能给社区做非盈利使用,license过期后,我就没有继续用;
最后,隆重推介的是StartUML。这是韩国人做的开源项目,不得不说作者真是活雷锋。这是用dephi开发的一个软件,体积不算大,功能强大,界面友 好,图形效果都不错,还支持C++,C#,java的正逆向工程。
Rose挺好用的,不过体积好像很大,费用也贵,我最开始用的UML工具是它了。
XDE是Rational Rose系列的一个分支,嵌入到VisualStudio.net中,这是我后来用得最多的,比较好用,关键是跟VS.net嵌在一起,但目前好像没有支持VS2005的版本。
Visio是Office系列的一个产品之一,Visio2007支持UML2.0,可能因为Visio能画的图确实很多,用Visio画UML会 有点不习惯,不过很快就可以适应。如果贵公司是用微软的软件平台为主的,Visio确实是一个好选择。如果贵公司是微软合作伙伴,微软合作伙伴每年都需要 交纳一定的费用,这样可以有一定license数量来使用微软的软件,这样用Visio也是首选。
JUDE community是免费的,体积也很小,用java写的一个windows程序,比较容易上手,不过图形没有那么美观,另外也不支持UML2.0。但大部分情况下,工作中用到的UML绝大部分还是UML1.0的内容。
Enterprise Architect体积也不大,功能挺强大,支持与.net或者java代码同步,有试用版可以下载,如果使用正版,费用相对Rose来说还是很吸引人的。
2007年10月的一天,我发现了starUML这样一个开源的UML工具,通过与ROSE 2003,VPSuite3.0 Community Version,Together 2007,Telelogic Rhapsody7.0,Trufun plate free2007,MagicDraw v12比较,我最终选择了starUML 5.0。其主要理由是:
第一,不涉及版权问题;
第二,其功能完全符合我目前的需要,即作图和代码生成;
第三,可以自由使用,不必付费;
第四、可以自行扩充功能,与我所使用的GNU工具链很好的结合起来。
详细说一下:
我是个高校教师,可我需要作软件,我用GNU工具链,我做的软件要跨平台(主要用QT),我只用C++和C,我的团队只有4个人。所以我选择UML工具的主要依据按照优先级由高到低是:
作图功能>代码生成>版权>对机器性能的要求。
首 先、在作图功能方面,主要考虑能画多少种UML图?绘图功能如何?是否能保存为图片?是否支持中文作图?结论是VPSuite最强,MagicDraw和 Together次之,然后是Trufun和Rhapsody,最后是Rose和starUML。可惜VPSuite Community版本生成的图上带有数字水印。
其次、代码生成功能。只有starUML提供免费的代码生成功能,其他工具都是要付费的。
第三、版权问题。只能选择starUML,VPSuite Community和Trufun plate。
第四、我的机器有点旧,IBM Thinkpad T23 ,512M内存,运行eclipse有点吃力,而且我很难接受用基于java的工具开发C++程序这种情况。所以在这一点上ROSE和starUML是首选。
综上所述,starUML是最佳选择。虽然它的画图功能一般,界面是英文的,但它符合我的要求,英语不是障碍。
为什么不用Trufun plate?它哪儿都好,可就是没有免费的代码生成功能。
为 什么不用ROSE?它是为大的软件公司准备的,用ROSE的公司一定还同时使用clearcase,robot等IBM工具,这是IBM贯穿整个软件生命 周期的完整解决方案。我这种几个人的小团队,没那个必要,也没那个资金。用Subversion,Trac,Apache,codeblocks, mingw,QT,starUML也可以满足小团队的软件工程需求。