Está en la página 1de 4

¿Cuáles son las características que debe tener una herramienta UML?

La herramienta UML debe apoyar todos los diagramas de los nueve que componen UML.
La herramienta debe soportar la diagramación de casos de uso, permitir definir la visión
estática con diagramas de clases y diagramas de objeto, permitir la definición de la visión
dinámica, tales como los diagramas de secuencia, la actividad, de los estados, de
colaboración y el despliegue de componentes que forman el sistema.

Lo fundamental de una herramienta UML es la capacidad de diagramación, y los diferentes


tipos de diagramas que soporta la herramienta. Sus esquemas de apoyo de diseño,
documentación, construcción e implantación de sistema. Así mismo, su flexibilidad para
admitir cambios no previstos durante el diseño o el rediseño. En resumen, la herramienta
ideal, es aquella que admite diseño desde inicio a fin,  diseño inverso (o rediseño) y diseño 
vise-versa, con esquemas amplios para documentar detalladamente los procesos.

DocIRS utiliza para modelar la versión libre de BizAgi BPM Software impulsada por 
Cristian Middleton ~ http://www.bizagi.com.
Inicialmente, también utilizábamos la herramienta Microsoft Visio.

Para DocIRS, en particular, la herramienta que cumpla con las expectativas de alcanzar
todos los diagramas UML, sería aquella en que los diagramas de clases que se tracen en la
herramienta puedan ser utilizados directamente, sin intermediarios. Es decir, generar el
código fuente reconociendo las clases en ASP, .NET, o C++  automáticamente desde
nuestro RobotDocIRS.

Actualmente en DocIRS, el puente entre el modelamiento, diseño funcional y la


documentación elaborados sobre UML, se realiza manualmente por nuestros analistas,
ingresándolas a RobotDocIRS mediante una interfaz Insumo. (ver OPTIMIZACIÓN
INSUMO ROBOT de Bruno Maggio)

Este escenario entrega un gran conjunto de archivos de código fuentes, con grandes
cantidades de clases, y que gracias al UML se logran determinar sus interconexiones. Aquí
es donde la herramienta UML ideal, debería permitir hacer las cosas mucho más fáciles:

Diagrama UML de apoyo: La herramienta UML debe apoyar todos los diagramas de los
nueve que componen UML. La herramienta debe soportar la diagramación de casos de uso,
permitir definir la visión estática con diagramas de clases y diagramas de objeto, permitir la
definición de la visión dinámica, tales como los diagramas de secuencia, la actividad, de los
estados, de colaboración y el despliegue de componentes que forman el sistema.

Ingeniería Directa: Una herramienta UML no debe limitarse sólo a una representación
pictórica de diagramas, sino que apoyar en forma directa y técnica la construcción de la
aplicación en el lenguaje que se utiliza ( Java, C++, ASP, ASPX, PHP). La ingeniería
directa, va moviéndose desde los requerimientos, hacia el diseño (modelamiento, procesos)
para llegar a la implementación. Nuestra experiencia, frente a la carencia de una
herramienta UML es este aspecto, nos llevó a desarrollar RobotDocIRS, con el cual
intentamos automatizar la generación de código fuente en forma robusta y pertinente a los
intereses de cada proyecto.

Ingeniería Inversa: Es exactamente lo contrario de Ingeniería Directa. En la ingeniería


inversa, la herramienta UML carga todos los archivos de la aplicación o del sistema, se
identifican las dependencias entre las distintas clases, y, esencialmente, reconstruye la
estructura de todo el requerimiento, junto con todas las relaciones entre las clases.
Ingeniería Inversa es una característica normalmente proporcionada por sofisticadas
herramientas UML. Es decir, se pretende utilizar el método como una aproximación
práctica que permita generar modelos, utilizando el estándar UML, de aquellos sistemas
cuya documentación es escasa, desactualizada o inexistente.

Documentación: La documentación es un aspecto integral de una herramienta UML.


Diseñar es un proceso de interpretación de una solución de software. Es decir, su
naturaleza, es un proceso abstracto que la única forma de determinarlo en forma certera, es
una vez se haya confrontado primero con los constructores y después con los usuarios.
Naturalmente, existen normas de sintaxis y semántica acerca de las reglas del negocio.. El
proceso de pensamiento del modelamiento de software utilizando UML, puede
desperdiciarse si ciertos procesos de diseño no son capturados apropiadamente y bien
documentados. Una herramienta UML debe necesariamente proveer un esquema amplio
que permita al diseñador comunicar en forma precisa los detalles, incluyendo anotaciones o
comentarios. Además de esto, la herramienta UML debe apoyar la generación de informes
y listados de los diferentes elementos del diseño.
Colaboración en el modelamiento: Para el diseño o rediseño de sistemas complejos,
puede haber diferentes equipos participando el trabajo de diseño de diversos subsistemas en
paralelo, debería realizarse sobre un solo ambiente. Este esfuerzo de colaboración de diseño
tiene que ser debidamente sincronizado con la herramienta UML. La herramienta UML
debería proporcionar apoyo a un entorno de modelado de colaboración. Una herramienta
interesante, que DocIRS ha intentado poner en uso como herramienta UML, es BizAg
(Business Agility. para diagramar, ejecutar y mejorar los procesos de negocio). Sin
embargo, cuando ya se ha estado trabajando con los profesionales en otros entornos como
el Racional Rose, el Visio,.. Migrar a todos los equipos hacia una sola herramienta es un
proceso difícil.

Bibliografía:

 Autores: Diana Palliotto; Gabriel Romano Universidad Nacional de Santiago del


Estero – Facultad de Ciencias Exactas y Tecnologías Dirección: Departamento de
Informática - Av. Belgrano (S) 1912, (4200) Santiago del Estero, Argentina.- E-
Mail:
 UML Tools
By Mandar Chitnis, Pravin Tiwari, & Lakshmi Ananthamurthy

 Los beneficios del Modelador Bizagi

También podría gustarte