• Bouml
    跨平台,支持 Win, Linux, Unix, Mac 的 UML 工具,和 Slickedit 属于一个级别,极具潜力的一款工具,现在才 2.16 版本,已经很完善了。

  • ArgoUML
    似乎不支持反向工程,不支持 C++,反正支持的图表很少,速度很慢,不容易上手,很不爽

  • Visual Paradigm
    中文支持不爽,要修改 java 的字体,体积庞大,需要破解,导出的图形背景有 logo,也不爽

  • Umbrello
    比前两种好得多,基于 kde,debian 下安装很方便,直接 apt-get 即可。不过 bug 也不少!不爽

  • Dia
    应该不算 UML 工具,类似于 win 下的 SmartDraw,支持的图形也很多,泛泛但不专业。不爽

还有一些工具,从 Bouml 开始对我就没有意义了,下面讲讲 Bouml。

  • 跨平台,win, Linux 下我都在用
  • 基于 QT,debian 需要手动编译,不是很难,只是编译时间大概要 5 分钟(p4-2.0, 512M)
  • 支持 c++,java,idl 的正向反向工程,我只用 c++的,可控性很高
  • 支持 UML2.0 哦
  • 支持中文,我用 UTF8 格式,只要修改/usr/bin/bouml 文件,增加环境变量 BOUML_CHARSET=UTF8 就好,包括 BOUML_ID 也可以在该文件中设置好
  • 可生成 HTML 文档,很爽,可能以前我没用过这个功能,感觉特别是在文档阶段,省了我手工整理的麻烦!
  • 支持导出 PNG 图片,支持导出 XMI 文件,支持导入 ROSE 工程,支持插件(PLUG-OUT)
  • 很容易上手,我感觉比 ArgoUML,Paradigm 好用多了!人性化!

最关键的是通过这个工具,让我能从 C++代码的角度看 UML 图形的区别,让我更好的理解 UML。因为你可以随时更新一个 UML 节点(对象、用例、关系等),并实时查看对应节点的 C++代码。非常好

可能 Bouml 不是一个专业的 UML 建模工具,但我可以肯定它是一个准入门级的 UML 工具。只要使用它,相信你能更好的理解什么是 UML,关键的是让你真切的体会到’工具’这两个字–UML 工具。

再说说一点小问题吧。

  • Logo 不够鲜明:)
  • 你最好不要绕过’另存为’私自转移文件目录,很危险!我为此差点丢失 1 天的工作。
  • 人家的用例图标,默认情况下文字是在椭圆里的,而它是在椭圆下面的,虽然可以移动文字,但不太习惯
  • 最后一点不习惯,它的工程文件很分散,不适合版本控制,我只能打成 tar.gz 在上传,呵呵

用了 1 个星期的体会,总体感觉如果完美的 UML 工具打 100 分的话,我给 Bouml 打 81 分,绝对强!相信再过两年它也会像今天的 Slickedit 受到大家的关注。