¿Cuál es la mejor herramienta de diagramación UML? [cerrado]


490

Estoy tratando de elegir una herramienta para crear diagramas UML de todos los sabores. La usabilidad es un criterio importante para mí, pero aún así tomaría más poder con una curva de aprendizaje más pronunciada y sería feliz. Gratis (como en la cerveza) sería bueno, pero estaría dispuesto a pagar si la herramienta lo vale. ¿Qué debería estar usando?


El mejor utilizable en mi opinión es yUML, consulte askuml.com
Tutorial de Rebol

IBM Rational Modeler tiene una versión gratuita, y si desea más funciones, puede pagar la versión corporativa. Estoy bastante satisfecho con eso.

Puede probar la distribución de herramientas de modelado de Eclipse . ¡Es Eclipse, y es gratis!
barista aficionado

Para la generación de modelos visuales basados ​​en texto, recomendaría yuml.me o plantuml.
AL

Respuestas:


354

Algún contexto: Recientemente, para la escuela de posgrado, investigué herramientas UML para la usabilidad y la comprensión UML en general para un proyecto independiente. También modelo / arquitecto para vivir.

Las publicaciones anteriores tienen demasiadas respuestas y no hay suficientes preguntas. Un malentendido común es que UML se trata de crear diagramas. Claro, los diagramas son importantes, pero realmente estás creando un modelo. Estas son las preguntas que deben responderse ya que cada producto / solución del proveedor hace algunas cosas mejor que otras. Nota: Las respuestas enumeradas son, en mi opinión, las mejores, incluso si otros productos son compatibles con una función o necesidad determinada.

  • ¿Estás modelando o dibujando? (Dibujo: ArgoUML , implementaciones gratuitas y Visio )
  • ¿Estarás modelando en el futuro? (Para modelos básicos - Ediciones comunitarias de productos de pago)
  • ¿Quieres formalizar tu modelado a través de perfiles o metamodelos? OCL? ( Sparx , RSM, Paradigma visual )
  • ¿Le preocupa la portabilidad del modelo, el soporte XMI? ( GenMyModel , Sparx , Visual Paradigm , Altova )
  • ¿Tiene un conjunto de documentos existente con el que necesita trabajar? (Depende de los documentos)
  • ¿Desea generar código auxiliar o código de funcionamiento completo? ( GenMyModel , Visual Paradigm , Sparx , Altova )
  • ¿Necesita procesos más maduros, como gestión de casos de uso, creación de patrones, creación de activos, integración RUP, etc.? (Productos RSA / RSM / IBM Rational)

Ejemplos detallados: IBM Rational Software Architect no implementó UML 2.0 completamente cuando se trata de realizar relaciones de tipo al crear un perfil UML, pero Visual Paradigm y Sparx lo hicieron bien.
Ok, eso era demasiado detallado, por lo que un ejemplo más simple sería ArgoUML , que no tiene características de generación de código y se centra en dibujar más que el aspecto de modelado de UML.
Sparx y Visual Paradigm hacen UML realmente bien y generan código bien, sin embargo, engancharse en los ciclos de vida del proyecto y otros procesos es donde RSM / RSA es fuerte.
Tenga cuidado con los procesos o marcos de generación de código cerrados o específicos del producto, ya que podría terminar atrapado con ese producto.

Este es un tugurio directo, por lo que un par de detalles pueden no ser perfectos, sin embargo, esto debería proporcionar un mapa general de las preguntas y soluciones para investigar.

NUEVO: se encontró una buena lista de muchas herramientas UML con descripciones. Lista de herramientas UML de Wiki


2
¿podría incluir un enlace a su evaluación si se puede publicar? Recientemente realicé una evaluación más simple para un cliente y elegí Sparx EA (para modelos, codegen, importación de código, dibujo, extensible), que es lo suficientemente esbelto, todavía funciona muy bien en Macs de baja especificación en Virtual PC.
Andy Dent

1
Perdón por el retraso. Realmente investigué informalmente alrededor de las herramientas. Para mi investigación principal, ni siquiera usé una herramienta UML, solo papel y lápiz. He seguido buscando estas herramientas. Cada uno tiene sus puntos fuertes. RSM / RSA en mi opinión no funcionaría muy bien en equipos Mac de baja especificación, por ejemplo.
Ted Johnson

1
@Lucas & Ted: ArgoUML tiene la función de diagrama de secuencia, así como la generación de código. (0.30)
solotim

3
Disculpe, pero ¿cuál es la diferencia entre modelar y dibujar? ¿O quiere decir que el modelado es dibujar diferentes tipos de diagramas que están conectados entre sí mientras que el dibujo es solo dibujar diagramas estáticos que no tienen efecto en otros diagramas si se modifican y viceversa?
Muhammad Gelbana

3
Vi que GenMyModel está basado en la nube, los modelos están diseñados en un navegador web. Estoy convencido de que la colaboración debería ser otro elemento relevante en esta respuesta: compartir, modelado en tiempo real, gestión de versiones, repositorio ... Probé la mayoría de las herramientas uml de escritorio convencionales. No es fácil para varios miembros del equipo trabajar juntos en el mismo modelo. Esperemos que el modelado en línea cambie la forma en que muchas personas de TI evalúan y usan el modelado (UML) en sus proyectos de desarrollo cotidianos. Con mucho gusto leí más sobre modelado en línea. ¿Alguien sabe si es una tendencia en curso?
Georges

100

Solo para diagramas de secuencia, intente websequencediagrams.com . Es un producto freemium (gratuito para las tareas básicas, pagado por las funciones avanzadas), y le permite golpear rápidamente un diagrama sin preocuparse por las líneas y las plantillas.

Alice-> Bob: solicitud de autenticación
nota a la izquierda de Bob: Bob lo piensa
Bob-> Alice: respuesta de autenticación


66
Es interesante, pero no estoy seguro de ver el valor de que esté basado en la web; seguramente sería mejor tenerlo en tu PC y puedes guardar archivos, etc., y una GUI, arrastrar y soltar es seguramente más fácil que las secuencias de comandos que tienes saber.
Vidar

70
¿Por qué se vota tan alto por qué no responde la pregunta? Oh, bueno, estoy de acuerdo en que es un sitio web ingenioso. La primera línea de la pregunta dice "crear diagramas UML de todos los sabores". Lo rechazaría, pero soy débil, así que solo comentaré.
Ted Johnson

2
+1. Entré para compartir este también, dándome cuenta de que no responde la pregunta por completo. Los diagramas de secuencia siempre han parecido un poco incómodos / fuera de lugar cuando se yuxtaponen con el resto de UML, pero de todos modos son UML. En mi opinión, los diagramas de secuencia son la parte más valiosa de UML.
Justin Searls, el

22
¿Cómo se dice "No, tu otro se fue"?
Matt Brunell

77
Un usuario anónimo sugiere que también podría usar PlantUML , que es una herramienta gratuita de Java / Graphviz para generar diagramas UML a partir de texto. Es muy probable que esa sea la herramienta que este sitio web utiliza detrás de escena.
Cody Gray

46

Para mí es Enterprise Architect de Sparx Systems. Una herramienta UML muy redondeada por un precio muy razonable.

Lista de funciones muy sólida que incluye: gestión integrada de proyectos, líneas base, exportación / importación (incluida la exportación a html), generación de documentación desde el modelo, varias plantillas (Zachman, TOGAF, etc.), complementos IDE, generación de código (con complementos IDE disponibles para Visual Studio, Eclipse y otros), API de automatización: la lista continúa.

Ah, sí, no olvide el soporte para el control de fuente directamente desde el interior de la herramienta (SVN, CVS, TFS y SCC).

También me mantendría alejado de Visio: solo obtienes diagramas, no un modelo. Cambie el nombre de una clase en un lugar en una herramienta de modelado UML y cambie el nombre en todos los lugares. ¡Este no es el caso en Visio!


Después de probar una docena o dos herramientas UML, también me decidí por EA por Sparx. Sin embargo, estoy usando solo el 5-10% de sus capacidades ... :-)
Yarik

1
¿Soy solo yo o la gestión del diseño en EA es terrible al menos con las clases UML? Difícil cambiar el tamaño de las cosas y mostrar solo lo que quiero. El uso de diseños predeterminados pone las clases por todas partes. La herramienta se ve increíble, pero el diseño realmente me está haciendo pasar un mal rato.
Mark

1
Utilizo Visio para el modelado de bases de datos físicas (admitiendo que no es perfecto para la tarea) y esto no es cierto. Si cambio el nombre de una tabla, su nombre se reemplaza en todos los diagramas (dentro del mismo VSD, por supuesto). Por cierto, uso Sparx para el modelado UML.
Lluis Martinez

45

Para mi trabajo simple y corto en UML, he usado esta herramienta:

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

Gran software gratuito para dibujar UML.


Aunque el Star UML original ya no se mantiene, ahora hay una bifurcación llamada White Star UML , que se desarrolla activamente.


¿Staruml todavía está en desarrollo activo?
fawce

44
Desafortunadamente parece que es solo para Windows. Ser multiplataforma es uno de mis primeros requisitos a la hora de elegir una herramienta para mi equipo.
Adam Byrtek el

44
Lamentablemente, el proyecto parece estar muerto. Consulte la discusión reciente en source forge para obtener más detalles: sourceforge.net/forum/…
Piotr Czapla

StarUML no reconoce la nueva sintaxis de java1.6. Está muerto.
solotim


31

Como usualmente uso UML más como una herramienta de comunicación en lugar de una herramienta de modelado, a veces tengo la necesidad de flexibilizar un poco el lenguaje, lo que hace que las herramientas de modelado estrictas sean bastante difíciles de manejar. Además, tienden a tener una gran sobrecarga para el sorteo ocasional. Esto también significa que no doy puntos de bonificación a las herramientas que manejan bien el modelado de ida y vuelta. Teniendo esto en cuenta...

Cuando uso Visio , tiendo a usar estas plantillas para mis necesidades de UMLing (el tipo incorporado es una mierda). Podría ser que me he acostumbrado ya que es la herramienta de diagramación principal en mi tarea actual.

OmniGraffle también tiene algunas plantillas UML incorporadas y hay más disponibles en Graffletopia , pero no lo recomendaría como herramienta de diagramación ya que tiene demasiadas peculiaridades (peculiaridades que son buenas para muchas cosas, pero no para UML). Sin embargo, prueba gratuita, así que por supuesto ... :)

He estado probando MagicDraw un poco, pero mientras funcionaba, encontré que la interfaz de usuario me distraía.

De lo contrario, el Topcased es un proyecto interesante (o grupo de proyectos). La última vez que lo usé todavía tenía algunos errores, pero funcionó y parece haber evolucionado muy bien desde entonces. Funciona muy bien en cualquier plataforma habilitada para Eclipse. Gratis como en discurso y cerveza :)

En cuanto a la herramienta de diagramación Dia , es bastante fea (interfaz y dibujos resultantes), pero hace el trabajo. Una alternativa gratuita de herramienta de modelado interesante es Umbrello , pero realmente no la he usado mucho.

Definitivamente estoy de acuerdo con mashi en que las pizarras son geniales (junto con una cámara digital o un teléfono celular).

Probablemente algunas de las mejores herramientas que he usado pertenecen a la familia de herramientas Rational .


2
+1 para Dia: es una pequeña herramienta agradable y absolutamente excelente para los diagramas de flujo. Sin embargo, Umbrello se estrella contra mí bastante (eso y Qt es un montón de basura de todos modos).
nuevo123456

24

Es posible que esté buscando una herramienta automatizada que genere automáticamente muchas cosas para usted. Pero aquí hay una herramienta de diagramación gratuita, generalmente poderosa, útil no solo para UML sino para todo tipo de tareas de diagramación. Acepta como entrada y salida a una amplia variedad de formatos de archivo de uso común. Se llama yEd, y vale la pena echarle un vistazo


3
El diseño se ve genial, es rápido y parece ser utilizable en 5 minutos. Una gran característica es que puede elegir cómo diseñar el diagrama: jerárquico, orgánico, estilo UML, circular o similar a un árbol. Lo hace en un abrir y cerrar de ojos. Hasta ahora tengo algunas reservas para el software escrito en Java, pero esto cambió mi creencia :)
J Pollack

21

Paradigma visual para UML http://content.usa.visual-paradigm.com/websiteimages/images/products/vpuml60/vpumltitle.gif

Soy muy aficionado a Visual Paradigm para UML. Es muy poderoso y tiene una edición comunitaria gratuita y económica. edición personal .

Agilian http://content.usa.visual-paradigm.com/websiteimages/images/products/ag10/agtitle.gif

Para el modelado ágil también hay Agilian, que es un poco más flexible, agrega funciones adicionales para admitir smartboards y también conoce el mapeo mental.

Lo que más me gusta de sus productos es la flexibilidad. Estoy usando Enterprise Architect en el trabajo hoy en día, pero creo que no es lo suficientemente inteligente. Quiero poder generar ideas rápidas sobre algunos diagramas de secuencia y hacer que la aplicación mantenga mi modelo actualizado en segundo plano, algo en lo que VPUML hace un muy buen trabajo.

En mi opinión, es mucho mejor que Enterprise Architect, aunque también es una gran herramienta :)


1
He usado la mayoría de las principales herramientas UML (la mayoría de las cuales ampliamente) (Rational Rose, Tau, Rhapsody, Enterprise Architect, Visio y varias otras) y accidentalmente me topé con Visual Paradigm, del que nunca había oído hablar. Sopla a todos los demás fuera del agua. Tiene sus peculiaridades, pero no es tan molesto trabajar con él (en comparación con los otros que son muy molestos) y es muy poderoso.
Dunk

2
Definitivamente Paradigma Visual. Lo he estado usando durante algún tiempo, y también evalué recientemente otras herramientas de modelado UML (gratuitas y comerciales), y Visual Paradigm es simplemente el mejor cuando se trata de usabilidad y estructura de interfaz de usuario clara. Además, todos los diagramas parecen ser absolutamente compatibles con los estándares (lamentablemente, no todas las herramientas de modelado lo son). Puedo decirlo, ya que también he trabajado recientemente a través de los estándares UML, MOF, XMI. VP es el favorito absoluto para mí.
Kissaki

19

Eche un vistazo a BOUML : multiplataforma (QT), funciona bastante bien y apoya el trabajo colaborativo.

BOUML es una caja de herramientas UML 2 gratuita (en desarrollo) que le permite especificar y generar código en C ++, Java, Idl, Php y Python.

BOUML se ejecuta en Unix / Linux / Solaris, MacOS X (Power PC e Intel) y Windows.

De Wikipedia :

Las versiones anteriores a la versión 4.23 son software libre licenciado bajo GPL. BOUML 5 y posterior es software propietario.


@Silvia +1 por recomendar BOUML. Es una pena que el desarrollador haya sido impulsado a dejar de desarrollarlo. A diferencia de otras herramientas que se parecen más a juguetes y están incompletas, esta en realidad es capaz de leer el código existente (ingeniería inversa) en varios idiomas y también importar de Rational (IBM) Rose y otras herramientas UML. Es nuestra pérdida que dejó de desarrollarlo.
WinWin

De hecho, el desarrollo acaba de detenerse en su forma gratuita, el desarrollador principal ahora utiliza licencias de pago, manteniendo actualizada la herramienta.
kikeenrique

De hecho, hay una bifurcación de la última versión de código abierto actualmente en desarrollo. Aunque todavía no está del todo allí, algunas cosas funcionan y funcionan mejor que en el original. Google "Douml"
Zeks

Además, me gustaría mucho ayuda en el desarrollo porque hay un montón de cosas para arreglar / hacer y solo hay un yo :( Atm, el proyecto es totalmente compatible con Qt4, pero no todos los enchufes funcionan debido a errores de portado que son un poco difíciles de eliminar, no
somos

18

Si está buscando salir y trabajar en UML sin tener que aprender una nueva herramienta compleja, verificaría Violet UML . Lo he usado con bastante éxito en el pasado.


Captura de pantalla: img516.imageshack.us/img516/2069/violeti.jpg . Es, con mucho, la mejor herramienta gratuita para uml en mi opinión
Chris S

Wow, acabo de probarlo y es increíble. Lo único en mi lista de deseos es alguna forma de redirigir las flechas. Es decir, darles un punto medio arrastrable.
sixtyfootersdude

17

PlantUML es una herramienta de código abierto de lenguaje de marcado a diagrama UML en Java que merece ser mencionada aquí. Ocupa un lugar destacado en la escala de usabilidad debido a su sintaxis intuitiva para los diversos diagramas y componentes del diagrama.


14

Dia es una posible elección. Definitivamente no es la mejor herramienta, pero es funcional.


Capturas de pantalla con el modo UML aquí: live.gnome.org/Dia/Screenshots
Janus Troelsen

Es una herramienta fácil de usar e ideal para mis propósitos de todos modos (solo diagramas, sin generación / integración de código, principalmente diagramas de clase). Se ejecuta en Linux, Winodws y MacOSX: el formato de archivo puede utilizarse en todas las plataformas.
dodgy_coder

13

Enterprise Architect de los sistemas Sparx es la mejor herramienta que he usado. Un poco caro a $ 199 (edición profesional), pero IMO vale la pena.


2
Realmente disfruto usando Enterprise Architect. No lo considero tan caro, especialmente para uso profesional. Y cuando lo comparas en precio y características con la rosa racional, gana sin dudas.
Ajaxx

después de hacer una evaluación para un cliente, estoy de acuerdo: ¡$ 199 es un valor excelente teniendo en cuenta que incluye importación de código y codegen! Nada estuvo cerca de la rentabilidad.
Andy Dent

por cierto, Visio profesional cuesta MUCHO más
Boris Treukhov

Para una empresa, 200 $ es solo medio día. Muy barato.
Lluis Martinez

13

Agregaré UMLet que aún no he probado, pero que he sido seleccionado en mi oficina para comenzar a hacer diagramas.
Parece simple, los diagramas no son atractivos, pero parece bastante completo con respecto al tipo de diagramas que puede hacer. Parece tener buenas capacidades de exportación también (¡importante!), Es flexible, puede admitir componentes personalizados) y puede usarse como complemento de Eclipse.


Acabo de empezar a usar UMLet hoy; en resumen, es simple, rápido y fácil.
Dolph

11

Astah UML (ex-JUDE) es bastante bueno.


Características faltantes: nomenclatura del estado inicial y final, anidamiento de diagramas jerárquicos de máquinas de estado en el mismo diagrama (diagramas de enlace de wo). Lo que es bueno: mejoras continuas, el autor se comprometió con las especificaciones UML, más que una simple herramienta de dibujo. Se ejecuta en UNIX. Tiene un largo camino por recorrer, para llevarlo al nivel de funcionalidad "Enterprise Architect".
user77115

10

No he podido encontrar una herramienta de diagramación UML gratuita de primer nivel, pero si está interesado en la diagramación pura, a diferencia de la ingeniería de ida y vuelta, optaría por Microsoft Visio. Si desea una ingeniería completa de ida y vuelta, Rational Rose.

Esta lista de herramientas UML en Wikipedia también puede ser útil.


10

Pluma y papel. Si puede obtener el escaneo en un formato vectorial, puede ser útil al realizar modificaciones menores.


Con el mismo bolígrafo puede escribir el código en otro papel y escanearlo. ¡Gracias a la OCRtecnología disponible , puede convertirlo al texto más adelante para su uso posterior! (Por cierto, ¡también uso lápiz y papel para diagramas solo porque es más rápido y también me gusta dibujar desde la infancia!)
Mahdi

10

Deberías probar Creately. Se ejecuta en su navegador y puede colaborar en equipo.

admite diagramas de secuencia, clase, ER, caso de uso, etc. funciona muy bien y tiene una versión gratuita disponible.

Creately.com


9

También puede consultar Lucid Chart para uml y otros tipos de diagramas.


Guau. LucidChart es impresionante para esto. He visto sus cosas de diagramas de flujo antes, pero estas herramientas UML son fáciles de usar y bastante completas para lo que necesito.
xiaoqun

También encontré que LucidChart es excelente para elaborar diagramas UML rápidos y atractivos. La cuenta gratuita le permite tener una cantidad ilimitada de diagramas, también puede exportar a PNG, JPEG, PDF, selección de área o documento completo. ¡Impresionado!
Cam




4

Me gusta VisualParadigm mencionado anteriormente en este hilo. Es potente y fácil de usar, creo que le da más poder en comparación con otras herramientas.

Si necesita algo simple, rápido y fácil (y gratuito), existe una gran herramienta llamada UMLet , lo recomiendo encarecidamente . He probado muchas de las herramientas de diagramación UML y esta es la más simple (y todavía permite hacer excelentes diagramas). Esta es mi eleccion:)


3

Obviamente, si usted es serio acerca de UML a largo plazo, necesita usar una herramienta UML de software como las sugeridas en las otras respuestas, pero he descubierto que una pizarra es una de las mejores herramientas para la creación de diagramas UML, especialmente durante el diseño fase, o cuando estás explorando diferentes alternativas. No hay nada mejor que una pizarra para la velocidad / flexibilidad en mi mente. También son excelentes para la colaboración, suponiendo que esté ubicado físicamente.



3

No puedo creer que nadie haya mencionado el editor UML de NetBeans, es genial y está satisfecho con todos mis requisitos UML basados ​​en Java.

Esto después de probar JDeveloper UML, ArgoUML y StarUML.



3

Puede crear diagramas de clase, secuencia, componente, caso de uso y actividad UML en Visual Studio 2010 Ultimate. Puede vincular estos diagramas a los elementos de trabajo de Team Foundation para poder planificar y realizar un seguimiento del desarrollo y el trabajo de prueba. También puede crear secuencias, gráficos de dependencia y diagramas de capas a partir del código y usar Architecture Explorer para explorar y explorar su solución.

He publicado más enlaces en mi perfil para obtener más información.


2

Es posible que desee echar un vistazo a MagicDraw o Visual Paradigm para UML . Ambos ofrecen ediciones comunitarias que, por supuesto, no abarcan el rango completo de características, pero que pueden ser suficientes si solo desea crear diagramas y no generar código o realizar ingeniería de ida y vuelta completa.


2

Rational y Together / J son los mejores productos, pero caros.

En mi experiencia, he disfrutado Eclipse Omondo y Sparx Enterprise Architect. Omondo se integra muy bien con Eclipse para la generación de código, y tiene una sensación muy intuitiva. Sin embargo, está fuertemente vinculado a Java. Sparx es una buena herramienta para el precio, pero carece de la gama completa de diagramas UML 2.0.

NO te molestes con Poseidón. Es defectuoso, hinchado e inutilizable para todos los efectos.


2

Para diagramas de secuencia también puede probar Trace Modeler . No es gratuito, pero tiene una excelente interfaz, muy amigable y productiva. Puedes usarlo en cualquier plataforma.

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.