Generación del cuerpo de los métodos a partir de la semántica de las operaciones del diagrama de clases
Generating the body of the methods from class diagram operation semantics
Para la generación automática de código fuente a partir de los diagramas de UML, las herramientas CASE convencionales sólo generan el encabezado de los métodos, y algunos esfuerzos adicionales generan parcialmente el cuerpo de los métodos, pero empleando elementos que se alejan de los estándares de modelado y, en todo caso, muy cercanos a la elaboración manual de código fuente. Buscando superar esas limitaciones, en este artículo se propone un proceso para generar el cuerpo de los métodos del código fuente a partir de las operaciones del diagrama de clases. Para ello se define la “semántica de las operaciones”, que es una manera de ligar las operaciones del diagrama de clases y los métodos implementados en la plataforma de desarrollo, tomando como entradas las pre y poscondiciones de las operaciones y el metamodelo de las librerías de la plataforma de desarrollo. Finalmente, el proceso se ejemplifica con un caso de estudio, para el cual fue necesario elaborar una instancia en UML del metamodelo del paquete java.sql.
Introducción
La ingeniería de software provee herramientas CASE como una manera de asistir a los analistas en el proceso de desarrollo de software. Una de las tareas que tradicionalmente se aducen para el u so de tales herramientas es la generación automática de código fuente desde diagramas. En particular, se destacan algunas herramientas como Together® (Borland Software Corporation, 2008) y Rational Rose® (IBM Corporation, 2008), que generan algo de código a partir del diagrama de clases, pero que, en términos de los métodos correspondientes a las clases de implementación, sólo genera el encabezado de los mismos. La herramienta CASE Fujaba® (University of Paderborn, 2008; Geiger y Zündorf, 2005) genera automáticamente el cuerpo de los métodos, pero para ello recurre a elementos no estándar de UML.
Ahora, algunas propuestas, como rCOS (Liu y Jifeng, 2005) y Método-B (Laleau y Mammar, 2005), efectivamente obtienen el cuerpo de los métodos de las clases, pero utilizan lenguajes formales para la representación de los diagramas UML y su posterior transformación a un lenguaje de programación. Además, tales lenguajes no se implementan en las herramientas CASE convencionales y se acercan más al código fuente que al modelado.
Este documento es un artículo elaborado por Carlos Mario Zapata J. Ingeniero civil, Especialista, en Gerencia de Sistemas Informáticos, M.Sc., en Ingeniería de Sistemas y Ph.D., en Ingeniería, Universidad Nacional de Colombia, Medellín. Profesor asociado, Escuela de Sistemas, Universidad Nacional de Colombia, Medellín. Líder, grupo de Investigación en Lenguajes Computacionales. y Andrés Felipe Muñetón Ingeniero de sistemas e informática. M.Sc., en Ingeniería de Sistemas. Profesor de cátedra, Universidad Pontificia Bolivariana. Ingeniero de proyectos, PRAGMA .SA. Integrante, grupo de Investigación en Lenguajes Computacionales, Universidad Nacional de Colombia, Medellín. Para Ingeniería e Investigación (Vol 28. Núm. 3. pp-58-63) Publicación de Universidad Nacional de Colombia - UN. Contacto: [email protected]; [email protected]; [email protected]
Recursos
-
Formatopdf
-
Idioma:español
-
Tamaño:398 kb