代码之家  ›  专栏  ›  技术社区  ›  Community wiki

什么是最好的UML绘图工具?[已关闭]

  •  488
  • Community wiki  · 技术社区  · 1 年前

    我正在尝试选择一种工具来创建各种风格的UML图。可用性是我的一个主要标准,但我仍然会通过更陡峭的学习曲线获得更多的力量,并感到快乐。免费(比如啤酒)会很好,但如果这个工具值得的话,我愿意付钱。我应该用什么?

    50 回复  |  直到 16 年前
        1
  •  353
  •   ianmjones    11 年前

    一些背景:最近在研究生院,我为一个独立项目研究了UML工具的可用性和UML理解。我还以模特/建筑师为生。

    前面的帖子有太多的答案而没有足够的问题。一个常见的误解是UML是关于创建图表的。当然,图表很重要,但实际上你正在创建一个模型。以下是每个供应商的产品/解决方案在某些方面比其他方面做得更好时应该回答的问题。 注意:列出的答案是我认为最好的,即使其他产品支持给定的功能或需求。

    • 你是在建模还是在画画?(图纸- ArgoUML ,免费实现,以及 Visio )
    • 你将来会做模特吗?(用于基本建模.付费产品的社区版)
    • 你想通过概要文件或元模型来形式化你的建模吗?OCL?( Sparx ,RSM, Visual Paradigm )
    • 你关心模型的可移植性,XMI的支持吗?( GenMyModel , Sparx , 视觉范式 , Altova )
    • 您是否有一套需要使用的现有文档?(取决于文件)
    • 您想要生成代码存根还是完整的功能代码?( GenMyModel , 视觉范式 , Sparx , Altova )
    • 您是否需要更成熟的过程,如用例管理、模式创建、资产创建、RUP集成等?(RSA/RSM/IBM Rational产品)

    详细示例:在创建UML概要文件时,当涉及到实现类型关系时,IBMRationalSoftwareArchitect并没有完全实现UML2.0,但VisualParadigm和Sparx做得很好。
    好吧,这太详细了,所以一个更简单的例子是 ArgoUML ,它没有代码生成功能,更侧重于绘图,而不是UML的建模方面。
    Sparx 视觉范式 做UML真的很好,生成代码也很好,然而,与项目生命周期和其他过程挂钩是RSM/RSA的优势所在。
    注意封闭的或特定于产品的代码生成过程或框架,因为您最终可能会被该产品卡住。

    这是一个直接的大脑转储,因此一些细节可能并不完美,然而,这应该为需要调查的问题和解决方案提供一个大致的地图。

    新的-发现了一个很好的列表,里面有许多UML工具的描述。 Wiki UML Tool List

        2
  •  99
  •   Steve Hanov    8 年前

    仅限序列图,请尝试 websequencediagrams.com 。这是一款免费的增值(基本任务免费,高级功能付费)产品,可以让你快速绘制图表,而不用担心线条和模板。

    Alice->Bob: Authentication Request
    note left of Bob: Bob thinks about it
    Bob->Alice: Authentication Response
    

        3
  •  46
  •   Sean Kearon    16 年前

    对我来说,这是Sparx Systems的企业架构师。一个非常全面的UML工具,价格非常合理。

    非常强大的功能列表,包括:集成项目管理、基线化、导出/导入(包括导出到html)、从模型生成文档、各种模板(Zachman、TOGAF等)、IDE插件、代码生成(使用可用于Visual Studio、Eclipse和其他的IDE插件)、自动化API-列表还在继续。

    哦,是的,不要忘记直接从工具内部支持源代码管理(SVN、CVS、TFS&SCC)。

    我也会远离Visio——你只能得到图表,而不是模型。在UML建模工具中的一个位置重命名类,然后在所有位置重命名。这是 Visio中的案例!

        4
  •  45
  •   popopome    11 年前

    对于我的简单&UML工作时间短, 我使用过这个工具:

    StarUML- http://staruml.sourceforge.net/en/

    伟大的免费软件UML绘图。


    虽然最初的StarUML不再被维护,但现在有一个名为 White Star UML ,正在积极开发。

        5
  •  31
  •   Henrik Gustafsson    7 年前

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

    使用时 Visio ,我倾向于使用 these 我UMLing需要的模板(内置的有点糟糕)。我可能已经习惯了它,因为它是我当前任务中的主要绘图工具。

    OmniGraffle 还内置了一些UML模板,更多内容可在 Graffletopia ,但我不建议将其作为一个绘图工具,因为它有太多的怪癖(怪癖对很多事情都有好处,但对UML没有好处)。不过免费试用,所以无论如何…:)

    我一直在尝试 MagicDraw 有点,但在功能上,我发现用户界面分散了注意力。

    否则我会发现 Topcased 一个有趣的项目(或一组项目)。上次我使用它时,它仍然有一些错误,但它起了作用,而且似乎从那以后进化得很好。适用于任何支持Eclipse的平台。自由如言论和啤酒:)

    至于绘图工具 Dia ,它很难看(界面和生成的图形),但它确实完成了任务。一个有趣的无需建模工具的替代方案是 Umbrello ,但我真的没怎么用。

    我完全同意 mashi 白板很棒(和数码相机或手机一起)。

    也许我用过的一些最好的工具属于 Rational 工具系列。

        6
  •  24
  •   Maggie Leber    16 年前

    你可能正在寻找一个自动工具,它会自动为你生成很多东西。但是这里有一个免费的,通常功能强大的绘图工具,不仅对UML有用,而且对所有类型的绘图任务都有用。它接受各种常用文件格式的输入和输出。它叫yEd worth a look

        7
  •  21
  •   Huppie    16 年前

    Visual Paradigm for UML http://content.usa.visual-paradigm.com/websiteimages/images/products/vpuml60/vpumltitle.gif

    我很喜欢 Visual Paradigm for UML 它非常强大 Community Edition 而且便宜 Personal Edition

    Agilian http://content.usa.visual-paradigm.com/websiteimages/images/products/ag10/agtitle.gif

    对于敏捷建模 Agilian 它更灵活,添加了额外的功能来支持智能板,并且还知道思维导图。

    我最喜欢他们产品的地方是灵活性。我现在在工作中使用Enterprise Architect,但我认为它不够聪明。我希望能够快速头脑风暴一些序列图,并让应用程序在后台保持我的模型的最新状态,这是VPUML做得很好的事情。

    在我看来,它比Enterprise Architect要好得多,尽管这也是一个很好的工具:)

        8
  •  19
  •   3 revs, 3 users 78%<br/>Silvia&#13; &#13;    4 年前

    看看 BOUML :多平台(QT),运行良好,支持协作工作。

    BOUML是一个免费的UML2工具箱(正在开发中),允许您用C++、Java、Idl、Php和Python指定和生成代码。

    BOUML在Unix/Linux/Solaris、MacOSX(PowerPC和Intel)和Windows下运行。

    从…起 Wikipedia :

    4.23版本之前的版本是根据GPL许可的免费软件。BOUML5及更高版本是专有软件。

        9
  •  18
  •   Eric Scrivner    16 年前

    如果你想走出家门,在不学习复杂新工具的情况下使用UML,我会去看看 Violet UML .我过去曾用它取得过一些相当大的成功。

        10
  •  17
  •   andreas buykx    15 年前

    PlantUML 是Java中UML图表工具的一种开源标记语言,值得在这里提及。它在可用性方面排名靠前,因为它对各种图表和图表组件具有直观的语法。

        11
  •  14
  •   Doug    16 年前

    Dia 是一个可能的选择。它绝对不是最好的工具,但它很实用。

        12
  •  13
  •   André Casteliano    16 年前

    Sparx系统的Enterprise Architect是我使用过的最好的工具。199美元(专业版)有点贵,但IMO值得。

        13
  •  13
  •   PhiLho    16 年前

    我会补充 UMLet 我还没有尝试过,但已经在我的办公室被选中开始做图表。
    看起来很简单,图表并不性感,但就你能做的图表类型而言,它似乎相当完整。似乎也有很好的导出功能(重要!),很灵活,可以支持自定义组件),可以用作Eclipse插件。

        14
  •  11
  •   Henry    13 年前

    Astah UML (前JUDE)相当不错。

        15
  •  10
  •   user2189331    16 年前

    我还没有找到一个一流的免费UML绘图工具,但如果你对纯粹的绘图感兴趣,而不是往返工程,我会选择Microsoft Visio。如果你想要完整的往返工程,RationalRose。

    list of UML tools 维基百科上也可能派上用场。

        16
  •  10
  •   Marcin    16 年前

    笔和纸。如果您可以将扫描转换为矢量格式,那么在进行小的修改时可能会很有用。

        17
  •  10
  •   Chands    15 年前

    你应该试试Creately。在浏览器中运行,可以进行团队协作。

    支持序列图、类、ER、用例等,效果很好,并且有可用的免费版本。

    Creately.com

        18
  •  9
  •   nemophrost    14 年前

    您也可以退房 Lucid Chart 用于uml和其他类型的图表绘制。

        19
  •  8
  •   Sean Gough    14 年前

    别忘了 yuml.me ,我喜欢它。

        21
  •  4
  •   alexander.o.krutyakov    13 年前

    在我的实践中,我使用 Sequence Diagram Editor 。这是一个非常快速和有用的工具。我不喜欢它的一点是它是商业产品,而不是免费的。

        22
  •  4
  •   Lukasz Dziedzia    11 年前

    我喜欢前面在这个帖子中提到的VisualParadigm。它功能强大且易于使用,我认为与其他工具相比,它提供了最大的功能。

    如果你需要简单、快速、简单(免费)的东西,有一个很棒的工具叫 UMLet - 我强烈推荐这个 .我已经尝试了很多UML图表工具,这是最简单的一个(它仍然允许制作很棒的图表)。这是我的选择:)

        23
  •  3
  •   John    16 年前

    显然,从长远来看,如果你对UML很认真,你需要使用一个软件UML工具,就像其他答案中建议的那样,但我发现白板是UML绘图的最佳工具之一,尤其是在设计阶段,或者当你正在探索不同的替代方案时。在我的脑海中,没有什么能比得上白板的速度/灵活性。假设你的身体处于同一位置,它们也非常适合协作。

        24
  •  3
  •   Veera    16 年前

    在里面 my opinion 例图 是最好的。

        25
  •  3
  •   Maxim Veksler    16 年前

    我不敢相信没有人提到NetBeans UML编辑器,它很棒,满足了我所有基于Java的UML需求。

    这是在我测试了JDeveloperUML、ArgoUML和StarUML之后。

        26
  •  3
  •   James    15 年前

    我最近做了一项民意调查“ What UML Tools do you use ?“在我的博客中。NetBeans UML是首选开源,Enterprise Architect是首选商业。

        27
  •  3
  •   Esther Fan - MSFT    7 年前

    您可以在VisualStudio2010Ultimate中创建UML类、序列、组件、用例和活动图。您可以将这些关系图链接到TeamFoundation工作项,以便规划和跟踪开发和测试工作。您还可以从代码中创建序列图、依赖关系图和层图,并使用体系结构资源管理器浏览和探索您的解决方案。

    我在上发布了更多链接 my profile 了解更多信息。

        28
  •  2
  •   Martin Klinke    16 年前

    你可能想看看 MagicDraw Visual Paradigm for UML 。两者都提供社区版本,当然,这些版本并没有涵盖全部功能范围,但如果您只想创建图表,而不想生成代码或进行完整的往返工程,则可能已经足够了。

        29
  •  2
  •   user8690    16 年前

    Rational和Together/J是最好的产品,但价格昂贵。

    根据我的经验,我喜欢Eclipse Omondo和Sparx Enterprise Architect。Omondo与Eclipse很好地集成在一起生成代码,并且有一种非常直观的感觉。然而,它与Java有着紧密的联系。Sparx是一个很好的价格工具,但缺乏完整的UML2.0图。

    不要麻烦波塞冬。它是有缺陷的,臃肿的,不适用于所有的意图和目的。

        30
  •  2
  •   Andrei Savu    16 年前

    对于序列图,您也可以尝试 Trace Modeler 。它不是免费的,但它有一个很棒的界面,非常友好和高效。你可以在任何平台上使用它。