Modelando con UML en Linux


UML o Unified Modelling Language es brevemente, un lenguaje gráfico para el modelado de aplicaciones (o procesos en general) orientados a objetos.

En este artículo comento brevemente los pros y los contras de algunas aplicaciones que he encontrado para trabajar en Linux con este
lenguaje. Concretamente Umbrello, Dia y
ArgoUML.

Actualizado comentario sobre Umbrelo, este ya dispone de control de zoom.

Cuando he de afrontar un nuevo desarrollo de cierto tamaño (unas
cuantas lineasmás que el hola mundo), acostumbro a hacer un diseño previo usando algunos diagramas y a aplicar (quizá no exhaustivamente) las metodologías que aprendí durante la carrera de Ingeniería técnica.
Lo mínimo que suelo hacer es un modelo de datos y un esbozo de la aplicación usando UML. Hasta ahora lo había hecho a mano o con cualquier programa de dibujo vectorial o de diagramas de flujo. El primer método es difícil de mantener ya que si hay muchas modificaciones hay que ir borrando y repintando el diagrama quedando todo muy sucio.La segunda aproximación es mas limpia pero muy engorroso también.
.-NOTA: Si os interesa el modelado con UML os recomiendo un tutorial excelente en la web: http://www.clikear.com/manuales/uml/
He estado investigando y probando algunas aplicaciones para mejorar la productividad en este apartado y aunque me consta que existen muy buenas herramientas CASE del estilo de Rational Rose, también me consta que son carísimas.
He encontrado algunas herramientas que o bien son libres o tienen costo 0, lo cual se ajusta perfectamente a mi economía ;). En concreto he probado tres herramientas:
Umbrello, Dia y ArgoUML cada una con sus ventajas y sus desventajas y que paso a comentar a continuación.
Umbrello.
Realmente he quedado asombrado con esta herramienta diseñada
para KDE por su facilidad de uso y su cuidada interface a pesar de que no tiene(o yo no he sabido encontrarlo) zoom, por lo que trabajar con diagramas grandes es un problema, cosa que también se nota a la hora de imprimir los diagramas.

Actualizado a la última versión para SID el 03/11/2003, que según la misma web de umbrello no es una versión oficial: “this is a (fairly stable) snapshot of Umbrello from 2003-08-28 and not an official Umbrello release” y he podido comprobar gratamente que ya tiene control de zoom para los diagramas en pantalla, aunque no a la hora de imprimir.
Esta nueva funcionalidad hace que umbrello avance aún más en mis preferencias.
Otro defecto que le he encontrado es la falta de libertad en las conexiones ya que, estas se recolocan automáticamente y a su aire cuando se mueven los objetos.
Por otro lado tiene buen soporte para la generación de código,
desde el mismo programa es posible generar todo o parte y lo hace muy
bien.
Instalarlo en Debian es tan fácil como hacer apt-get install umbrello, aunque como ya comenté, el paquete que está en SID en el momento de escribir estas líneas, no es una versión oficial, sino un snapshot.

Dia.
Dia, más que una herramienta de modelado UML, es un programa de dibujo. Permite hacer diagramas de flujo, diagramas de redes,
etc… todo mediante librerías de símbolos y un buen conjunto de herramientas. Por lo que hace referencia a UML tiene bastante buen soporte, con una librería surtida y con la ventaja de que la libertad de “movimientos”, el respeto que tiene por la posición que tienen las interconexiones de los objetos y el control de la escala del dibujo, lo hacen muy manejable.
En la parte negativa en mi opinión estaría el soporte para generación de código,que aunque si que existe, es mediante programas externos que “parsean” el archivo que dia genera. Hay que decir también, que en un buen modelo el código se ha de generar solo cuando todo está correcto y completo.
Pero seamos realistas, en la práctica esto no suele ser así.
Para la instalación, una vez más, los debianitas lo tienen fácil,
tan sólo hay que abusar una vez mas de apt: apt-get install dia y en el momento de escribir el artículo, nos instalará la versión 0.91-10 si nuestros source list apuntan a SID.

ArgoUML.Otra herramienta diseñada para el modelado UML es ArgoUML, que aunque no es específica para la plataforma Linux, está escrito en Java por lo que se puede ejecutar en cualquier plataforma que tenga una máquina virtual java. Pero esto también se convierte en su peor enemigo, ya que al ser el lenguaje Java interpretado, la convierte en una aplicación muy pesada y solo usable en máquinas muy potentes, lo cual no es mi caso 🙁
Pero a pesar de este contratiempo, es la más completa de las herramientas que he probado, con una interfaz excelente y muy versátil a la hora de dibujar el modelo, gozando también de una excelente generación de código a partir de los diagramas.
De nuevo, apt-get install argouml y tendremos la versión 0.14-3 si estamos en SID

Para concluir comentaré que he optado por usar umbrello por las limitaciones de mi hardware y porque, a pesar de sus defectillos, es la que me ha resultado más cómoda en cuanto al uso y más versátil en cuanto a la generación de código.

Si teneis alguna sugerencia o detectais errores en el artículo no dejeis de comentarlo. Y si conoceis más aplicaciones de este estilo para usar en Linux comentadlo también.

Este post ha sido traido de forma automatica desde https://web.archive.org/web/20140625063149/http:/bulma.net/body.phtml?nIdNoticia=1897 por un robot nigromante, si crees que puede mejorarse, por favor, contactanos.


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.