web-dev-qa-db-fra.com

Générer du langage UML à partir de code C ++?

Existe-t-il un outil permettant d’analyser des fichiers C++ dans un projet et d’en générer du langage UML?

99
gak

Voici quelques options:

Guide pas à pas pour inverser la conception de code dans des diagrammes UML avec Microsoft Visio 2000 - http://msdn.Microsoft.com/en-us/library/aa140255 (office.10) .aspx

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

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

Ingénierie inverse du diagramme de classes UML à partir de code C++ en présence de conteneurs faiblement typés (2001) - http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.9064

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

Une liste d'autres outils à regarder - http://plg.uwaterloo.ca/~migod/uml.html

67
jwpfox

Si ce ne sont que des diagrammes que vous voulez, doxygen fait un très bon travail.

47
user48956

Je crois que Enterprise Architect peut le faire.

15
cschol

J'ai développé un outil appelé Doxygraph qui peut analyser le XML généré par Doxygen et le transformer en un diagramme de classes UML interactif que vous pouvez visualiser dans un navigateur Web ou importer dans tout logiciel pouvant lire Graphviz " point "fichiers.

15
Oktalist

Je trouve que Wikipedia peut être une excellente source d’information sur de tels outils, en particulier pour les tableaux de comparaison. Il y a une page sur outils UML . Voir en particulier la colonne langages désossés .

7
Rhubbarb

ML Studio le fait très bien dans mon expérience, et fonctionnera en "mode gratuit" pour les petits projets.

5
Patrick Johnmeyer

Semble Umbrello produit le meilleur UML à partir de code C++ (suggère d’utiliser la dernière version> = 2.22) en le comparant à la ligne de commande autodia pour Dia et d’autres outils.

StarUML n’a pas produit de bons diagrammes pour moi: une importation étrange, non utilisable, ne fonctionne pas pour beaucoup de gens: https: // github. com/staruml/Cpp/issues

2

J'ai utilisé Rational Rose et Rational Rhapsody pour l'ingénierie inverse de grands projets. Je préférerais que Rational Rhapsody obtienne les fichiers de classe UML pour C++!

2
Shan

Celui qui veut UML mérite Rational Rose :)

2
obecalp

StarUML fait justement cela et c'est gratuit. Malheureusement, il n'a pas été mis à jour depuis un moment. Il y avait quelques projets dérivés (car les administrateurs du projet ne permettaient pas de le prendre en charge), mais eux aussi sont morts d'une mort.

1
graham.reeds