我正在尝试选择一个工具来创建各种类型的UML图。对我来说,可用性是一个主要的标准,但我仍然会以更陡峭的学习曲线获得更多的权力,并感到高兴。免费(就像啤酒一样)会很好,但如果工具值得的话,我愿意付钱。我应该用什么?


当前回答

阿尔戈乌姆尔。

我在我的论文中使用了这个,它设计得很好:也许它有太多的功能,不是很重要,但我宁愿有一些无用的功能,而不是没有一些有用的功能。

其他回答

为了我的简单和简短的UML工作, 我用过这个工具:

星联 - http://staruml.sourceforge.net/en/

很棒的免费UML绘图软件。


虽然最初的Star UML不再维护,但是现在有一个叫做White Star UML的分支正在积极开发。

由于我通常将UML更多地用作通信工具而不是建模工具,因此有时需要稍微调整语言,这使得严格的建模工具相当笨拙。此外,他们往往会为偶尔的绘图花费大量的开销。这也意味着我不会给那些处理好往返建模的工具任何加分。考虑到这一点……

当使用Visio时,我倾向于使用这些模板来满足我的UMLing需求(内置的那种糟糕)。这可能是因为我已经习惯了它,因为它是我目前任务中的主要绘图工具。

OmniGraffle也有一些内置的UML模板,在Graffletopia上也有更多,但我不建议把它作为一个绘图工具,因为它有太多的怪癖(怪癖对很多东西都有好处,但对UML没有好处)。免费试用,所以无论如何……:)

我一直在尝试MagicDraw,但虽然功能强大,但我发现用户界面让人分心。

否则,我发现topcase是一个有趣的项目(或一组项目)。上次我使用它,它仍然有一些错误,但它工作,似乎已经发展得很好。在任何支持eclipse的平台上都能很好地工作。畅所欲言,畅所欲言:)

至于绘图工具Dia,它相当丑陋(界面和结果图),但它确实完成了工作。一个有趣的免费建模工具是伞盖,但我并没有真正使用它。

我完全同意mashi的观点,白板很棒(还有数码相机或手机)。

可能我使用过的一些最好的工具都属于Rational工具家族。

你也可以从Lucid Chart中找到uml和其他类型的图表。

我强烈推荐BOUML。它是一个免费的UML建模应用程序,它:

is extremely fast (fastest UML tool ever created, check out benchmarks), has rock solid C++, Java, PHP and others import support, is multiplatform (Linux, Windows, other OSes), has a great SVG export support, which is important, because viewing large graphs in vector format, which scales fast in e.g. Firefox, is very convenient (you can quickly switch between "birds eye" view and class detail view), is full featured, impressively intensively developed (look at development history, it's hard to believe that such fast progress is possible). supports plugins, has modular architecture (this allows user contributions, looks like BOUML community is forming up)

相信我,没有更好的工具了。与BOUML相比,StarUML是一个弱智的海龟。ArgoUML根本不起作用。Dia是一个人机工程学^-1软件。

如果你想在图级建模,并且有一个干净的元模型,新的Omondo构建允许MOF和UML图之间的实时同步。 每次我在图中改变一些东西和模型时,都能看到我的图和xmi实时同步,真是太棒了。最不可思议的是,模型同时也是元模型和MOF,因为所有东西都是同步的。在我看来,这是一个非常有力的新概念。

我还喜欢类图和模型中的Java代码注释和JPA支持。我不知道还有其他工具有这两个令人难以置信的功能!!