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 .