我正在尝试选择一个工具来创建各种类型的UML图。对我来说,可用性是一个主要的标准,但我仍然会以更陡峭的学习曲线获得更多的权力,并感到高兴。免费(就像啤酒一样)会很好,但如果工具值得的话,我愿意付钱。我应该用什么?
当前回答
UML的可视化范例http://content.usa.visual-paradigm.com/websiteimages/images/products/vpuml60/vpumltitle.gif
我非常喜欢UML的Visual Paradigm,它非常强大,有免费的社区版和便宜的个人版。
Agilian http://content.usa.visual-paradigm.com/websiteimages/images/products/ag10/agtitle.gif
对于敏捷建模,还有Agilian,它更灵活,增加了额外的功能来支持智能板,也知道思维导图。
我最喜欢他们产品的一点是灵活性。我现在在工作中使用企业架构师,但我认为它不够聪明。我希望能够快速地对一些序列图进行头脑风暴,并让应用程序在后台保持我的模型是最新的,这是VPUML非常擅长的。
在我看来,它比Enterprise Architect好得多,尽管Enterprise Architect也是一个很棒的工具:)
其他回答
为了我的简单和简短的UML工作, 我用过这个工具:
星联 - http://staruml.sourceforge.net/en/
很棒的免费UML绘图软件。
虽然最初的Star UML不再维护,但是现在有一个叫做White Star UML的分支正在积极开发。
我还没有找到一个顶级的免费UML图表工具,但是如果您对纯粹的图表感兴趣,而不是往返工程,我会选择Microsoft Visio。如果您想要完全的双向工程,Rational Rose。
维基百科上列出的UML工具可能也会派上用场。
显然,如果你长期认真对待UML,你需要使用软件UML工具,就像其他答案中建议的那样,但我发现白板是UML制图的最佳工具之一,特别是在设计阶段,或者当你在探索不同的替代方案时。在我看来,没有什么比白板更能体现速度和灵活性了。如果你的身体搭配得当,它们也很适合合作。
一些背景:最近在研究生院,我为一个独立的项目研究了UML工具的可用性和UML理解。我还以当模特/建筑师为生。
之前的帖子有太多的答案而没有足够的问题。一个常见的误解是UML是关于创建图的。当然,图表很重要,但实际上您是在创建模型。以下是每个供应商的产品/解决方案在某些方面优于其他产品时应该回答的问题。注:列出的答案是我认为最好的,即使其他产品支持特定的功能或需求。
Are you modeling or drawing? (Drawing - ArgoUML, free implementations, and Visio) Will you be modeling in the future? (For basic modeling - Community editions of pay products) Do you want to formalize your modeling through profiles or meta-models? OCL? (Sparx, RSM, Visual Paradigm) Are you concerned about model portability, XMI support? (GenMyModel, Sparx, Visual Paradigm, Altova) Do you have an existing set of documents that you need to work with? (Depends on the documents) Would you want to generate code stubs or full functioning code?(GenMyModel, Visual Paradigm, Sparx, Altova) Do you need more mature processes such as use case management, pattern creation, asset creation, RUP integration, etc? (RSA/RSM/IBM Rational Products)
Detailed Examples: IBM Rational Software Architect did not implement UML 2.0 all the way when it comes to realizes type relationships when creating a UML profile, but Visual Paradigm and Sparx got it right. Ok, that was way too detailed, so a simpler example would be ArgoUML, which has no code generation features and focuses on drawing more than the modeling aspect of UML. Sparx and Visual Paradigm do UML really well and generate code well, however, hooking into project lifecycles and other process is where RSM/RSA is strong. Watch out for closed or product specific code generation processes or frameworks as you could end up stuck with that product.
这是一个直接的大脑转储,所以一些细节可能并不完美,但是,这应该提供了一个关于问题和解决方案的大致地图。
新-发现了一个很好的列表,许多UML工具的描述。Wiki UML工具列表
由于我通常将UML更多地用作通信工具而不是建模工具,因此有时需要稍微调整语言,这使得严格的建模工具相当笨拙。此外,他们往往会为偶尔的绘图花费大量的开销。这也意味着我不会给那些处理好往返建模的工具任何加分。考虑到这一点……
当使用Visio时,我倾向于使用这些模板来满足我的UMLing需求(内置的那种糟糕)。这可能是因为我已经习惯了它,因为它是我目前任务中的主要绘图工具。
OmniGraffle也有一些内置的UML模板,在Graffletopia上也有更多,但我不建议把它作为一个绘图工具,因为它有太多的怪癖(怪癖对很多东西都有好处,但对UML没有好处)。免费试用,所以无论如何……:)
我一直在尝试MagicDraw,但虽然功能强大,但我发现用户界面让人分心。
否则,我发现topcase是一个有趣的项目(或一组项目)。上次我使用它,它仍然有一些错误,但它工作,似乎已经发展得很好。在任何支持eclipse的平台上都能很好地工作。畅所欲言,畅所欲言:)
至于绘图工具Dia,它相当丑陋(界面和结果图),但它确实完成了工作。一个有趣的免费建模工具是伞盖,但我并没有真正使用它。
我完全同意mashi的观点,白板很棒(还有数码相机或手机)。
可能我使用过的一些最好的工具都属于Rational工具家族。