Desde hace algún tiempo me pregunte mucho que herramientas utilizar para generar mis modelos UML y para decidir pensé en plantear una serie de preguntas y en base a ellas evaluar cual seria la mejor solución, tomando en cuanta que algunos productos pueden ser mejores que otros dependiendo el uso que vamos a darles.
A continuación comparto los criterio que tomé en cuenta y que herramientas son útiles para ello:
Nota: este es un punto de vista muy particular y si conocen algunas opciones mejores no duden en compartir su opinión.
- ¿Solo requiero diagramar o voy a modelar? (Diagramar: ArgoUML y Visio)
- ¿Voy a necesitar modelar en el futuro?(Para modelado básico recomiendo "Comunity editions" de productos comerciales)
- ¿Requiero formalizar mis modelos a través de perfiles o meta-modelos? ¿OCL? (Sparx, RSM, Visual Paradigm)
- ¿Me preocupa la potabilidad del modelo, soporte XMI? (GenMyModel, Sparx, Visual Paradigm, Altova)
- ¿Tengo un conjunto existe de documentos con los que necesito trabajar? (Depende de los documentos)
- ¿Me gustaría generar fragmentos de código o código completamente funcional? (GenMyModel, Visual Paradigm, Sparx, Altova)
- ¿Requiero un proceso más maduro como es la administración de casos de uso, creación de patrones, creación de activos, integración RUP, etc? (RSA/RSM/IBM Rational products)
Por ejemplo, IBM Rational Software Architect no implementa UML 2.0 a diferencia de Visual Paradigm y Sparx.
Un ejemplo similar puede ser ArgoUML que no genera ningún tipo de código y se enfoca completamente en el diseño de los diagramas más que en el modelado.
Con Visio podemos tener un mejor diseno gráfico de los diagramas, sin embargo requiere licencia.
Bueno, todo dependerá del uso y los recursos con que dispongamos a la hora de elegir una herramienta para generar nuestros diagramas.
Lista de herramientas y tabla comparativa:
Enlaces: