Question

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

Était-ce utile?

La solution

Voici quelques options:

Guide pas à pas du reverse engineering 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

Modélisateur UML Umbrello - http://uml.sourceforge.net/

Liste des autres outils à consulter - http://plg.uwaterloo.ca/ ~ migod / uml.html

Autres conseils

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

Je pense que Enterprise Architect peut le faire.

J'ai développé un outil appelé Doxygraph permettant d'analyser le code XML généré par Doxygen et transformez-le en diagramme de classes UML interactif que vous pouvez afficher dans un navigateur Web ou importer dans tout logiciel pouvant lire Graphviz " dot " fichiers.

Je trouve que Wikipedia peut être une excellente source d’information sur de tels outils, en particulier pour les tableaux de comparaison. Il existe une page sur les outils UML . Voir en particulier la colonne langues à gestion inversée .

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

Celui qui veut UML mérite Rational Rose :)

J'ai utilisé Rational Rose et Rational Rhapsody pour le reverse engineering de grands projets. Je préférerais que Rational Rhapsody obtienne les fichiers de classe UML pour C ++!

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

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

StarUML fait exactement cela et est gratuit. Malheureusement, il n'a pas été mis à jour depuis un moment. Il y a eu quelques projets dérivés (les administrateurs du projet ne le permettant pas, mais ceux-ci sont morts morts eux aussi.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top