Gibt es ein Tool, das C ++ - Dateien in einem Projekt analysieren und daraus UML generieren kann?
113
Hier sind einige Optionen:
Schritt-für-Schritt-Anleitung zum Umkehren von Engineering-Code in UML-Diagramme mit 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/
Reverse Engineering des UML-Klassendiagramms aus C ++ - Code bei schwach typisierten Containern (2001) - http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.9064
Umbrello UML Modeller - http://uml.sourceforge.net/
Eine Liste anderer Tools zum Anschauen - http://plg.uwaterloo.ca/~migod/uml.html
Wenn es nur Diagramme sind, die Sie wollen, macht doxygen einen ziemlich guten Job.
quelle
Ich glaube, Enterprise Architect kann das.
quelle
Ich habe ein Tool namens Doxygraph entwickelt , mit dem das von Doxygen generierte XML analysiert und in ein interaktives UML-Klassendiagramm umgewandelt werden kann, das Sie in einem Webbrowser anzeigen oder in eine Software importieren können, die Graphviz-Punktdateien lesen kann.
quelle
Ich finde, dass Wikipedia eine großartige Informationsquelle über solche Tools sein kann, insbesondere für Vergleichstabellen. Es gibt eine Seite über UML-Tools . Siehe insbesondere die Spalte Reverse Engineered Languages .
quelle
UML Studio macht dies meiner Erfahrung nach recht gut und wird für kleine Projekte im "Freeware-Modus" ausgeführt.
quelle
Scheint, als würde Umbrello die beste UML aus C ++ - Code (empfehlen Sie die Verwendung der neuesten Version> = 2.22) im Vergleich zu Befehlszeilen- Autodia für Dia und andere Tools erstellen .
StarUML hat für mich keine guten Diagramme erstellt: Seltsamer Import, nicht verwendbar, funktioniert bei vielen Menschen nicht: https://github.com/staruml/Cpp/issues
quelle
Wer UML will, verdient Rational Rose :)
quelle
Ich habe Rational Rose und Rational Rhapsody für das Reverse Engineering großer Projekte verwendet. Ich würde Rational Rhapsody bevorzugen, um die UML-Klassendateien für C ++ zu erhalten!
quelle
StarUML macht genau das und es ist kostenlos. Leider wurde es eine Weile nicht aktualisiert. Es gab ein paar Ablegerprojekte (da die Projektadministratoren nicht zuließen, dass sie übernommen werden), aber auch sie sind eines Todes gestorben.
quelle