敏捷 UML 图形化建模软件

3

我已经试用了大约7-8个UML程序,从简单到相对复杂都有,但是仍然没有找到一款我喜欢的软件。

Gliffy是最接近正确方向的。它的功能有限,这意味着没有任何东西会妨碍你绘图。它还可以与我的问题跟踪器和Wiki集成,这非常棒。但它缺少活动和状态图的符号。另外,它的连接过程有点笨拙。

所以我还在使用MagicDraw。它的连接模式可以快速地生成漂亮的图表。但是这个程序对我来说太过于复杂了。我只想在类框中输入<<cat>>,而不是首先在UML配置文件中定义它为一个新的构造型等等...另外,这个程序加载和保存等等都需要很长时间。

Autodesk Sketchbook和图形平板几乎已经足够好了,我将其用作白板来处理各种事情。虽然快速,但当然也很混乱,而且在基于矢量的绘图工具中移动符号并保持连接要快得多。

因此,我继续寻找适合敏捷开发人员使用的UML图形绘制软件,可以快速地进行草图设计,而不必与工具进行斗争或被其减速。没有反向工程或代码生成业务,也没有“智能”功能将你锁定在标准UML中。我知道要画什么,我只想要一个足够的工具包来加速它。

Visio和ArgoUML以及Dusan的某些其他东西我试用了5分钟就不喜欢了?

有人使用过一些不需要学习其怪癖的软件吗?

编辑:Windows平台。


我不同意反向工程不应该被使用,因为如果代码被更改,那么所有的图表都会丢失,你需要重新绘制它们!我使用合并机制,即使代码被重构,也可以更新我的图表。这个合并非常容易。 - UML GURU
我使用纸和笔。多年前我学会了大部分技巧。 - Matt Ellen
9个回答

5

你试过http://yuml.me/吗?它是一款以文本驱动的超级简单工具。如果你不想使用过载的工具,那么它正好合适。

你只需要输入:

# Cool UML Diagram
[Customer]+1->*[Order]
[Order]++1-items >*[LineItem]
[Order]-0..1>[PaymentMethod]  

它会生成这样的图表: 在此输入图片描述

不,我没有尝试过,但在像这样的论坛上看到过几次。非常适合向他人说明或后期文档化,但我不确定它是否适用于即时视觉设计。 - jontyc
这是一个Rails应用程序。图表很好看,但它是一个闭源应用程序。 - Vanuan

3
尝试使用PlantUML,它易于使用。在您喜欢的文本编辑器中编写以下行:
@startuml
class Cat << cat >>
@enduml

运行PlantUML。您将在同一目录中获得一个漂亮的图表:

PlantUML示例


我之前没有接触过PlantUML,但是我认为它与我在这里对yuml帖子的评论相同。 - jontyc
@stebbo 这种基于文本的工具的主要优点是可以轻松地放入版本控制中。现在我明白你不需要这样的优势。因此,我已经发布了另一个答案,请参见下面。 - Vanuan

1

如果你使用的是Mac电脑,你可以尝试使用OmniGraffle。它可以轻松地绘制图表,但可能只支持最常见的4或5种UML图表类型。


啊,说得好,我在使用Windows系统。 - jontyc

1
有没有人用过一些不需要学习其怪癖就能轻松使用的东西?
我想你已经知道答案了:“不可能。”
我曾经喜欢 JUDE,因为社区版做得很好。自从他们改名为Astah后,它已经被削弱了。
我再问一个问题:UML真的那么重要吗?它感觉像是一个90年代的想法,早已过时。UML和敏捷不应该放在同一个句子中。这通常意味着BUFD和架构组强制执行的标准。
Autodesk Sketchbook和图形平板几乎足够好,我将其用作我的白板来记录大量事情。当然,它很快但也很凌乱,而且在基于矢量的绘图工具中移动符号并保持连接要快得多。
我喜欢这个解决方案。它似乎更符合您想要的精神。为什么这不够好呢?

我认为这是可能的,因为许多事情已经很接近了。从未使用过Gliffy的人也可以立即绘制图表。将Gliffy与MagicDraw的连接线流程和更完整的符号集混合在一起,就会有一个成功者。 - jontyc
我同意在UML和标准合规方面过于沉迷是一种完全的分心。但我发现UML的基础知识对于绘图非常好用,我只需要快速地画出草图来更好地可视化任务,通常将其附加到跟踪器中的功能/问题上,然后真的再也不会看它了。 或者,敏捷开发者是否有其他偏爱的绘图符号? - jontyc
Sketchbook非常好,因为您不会用完白板,并且可以保存相机快照和导入过程。我只是觉得电脑打字比我的手写更容易一眼浏览,而且移动物品或扩展框以适应插入更多文本需要更多时间,这不是我所希望的。 - jontyc

1

那么Gaphor呢?使用UMLasSketch时,Gaphor非常有用,因为它允许您在同一模型中混合来自不同类型图表的元素。


我会试着玩一下。谢谢。 - jontyc

1
这可能听起来有点疯狂,但你最近尝试过使用Google Docs吗? Google绘图中的图表符号和连接器非常好用 - 似乎比Visio更符合“我的思考方式”。
此外,您还可以享受在线存储和共享的好处,只需简单的URL即可。

我试玩了一下,但是相比于像素绘图程序来说,速度太慢了。但还是谢谢你指出它,可能在其他用途上会派上用场。 - jontyc

1
如果您正在寻找一款可视化建模工具,请尝试使用 Dia

1
如果您正在使用Java,则XMI到Java IDs映射非常重要。
关于您在图表中的“cat”自由文本,请不要忘记,在UML中,您有两个级别的自定义。您可以在类名前面使用自由文本或构造型。此选项通常称为关键字。关于构造型,它需要创建一个具有自己规则的配置文件。对于您的示例,“cat”关键字更好。

这个Omondo可能有潜力,虽然我不常使用Java,而且永远也不打算再接触Eclipse了(如果需要的话,我还不知道)。我会在这周内进行探索。 - jontyc
回复:关于自由文本/刻板印象,我试图避免严格的UML形式主义。在白板上,我可以毫无限制地画出尖括号,这就是我在UML图形工具中追求的。 - jontyc

0

对我来说,最好的建模工具(用于UML、E-R、BPM等)是Sybase PowerDesigner,但价格昂贵(许可证在数千美元范围内)。

一种更便宜的替代方案是Sparx Enterprise Architect。


太过复杂了——在绘制简单的图表之后,使用 Nestor。 - jontyc
我正在制作一个用于“简单”绘图的工具,希望有一天能够支持UML,但是今年我的重点是概念映射。 - Néstor Sánchez A.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接