Hoy en dÃa en el mundo de la informática tenemos la fortuna de tener alguna herramienta que nos ayude en nuestra tareas cotidianas, desde mensajeros instantáneos para comunicarnos, hasta gestores de recetas de cocina para perpetuar el legado culinario de las abuelas, y por supuesto, el modelado con UML de software orientado a objetos no es la excepción.
Por desgracia, hay tal variedad de herramientas en el mercado que es difÃcil decidir cual es la mejor, personalmente sigo haciendo diagramas con lápiz y papel, pero llega un momento en el que es inmanejable (como muestra la persona en la foto :P). Creo que es difÃcil decir que una herramienta es la mejor, sin lugar a duda, la decisión depende de muchos factores, no solo el que cumplan al pie de la letra la especificación de UML, si no además, que sea una herramienta intuitiva y que no consuma demasiados recursos de nuestro ordenador.
Personalmente utilizo dos herramientas, tanto con fines docentes como de investigación, quizá no son las mejores pero al menos cumplen con lo que necesito ¿cómo tomé la decisión de cual era mejor? lo explicaré brevemente a continuación.
Para decidir que herramienta UML utilizar decidà hacer análisis de las herramientas existentes en el mercado, entre búsquedas en Internet y dos comparativas bastante buenas que encontré [(1) UML Tools por Mario Jeckle (2) Comparison of Unified Modeling Language Tools en Wikipedia], decidà crear mi propia lista de cualidades deseadas en una herramienta UML, tanto para la enseñanza como para uso comercial. Las caracterÃsticas que finalmente analicé fueron las siguientes:
- Código abierto
- Tipo de licencia (siendo muy importante que hubiera un licenciamiento académico a un coste accesible)
- Lenguaje de programación utilizado
- Integración con entornos de desarrollo (y cuales)
- Coste
- Versión de UML
- Diagramas que soporta
- Soporte para MDA
- Soporte para XMI
- Generación de código (y que lenguajes de programación soporta)
- Capacidades de ingenierÃa inversa
- Sistema Operativo
- Requisitos de instalación
Las herramientas analizadas fueron:
- ArgoUML
- Poseidon for UML
- OpenAmeos
- Visual Paradigm for UML
- StarUML
- Rational Software Modeler (sucesor de Rational Rose)
- Enterprise Architect
- Umbrello UML Modeler
- UML Designer
Sin entrar en demasiados detalles de la evaluación, solo quiero comentar que todas las herramientas fueron instaladas y probadas modelando el mismo sistema orientado a objetos, donde además se analizó también la velocidad a la que se ejecutaban cada uno de ellos. Las pruebas siempre se hicieron utilizando el mismo ordenador.
Al final, dos herramientas satisficieron la calidad global deseada: Rational Software Modeler y Visual Paradigm for UML. Quiero destacar que ambas herramientas son muy potentes, soportan todos los diagramas de UML y además ayudan para la gestión de requisitos software, sin embargo, la que finalmente decidà utilizar fur Visual Paradigm for UML por su estabilidad de ejecución en diferentes sistemas operativos y la facilidad de abrir y trabajar con un modelo UML utilizando el mismo programa sin importar el sistema operativo y sin afectar en absoluto el trabajo hecho; además destacar que esta herramienta guarda todo el modelo en un solo fichero, asà de simple, y basta con copiarse solo ese fichero y uno está seguro de que tiene todo el trabajo encapsulado en él. Finalmente, Visual Paradigm es una herramienta que trabaja bastante decente en ordenadores “poco potentesâ€.
Como el objetivo principal de mi análisis de herramientas era el de seleccionar un entorno de trabajo para mis alumnos, quiero destacar que tanto IBM como Visual Paradigm ofrecen sus herramientas de modelado para fines académicos sin coste alguno, y el proceso de gestión de licenciamiento es bastante sencillo.
Dado que Rational Software Modeler es también una estupenda herramienta, quiero simplemente comentar que la utilizamos dentro del Grupo SEL-UC3M como herramienta de modelado por parte de los estudiantes de doctorado.
Por último, no puedo dejar de mencionar como la Web 2.0 ha llegado también al mundo del modelado UML, y quiero recomendarles yUML, una herramienta que a pesar de estar en versión Beta, permite crear al vuelo y con una sintaxis poco compleja, diagramas UML que pueden compartirse a través de Internet con mucha facilidad, yo la veo como una herramienta muy útil al momento de tener reuniones virtuales o para crear sin mucha complejidad un diagrama UML que quiera ser compartido en algún blog o borrador de modelado. Esperemos que en el futuro, esta herramienta siga evolucionando y nos ofrezca más posibilidades de interacción y colaboración.
Estoy realizando un proyecto de escuela, me parecio muy interesante la informacion que nos brinda pero me gustaria saber cuales son las desventajas de utilizar Visual Paradigm for UML. De antemano muchas gracias por su tiempo y por compartir sus conocimientos.
Gracias por la información. Un programa gratuito que recomiendo para hacer diagramas UML es Lucidchart.
Hola Mikey Martin, me alegro que encontraras util la información y gracias por tu recomendación.
Hola Abigail, para mi la primer ventaja que ofrece Visual Paradigm for UML es que se apega 100% al estándar de la OMG, lo cuál te asegura que tus diagramas son correctos, especialmente, ante auditorÃas o programas de certificación de UML. Otra cosa que me gusta de esta herramienta es que es multiplataforma, y si bien no es open source, ofrece una Community Edition que puedes utilizar para proyectos personales no comerciales.
Descargue la versión Visual Paradigm for UML Community Edition me parece completo para lo que necesito modelar.
Saludos.
Hola Hiparco,
Me alegro que este review te sirviera.
Saludos,
Muchas gracias por la información me ha sido útil sin embargo solo tengo una consulta ya que estoy por hacer una compra de un licenciamiento pero me están ofreciendo enterprise architect no se me hace malo pero en mercado ¿Que ventajas y desventajas tienen comparación con los demás? ¿ es una buena herramienta?
Que tal es enterprise arquitect con respecto a lo mejores, cuales serian sus ventajas y desventajas?
Qué tal Luz MarÃa,
La verdad entreprise architect es muy bueno, este análisis que presento lo centré principalmente en herramientas con licencia libre o communinty que puedan apoyar a docentes o entrenadores de UML.
Muchas gracias por su aporte, muy util.
Me alegro que te haya resultado de utilidad… saludos