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


当前回答

在我尝试了大多数其他免费工具后,TopCoder UML Tool为+1。 我的理由是:

1)该工具可以将UML图保存为人类可读的格式XMI,因此可以很容易地将文件提交给版本控制系统。

2)支持撤销/重做(这是我释放ArgoUML的原因)。

3)图表保存在一个文件中,与“工作区”或“项目”没有紧密联系。

StarUML也很好,尽管它很老了。不幸的是,它不再被开发/维护。

其他回答

只是在这里抛出我的两个比特,但我发现ArgoUML非常有用。它需要一段时间来适应它,它有点bug(最后一次我检查它是在版本。29左右),但它工作得很好,一旦你习惯了它。它可以处理所有类型的UML图,这就是我喜欢它的原因。此外,它是由tigris制作的,与制作subclipse(用于Eclipse的SVN存储库插件)的人是同一批人。

紫罗兰色的

免费,而且非常容易使用。

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

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

PlantUML是一个开源的Java标记语言到uml图工具,这里值得一提。它在可用性方面排名很高,因为它对各种图表和图表组件的语法很直观。

显然,如果你长期认真对待UML,你需要使用软件UML工具,就像其他答案中建议的那样,但我发现白板是UML制图的最佳工具之一,特别是在设计阶段,或者当你在探索不同的替代方案时。在我看来,没有什么比白板更能体现速度和灵活性了。如果你的身体搭配得当,它们也很适合合作。