Evaluación del uso de MDA y MERODE en la adaptación de una herramienta para la Administración de Información de Grupos de Investigación y Eventos
Antecedentes
Tanto en los negocios como en las tecnologías se perciben cambios y avances, que en el campo de la Ingeniería de Software plantean el reto de crear aplicaciones que puedan adaptarse de forma simple y eficiente a estos cambios.
Para poder realizar los cambios se vuelve imprescindible e imperioso el utilizar alguna metodología, de tal manera que si existen cambios en las especificaciones del negocio, esto no afecte de manera crítica a sus actividades; así mismo, hay que considerar las nuevas tecnologías que puedan servir para mejorar algún servicio que se haya implementado.
También cabe mencionar, que según las investigaciones realizadas[1], una forma de lograr mayor flexibilidad en las aplicaciones de software es separar el “modelo del dominio” (modelo del negocio, o modelo conceptual) de las “diversas tecnologías” que surgen a través de los tiempos.
Descripción
Dos metodologías que se apoyan en el concepto de separar el modelo del negocio de la tecnología asociada, son MDA y MERODE.
MDA es una propuesta de la OMG (Object Managment Group) para el desarrollo de software desde el diseño, proporciona una solución para los cambios de negocio y de tecnología, permitiendo construir aplicaciones independientes de la plataforma. [2]
A continuación se comenta un caso de estudio [3] que ilustra los beneficios de MDA: CHG (Construcciones Hispano Germanas) es una compañía del Sector Inmobiliario y Construcción en Costa Blanca, España. Ellos deseaban integrar unos sistemas y crear otros nuevos, enfocándose en la funcionalidad del negocio y su comportamiento, mas no en la evolución de la tecnología.
Para ello se asociaron con “CARE Technologies” [4], una compañía de software, la cual llevó a cabo lo deseado por CHG utilizando UML y MDA; con UML se realizó la definición de los requerimientos, lógica del negocio y capa de presentación; y con MDA, las correspondientes transformaciones.
Como resultado, el 90% de su código fue generado automáticamente. Actualmente la aplicación es mantenida por sólo 2 analistas. Y cualquier mantenimiento o cambio requerido es fácilmente realizado.
Existe otro estudio basado en UML siguiendo los principios de MDA realizado en el Ecuador [5]. Ellos aplicaron esta metodología pero no se usó herramienta de soporte alguna. Como resultados obtenidos, MDA aceleró los procesos de análisis y diseño con respecto a la implementación.
MERODE es una metodología de análisis orientada a objetos que fue diseñada en el Departamento de Ciencias Económicas Aplicadas de la Universidad Católica de Leuven, Bélgica [6].
Esta metodología ha sido probada y aplicada en varias compañías, tales como: NOVAXESS (Netherlands) [7], KBC Bank NV (Bélgica)[8], Datakor (Bélgica) [9], Acc (Bélgica) [10], obteniendo los siguientes resultados: una buena estructura modular, un rápido mantenimiento, una fase de análisis corta, mejor documentación del proyecto, rápida fase de implementación y la separación del modelo de la empresa con el modelo de funcionalidad. [11]
Existen dos investigaciones realizadas en la ESPOL [12, 13] en la que se demuestra que los atributos de flexibilidad y facilidad de mantenimiento son buenos indicadores para desarrollar sistemas bajo esta metodología, además se comprobó que la mayoría de los cambios eran más frecuentes en la capa de interfaz que en la del dominio. Se recomienda utilizar herramientas para la generación de código a partir del diseño y con respecto a la otra investigación [13] se recomienda tomar en cuenta el patrón de diseño MVC si se desean realizar cambios en la aplicación. Es importante mencionar que los tiempos estimados fueron empíricos, de tal manera, que no se pudo obtener una medida más exacta con respecto a los tiempos reales tomados en el transcurso del desarrollo de las investigaciones.
Referencias
[5] Tatiana Gualotuña A., Cecilia Hinojosa Raza, “Propuesta metodológica para el desarrollo de aplicaciones web basada en UML”.
[12] Karina Chong, Verónica Macías, Monique Snoeck, “Experiences with the use of MERODE in the development of a Web Based Application”.
[13] Salomón Herrera, Tesis de graduación: “Implementación de los módulos de Administración de convocatoria de artículos y evaluación de artículos para el Portal Web del Componente 8 del proyecto VLIR-ESPOL utilizando MERODE como metodología de análisis y J2EE como arquitectura de diseño.”