¿Cuál es la mejor herramienta de diagtwigción UML?

Estoy tratando de elegir una herramienta para crear diagtwigs 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 empinada y sería feliz. Gratis (como en la cerveza) sería bueno, pero estaría dispuesto a pagar si la herramienta vale la pena. ¿Qué debería estar usando?

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

Las publicaciones anteriores tienen demasiadas respuestas y no suficientes preguntas. Un malentendido común es que UML se trata de crear diagtwigs. Claro, los diagtwigs son importantes, pero realmente estás creando un modelo. Estas son las preguntas que deben responderse ya que cada producto / solución de proveedor hace algunas cosas mejor que otras. Nota: Las respuestas enumeradas son mi opinión como la mejor 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 modelado básico – Ediciones comunitarias de productos de pago)
  • ¿Desea formalizar su modelado a través de perfiles o metamodelos? OCL? ( Sparx , RSM, Paradigma Visual )
  • ¿Le preocupa la portabilidad del modelo, la compatibilidad con XMI? ( GenMyModel , Sparx , Visual Paradigm , Altova )
  • ¿Tiene un conjunto existente de documentos con los que necesita trabajar? (Depende de los documentos)
  • ¿Desea generar códigos o código de funcionamiento completo? ( GenMyModel , Visual Paradigm , Sparx , Altova )
  • ¿Necesita procesos más maduros como administración de casos de uso, creación de patrones, creación de activos, integración de RUP, etc.? (RSA / RSM / IBM Rational Products)

Ejemplos detallados: IBM Rational Software Architect no implementó UML 2.0 por completo cuando se trata de realizar relaciones tipo al crear un perfil UML, pero Visual Paradigm y Sparx lo hicieron bien.
Ok, eso era demasiado detallado, así que un ejemplo más simple sería ArgoUML , que no tiene características de generación de código y se enfoca en dibujar más que el aspecto de modelado de UML.
Sparx y Visual Paradigm hacen muy bien el UML y generan buenos códigos, sin embargo, conectar RSM / RSA a 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 volcado cerebral 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 a las que se debe prestar atención.

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

Para diagtwigs de secuencia, solo, pruebe websequencediagrams.com . Es un producto de freemium (gratuito para las tareas básicas, pago de funciones avanzadas), y le permite sacar rápidamente un diagtwig sin ningún tipo de alboroto con líneas y galerías de símbolos.

 Alice-> Bob: Solicitud de autenticación
 nota a la izquierda de Bob: Bob piensa en ello
 Bob-> Alice: Respuesta de autenticación

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

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

Ah, sí, no te olvides del 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 diagtwigs, 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!

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

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

Gran software libre para dibujo UML.


Aunque el Star UML original ya no se mantiene, ahora hay un fork llamado White Star UML , que se desarrolla activamente.

Como generalmente utilizo UML más como una herramienta de comunicación que como 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 dibujo ocasional. Esto también significa que no doy herramientas que manejen bien el modelado de ida y vuelta ni ningún punto de bonificación. Teniendo esto en cuenta…

Cuando uso Visio , tiendo a usar estas plantillas para mis necesidades de UML (el tipo de succión incorporado). Podría ser que me he acostumbrado a él, ya que es la herramienta de diagtwigción primaria en mi asignación actual.

OmniGraffle también tiene algunas plantillas UML integradas y hay más disponibles en Graffletopia , pero no lo recomendaría como una herramienta de diagtwigción ya que tiene demasiadas peculiaridades (caprichos que son buenos para muchas cosas, pero no para UML). Prueba gratuita, así que por supuesto … 🙂

He estado probando MagicDraw un poco, pero aunque funcional, la interfaz de usuario me resultaba molesta.

De lo contrario, me parece que Topcased es un proyecto interesante (o un grupo de proyectos). La última vez que la 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 el habla y la cerveza 🙂

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

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 herramientas más bonitas que he usado pertenecen a la familia de herramientas Rational .

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

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 también tiene una Edición de Comunidad gratuita y una Edición Personal barata.

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 características adicionales para admitir los paneles inteligentes y también conoce el mapeo mental.

Lo que más me gusta de sus productos es la flexibilidad. Estoy utilizando Enterprise Architect en el trabajo hoy en día, pero creo que no es lo suficientemente inteligente. Quiero poder hacer una lluvia de ideas rápida de algunos diagtwigs 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 🙂

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

BOUML es una caja de herramientas gratuita de UML 2 (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 la Wikipedia :

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

Si buscas salir por la puerta y trabajar en UML sin tener que aprender una nueva herramienta compleja, verificaría Violet UML . Lo he usado para un gran éxito en el pasado.

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

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

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.

Añadiré UMLet, que aún no he probado, pero he sido seleccionado en mi oficina para comenzar a hacer diagtwigs.
Parece simple, los diagtwigs no son sexys, pero parece bastante completo con respecto al tipo de diagtwigs que puedes hacer. Parece que también tiene buenas capacidades de exportación (¡es importante!), Es flexible y puede admitir componentes personalizados y se puede utilizar como complemento de Eclipse.

Astah UML (ex-JUDE) es bastante bueno.

No he podido encontrar una herramienta gratuita de diagtwigción UML de primera categoría, pero si está interesado en la diagtwigción pura, en contraposición a la ingeniería de ida y vuelta, me gustaría ir con Microsoft Visio. Si quiere una ingeniería de ida y vuelta completa, Rational Rose.

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

Pluma y papel. Si puede obtener el escaneo en un formato vectorial, eso puede ser útil al hacer enmiendas menores.

Deberías probar Creately. Se ejecuta en su navegador y puede hacer colaboración en equipo.

admite diagtwigs de secuencia, clase, ER, usecase etc. funciona muy bien y tiene una versión gratuita disponible.

Creately.com

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

No te olvides de yuml.me , me encanta.

En mi práctica utilizo Sequence Diagram Editor . es una herramienta realmente rápida y útil. Lo único que no me gusta es que es un producto comercial, no gratuito.

Me gusta VisualParadigm mencionado anteriormente en este hilo. Es potente y fácil de usar. Creo que da más poder comparando con otras herramientas.

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

Obviamente, si en serio se toma en serio el UML, necesita utilizar una herramienta UML de software como las sugeridas en las otras respuestas, pero descubrí que una pizarra es una de las mejores herramientas para la diagtwigción UML, especialmente durante el diseño. fase, o cuando estás explorando diferentes alternativas. Nada es mejor que una pizarra para la velocidad / flexibilidad en mi mente. También son geniales para la colaboración, suponiendo que estés colocado físicamente.

En mi opinión, StarUML es el mejor.

No puedo creer que nadie haya mencionado NetBeans UML Editor, es genial y satisfizo todos mis requisitos UML basados ​​en Java.

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

Recientemente realicé una encuesta ” ¿Qué herramientas UML usas ?” en mi blog NetBeans UML fue la mejor opción de código abierto y Enterprise Architect fue la mejor elección comercial.

Puede crear clases UML, secuencia, componente, caso de uso y diagtwigs de actividad en Visual Studio 2010 Ultimate. Puede vincular estos diagtwigs a los elementos de trabajo de Team Foundation para que pueda planificar y seguir el desarrollo y el trabajo de prueba. También puede crear gráficos de secuencia, de dependencia y de capa a partir del código y usar el Explorador de Arquitectura para explorar y explorar su solución.

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

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

Rational y Together / J son los mejores productos de su clase, pero costosos.

En mi experiencia, he disfrutado de 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 ligado a Java. Sparx es una buena herramienta para el precio, pero carece de la gama completa de diagtwigs UML 2.0.

NO te molestes con Poseidón. Está lleno de errores, hinchado e inutilizable para todos los efectos.

Para los diagtwigs de secuencia también puedes probar Trace Modeler . No es gratis, pero tiene una interfaz excelente, muy amigable y productiva. Puedes usarlo en cualquier plataforma.