Dibujo UML gratuito

Estoy buscando una herramienta para dibujar diagramas de flujo y diagramas de clase UML. Quiero ser capaz de esbozar cosas de manera informal y no tener que satisfacer a un verificador de conformidad de modelo de mano dura.

Se desea multiplataforma (Windows y Mac). Uso Windows, pero quiero que las personas que desarrollan en Mac también puedan consultarlos fácilmente.

Sería genial si el formato de archivo fuera compatible con las diferencias incrementales. He usado UMLet hasta ahora, y una cosa que me gusta es que puedo registrar los dibujos en git junto con el código fuente y son pequeños y tienen cambios incrementales (se guardan como texto XML y no se reorganiza todo al guardar después añadir o editar un elemento).

Para los diagramas de clase, hago un uso intensivo de las etiquetas de "calificación" para documentar las colecciones clave (por ejemplo, a std::map), y también he generalizado el uso de diamantes sólidos y blancos para usar diferentes colores para indicar el tipo de propiedad:

ingrese la descripción de la imagen aquí

Hacer que el cuadro de cantidad cambie de color tampoco fue intencional, pero estoy bien con eso de esa manera.

Estaba usando UMLet para diagramas de clase, pero a partir de la versión 14 están obsoletos todos los tipos de elementos antiguos, y la nueva forma de flecha solo puede dibujar la etiqueta de calificación sin tipo de flecha o la flecha simple -> en ese mismo extremo; no el diamante.

Como los elementos utilizados, en general, en mis dibujos han quedado obsoletos y no actualiza automáticamente el uso, tendría que volver a dibujar todo de todos modos. Así que es un buen momento para buscar un nuevo programa.

Para los diagramas de secuencia, intenté usar Visio. El principal problema con eso es el costo. La ventaja es que se parece más a un boceto que a un diagrama formal, por lo que es bueno poder dibujar lo que quiero. Encontré formas de terceros que están bien para esto (a diferencia del material UML suministrado que insiste en dibujar solo diagramas formales con verificación de errores), pero es menos que ideal. Los extremos de las flechas solo se ajustan a puntos de ajuste específicos en lugar de a cualquier lugar a lo largo del borde visible, un cuadro envolvente captura cosas y las formas dentro de él ya no funcionan como lo hacían al aire libre, etc.

Puedes usar Star UML. También está disponible para Windows, Mac y Linux. staruml.io

Respuestas (3)

Eche un vistazo a yEd-Graph Editor , ya sea a través de Wikipedia oa través de su sitio de productos . Aquí hay una cita al respecto (de este último enlace):

yEd es una potente aplicación de escritorio que se puede utilizar para generar diagramas de alta calidad de forma rápida y eficaz.

Cree diagramas manualmente o importe sus datos externos para su análisis. Nuestros algoritmos de diseño automático organizan incluso grandes conjuntos de datos con solo presionar un botón.

Es multiplataforma (Mac, Linux, Windows) y tiene la capacidad de ajustarse a casi cualquier lugar del borde visible.

Puede echar un vistazo a dia como una solución de escritorio (aunque está lejos de ser ideal): a veces es útil para dibujar todo tipo de diagramas. También almacena datos como XML y puede exportar a pdf, png, svg y algunos otros formatos (incluso LaTeX se declara como compatible). Dia funciona tanto en Windows como en Linux (no estoy seguro para Mac), pero es una aplicación típica de GNOME con archivos de diálogo no nativos, por ejemplo.

También puede mirar draw.io si está de acuerdo con los servicios en línea: almacena sus datos en algunos de los almacenamientos en la nube, la mayoría de los cuales naturalmente permiten restaurar versiones antiguas de archivos, bajo su cuenta. Este servicio me parece más fácil de usar que dia.

¿Se sabe que ambos tienen flechas de colores, etc.? Quiero decir, ¿es esta una recomendación basada en mis requisitos específicos o "solo lo que uso" en general?
Estas son más herramientas de creación de diagramas de uso general que incluyen un conjunto de iconos UML. No conozco flechas de colores para ninguno de estos (aunque puede cambiar manualmente el color de cualquier cosa en dia, pero no tiene sentido). Lo siento, me perdí la parte en la que requieres los colores y solo noté que dices "estás bien con eso de esa manera". Al volver a leer su publicación, diría que las herramientas que mencioné son más como un último recurso para sus necesidades.

Encontré que Graphviz es una solución maravillosa, especialmente porque no tienes que preocuparte por dónde están las cosas (aunque puedes), solo te preocupas por la información que transmite.

El único inconveniente es que no es muy fácil de instalar en Windows (y, para ser honesto, GVEdit no es tan bueno). La mejor solución es usar una herramienta diferente compatible con el lenguaje de "puntos", ya que cualquier cosa compatible con el lenguaje de puntos probablemente use una de las utilidades que Graphviz proporciona bajo el capó de todos modos.