Создание UML из кода C++? [закрытый]

есть ли инструмент, который может анализировать файлы C++ в проекте и генерировать UML из него?

10 ответов


вот несколько вариантов:

шаг-за-шагом руководство, чтобы реинжиниринг код в UML-схем в Microsoft Visio с 2000 - http://msdn.microsoft.com/en-us/library/aa140255(офис.10).аспн

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

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

обратное проектирование диаграммы классов UML из кода C++ при наличии слабо типизированных контейнеров (2001) - http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.9064

Umbrello UML Modeller -http://uml.sourceforge.net/

список других инструментов для просмотра -http://plg.uwaterloo.ca / ~migod/uml.html


Если его просто диаграммы, которые вы хотите,помощи Doxygen делает довольно хорошую работу.


Я считаю Enterprise Architect можете это сделать.


Я разработал инструмент под названием Doxygraph который может анализировать XML, созданный Doxygen и превратить его в интерактивную диаграмму классов UML, которую вы можете просматривать в веб-браузере или импортировать в любое программное обеспечение, которое может читать файлы Graphviz "dot".


Я считаю, что Википедия может быть отличным источником информации о таких инструментах, особенно на сравнительных таблиц. Есть страница, на UML tools. См., в частности реверс-инжинирингом языков


UML Studio делает это довольно хорошо в моем опыте и будет работать в "бесплатном режиме" для небольших проектов.


кто хочет UML заслуживает Рациональная Роза :)


Я использовал Rational Rose и Rational Rhapsody для больших проектов обратного проектирования. Я бы предпочел Rational Rhapsody для получения файлов классов UML для C++ !


кажется Umbrello производит лучший UML из кода C++ (предложите использовать последнюю версию >= 2.22) по сравнению с командной строкой autodia на Dia и другие инструменты.

StarUML не произвели хорошие диаграммы для меня: странный импорт, не используется, не работает для многих людей:https://github.com/staruml/Cpp/issues


StarUML делает именно это, и это бесплатно. К сожалению, он не обновлялся некоторое время. Было несколько ответвлений проектов (поскольку администраторы проекта не позволили бы его взять на себя), но они тоже умерли смертью.