几款画UML图的工具初步比较

最近需要画UML图,从网上找了几个工具软件,比较了一下,发现各有优缺点。画UML图的工具大致可以分为两类,一类是专业的绘图工具,带了画UML的功能,如Visio、Dia;另一类是专门用来制作UML图的,如ArgoUML和Rose,通常都有根据UML图直接生成代码。

如果只是简单的画下,这几个工具都够用,但是如果对细节要求严格一些,则都有不足的地方。如果以R.Martin的《敏捷软件开发》中的UML图为标准,则用这几款软件都无法严格做出其中的图形。当然对于Visio、Dia这样的绘图工具,还可以一点一点用基本图形拼出来,但这就烦了一点。例如在序列图(sequence diagram)里,一个调用除了有消息名以外,还可以有返回值,用一个带箭头的小圈表示,这个在上面的几个工具里都没有直接提供的。

当然不能因为没找到完美的工具就不画UML图了,最终还是选了最新版的Diav0.96.1。虽然画出来的图显得粗糙了点,但UML的一些基本的图形都有,而且集中在一个面板里,不像Visio分了好几个区,找个图形还要到处点。在生成类图之类的时候点开属性也没有Rose、Visio、ArgoUML那样一大堆属性摆在你面前,让你选也不好,不选也不好。说到底还是因为反正这些工具都不能完全满足我,那干脆选个最简单的。当然还有一个原因是我比较偏爱开源软件,虽然我不会去改它的代码,但人家好歹是跨平台的。几年前的一个Dia版本在我的电脑上运行老是死掉,现在这个用了几天了,也没什么问题,看来稳定性提升了一些。

昨天在知乎看到大神推荐了一款在线画图神器ProcessOn,可以在线花很多种图,完成很多工作,顿时有种相见恨晚的感觉。

另外还看过几个工具,没试过。Gaphor看上去很美,又是用Python开发的,但是我没办法让它在windows下跑起来,于是也只有流口水的份了。Graphviz也可以用来画UML图,不过功能有限,只见过有人用它画类图,而且我只想要一个可视化的UML绘图工具,不想在思考软件结构的时候又去考虑怎么用dot语言描述出一个UML图形的问题。

这里列出了很多UML工具,有兴趣的可以自己去看看:

http://en.wikipedia.org/wiki/ListofUML_tools

http://plg.uwaterloo.ca/~migod/uml.html

时间: 2024-10-11 22:03:18

几款画UML图的工具初步比较的相关文章

推荐几款画韦恩图的在线工具

(1)http://bioinformatics.psb.ugent.be/webtools/Venn/ 操作简单,不仅画出了韦恩图,还很贴心的给出了数据统计的结果并列出了各个部分对应的ID,且提供直接下载.缺点是颜色和大小不可调. (2)http://bioinfogp.cnb.csic.es/tools/venny/index.html 这款比较漂亮,操作也很简单,但是不能根据列表大小调整生成的圆圈大小. (3)http://www.cs.kent.ac.uk/people/staff/pj

用rose画UML图(用例图,活动图)

首先,安装rose2003,电脑从win8升到win10以后,发现win10并不支持rose2003的安装,换了rose2007以后,发现也不可以. 解决途径:在虚拟机中安装(我装的是win xp的系统,安装的是rose2003). 如果需要安装包,可以联系我.此外,还有Visio2013的安装包等.都有用过,不过还是觉得rose最好用了. 然后开始贴图吧!毕设做的电商购物系统的UML设计图.   活动图: 1.用户用例模型 2.系统管理员用例模型 3.订单用例模型 4.产品用例模型 5.网站管

【UML】如何看Android的UML图

UML图有很多类型,这里只讨论最重要也最常用的两种 - 类图和时序图. 1. 类图 通过类图,我们可以很容易的了解代码架构,理清模块之间的关系, 包括继承(Inheritance),实现(realization),依赖(dependency),组合(Composition), 聚合(Aggregation), 关联 (Association) 等等. 下面就图中给出的7种关系一一解读. 1.1 Composition Compostion 是一种 Association 关系,但它更强调两个类之

vscode用yuml画类图

vscode用yuml画类图 最近在找画类图的工具,发现vscode一款插件很好用,还支持markdown.vscode插件中直接搜索yuml安装即可. 文件后缀.yuml. 文件开头第一行这样写// {type:class},大概是表示类图的意思,不写会报错. 依赖 依赖关系在yuml中用"[A]1^*[B]"来表示 // {type:class} [A||A();Function(B b)]1-.-*>[B] 关联 关联关系在yuml中用"[A|B*b;|]1-*&

15款最好用的思维导图(心智图 )工具

思维导图也叫心智图,是一项流行的全脑式学习方法,用来表示词,思路,任务或其他与围绕着一个中央关键词或想法项目的示意图.通过径向,图形和非线性的方式提出意见,思维导图鼓励头脑风暴的方法来规划和组织任务.虽然思维导图的分支表示分层树形结构,其放射状排列扰乱通常与呈现更加线性的视觉线索层次相关概念的优先次序. 在这里,我们选择了一些最好的思维导图工具,让您能够快速探索思路,与同事协作和编辑你的内容.下面的大多数工具是免费的,享受! 您可能感兴趣的相关文章 网站开发中很有用的 jQuery 效果[附源码

画时序图工具TimingDesigner 9.2 安装指导

画时序图工具TimingDesigner 9.2 安装指导 先上文件下载链接:http://bbs.eetop.cn/viewthread.php?tid=250446&;highlight=timing%2Bde%24igner 安装.破解方法:一.安装1)解压“TimingDesigner_v9.2_win.zip”后有两个文件:“td.win32.td92.exe”和“TDlic.dat”:2)安装“td.win32.td92.exe”到C盘或D盘,此处选择安装目录为“D:\Program

【辅助工具】20款优秀的移动产品原型和线框图设计工具(二)

接前一篇:[辅助工具]20款优秀的移动产品原型和线框图设计工具(一):http://www.cnblogs.com/haochuang/p/3997140.html 11.WireframeSketcher WireframeSketcher是一款强大的.灵活的线框图和原型快速创作工具,适用于桌面app和移动app开发者.WireframeSketcher可以作为单独的app,也可作为一个Eclipse 插件. WireframeSketcher 还是一款简单的带有手绘风格的创作工具,这样你就不

画类图的使用工具----转载

StarUML是一种生成类图和其他类型的统一建模语言(UML)图表的工具.这是一个用Java语言描述的创建类图的简明手册. StarUML(简称SU),是一种创建UML类图,并能够自动生成Java的“stub code” 的工具.SU也可以做JAVA逆向工程,以产生相应的UML图表. 在本教程中,我们将使用SU设计一个pizza饼.执行下列步骤,可以创建如下面所示的UML图.SU可以生成反映类结构的代码,而不是任何对象的具体行动.因此,在使用SU创建图表后,你会为此stub code添加剩余的功

用Visio画UML顺序图

1.顺序图 顺序图又称为时序图,顾名思义,它着重表现的是对象间消息传递的时间顺序.顺序图描述的对象也是一个用例,即一组行为操作,而它表现的是这组行为的先后关系(纵坐标),以及每个行为是属于哪个对象的(横坐标). 作用:用对象间的交互来描述用例. 组成成分:参与者.对象 对象的生命线:用于表示某段时间内该对象是存在的,表示对象的生存时间. 消息:表示对象间的通信.当收到消息后,接收消息的对象立即开始执行活动,起到激活对象的作用.通常用消息名和参数表来标识. 横坐标:表示不同的对象.对象的左右顺序不