Создание 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 делает довольно хорошую работу.
Я разработал инструмент под названием Doxygraph который может анализировать XML, созданный Doxygen и превратить его в интерактивную диаграмму классов UML, которую вы можете просматривать в веб-браузере или импортировать в любое программное обеспечение, которое может читать файлы Graphviz "dot".
Я считаю, что Википедия может быть отличным источником информации о таких инструментах, особенно на сравнительных таблиц. Есть страница, на UML tools. См., в частности реверс-инжинирингом языков
UML Studio делает это довольно хорошо в моем опыте и будет работать в "бесплатном режиме" для небольших проектов.
Я использовал Rational Rose и Rational Rhapsody для больших проектов обратного проектирования. Я бы предпочел Rational Rhapsody для получения файлов классов UML для C++ !
кажется Umbrello производит лучший UML из кода C++ (предложите использовать последнюю версию >= 2.22) по сравнению с командной строкой autodia на Dia и другие инструменты.
StarUML не произвели хорошие диаграммы для меня: странный импорт, не используется, не работает для многих людей:https://github.com/staruml/Cpp/issues
StarUML делает именно это, и это бесплатно. К сожалению, он не обновлялся некоторое время. Было несколько ответвлений проектов (поскольку администраторы проекта не позволили бы его взять на себя), но они тоже умерли смертью.