从C ++代码生成UML?

有没有一个工具可以parsing项目中的C ++文件,并从中生成UML?

这里有几个选项:

使用Microsoft Visio 2000将工程代码逆向转换为UML图的分步指南 – http://msdn.microsoft.com/zh-cn/library/aa140255(office.10).aspx

BoUML – http://bouml.fr/features.html

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

在弱types容器的情况下从C ++代码逆向工程UML类图(2001) – http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.9064

Umbrello UMLbuild模器 – http://uml.sourceforge.net/

其他工具清单 – http://plg.uwaterloo.ca/~migod/uml.html

如果它只是你想要的图表, doxygen做得不错。

我相信企业架构师可以做到这一点。

我开发了一个名为Doxygraph的工具,它可以parsing由Doxygen生成的XML,并将其转换成交互式UML类图,您可以在Web浏览器中查看或导入任何可以读取Graphviz“点”文件的软件。

我发现维基百科可以成为关于这些工具的重要信息来源,特别是对比表。 有一个关于UML工具的页面。 特别参见反向工程语言列。

UML Studio在我的经验中做得相当好,并且将以小型项目的“免费模式”运行。

谁想要UML值得Rational Rose 🙂

我已经使用Rational Rose和Rational Rhapsody来逆向工程大型项目。 我更喜欢Rational Rhapsody获取C ++的UML类文件!

StarUML就是这样,而且是免费的。 不幸的是它还没有更新一段时间。 有几个分支项目(因为项目pipe理员不允许它被接pipe),但是他们也死了。

似乎Umbrello从C ++代码生成最好的UML(build议使用最新版本> = 2.22),与Dia和其他工具的命令行autodia相比。

StarUML没有为我制作出好的图表:奇怪的导入,不可用,不适用于很多人: https : //github.com/staruml/Cpp/issues