¿Generando UML a partir de código C ++? [cerrado]


113

¿Existe una herramienta que pueda analizar archivos C ++ dentro de un proyecto y generar UML a partir de él?

Respuestas:


74

Aquí hay algunas opciones:

Guía paso a paso para el código de ingeniería inversa en diagramas UML con 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/

Ingeniería inversa del diagrama de clases UML a partir del código C ++ en presencia de contenedores de tipo débil (2001) - http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.9064

Modelizador UML de Umbrello: http://uml.sourceforge.net/

Una lista de otras herramientas para mirar: http://plg.uwaterloo.ca/~migod/uml.html


Reaceptado a la respuesta más completa.
GAK

1
BoUML ( bouml.fr ) está disponible para Linux, Windows y Mac.
Rhubbarb

2
Vea preguntas similares aquí y aquí y aquí .
Keshava GN

8
¡BoUML no es gratis!
buceo profundo

2
StarUML falló mucho en producir cualquier cosa útil.
máscara de bits

53

Si lo que desea es solo diagramas, doxygen hace un trabajo bastante bueno.


2
Acabo de obtener la jerarquía de clases completa en un proyecto LOC + 300K con Doxygen, ¡realmente hace un trabajo bastante bueno!
HFSDev

15

Creo que Enterprise Architect puede hacer eso.


2
De hecho, lo hace y lo hace bien. Lo he estado usando durante años, y para mí es, con mucho, la mejor herramienta de precio / rendimiento (entre las que usé). También probé StarUML y Together; el primero tiene potencial, pero aún está incompleto. El segundo es dolorosamente lento.
Fabio Ceconello

Sin embargo, no probé Rational Rose, ya que está muy por encima de mi rango de precios aceptable.
Fabio Ceconello

15

Desarrollé una herramienta llamada Doxygraph que puede analizar el XML generado por Doxygen y convertirlo en un diagrama de clase UML interactivo que puede ver en un navegador web o importar a cualquier software que pueda leer archivos Graphviz "dot".


2
¡Muy buena aplicación! Aparte del hecho de que depende de muchas librerías que no tenía (descargadas más tarde de cpan), todo funciona perfectamente. ¡Gracias!
Rubens



3

Parece que Umbrello produce el mejor UML a partir del código C ++ (se sugiere usar la última versión> = 2.22) en comparación con el autodiagnóstico de línea de comandos para Dia y otras herramientas.

StarUML no me ha producido buenos diagramas: importación extraña, no utilizable, no funciona para muchas personas: https://github.com/staruml/Cpp/issues



2

He utilizado Rational Rose y Rational Rhapsody para grandes proyectos de ingeniería inversa. ¡Preferiría Rational Rhapsody para obtener los archivos de clase UML para C ++!


1

StarUML hace precisamente eso y es gratis. Desafortunadamente, no se ha actualizado durante un tiempo. Hubo un par de proyectos derivados (ya que los administradores del proyecto no permitirían que se hiciera cargo), pero ellos también murieron.


1
StarUML no ha producido buenos diagramas para mí extraña importancia. @Rhubbarb, también funciona en Linux y Mac.
Aleksey Kontsevich

El último lanzamiento ahora es agosto de 2018, por lo que se ha recuperado nuevamente
bart s
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.