• No se han encontrado resultados

Vamos a utilizar un caso de Estudio para la implementación de la presente investigación se tiene lo siguiente:

Base de Datos: Tienda de productos. Rubro: Comercio

Lenguaje de Programación: JAVA.

La fuente utilizada por el sistema nos proporcionara el anterior software de gestión de ventas y compras que tiene la empresa junto a los requerimientos obtenidos de entrevistas y métodos complementarios de requerimientos

.

Inicialmente, se obtiene la estructura del sistema en código, lo

cual se hace utilizando el diagrama de clases.

Paso 1 Modelado:

Para lograr esto, se utiliza un modelado con la sintaxis del

lenguaje, la cual se completa con los resultados de las reglas

de transformación. En el modelado se combinan elementos

propios del lenguaje y los consecuentes de las reglas de

transformación,

estos

últimos

reemplazados

por

sus

equivalentes en los modelos UML.

Ilustración 35

77

El Modelo para las clases Java es:

Public class $c.name {

//atributos

$p.visibility $.type.name $p.name;

//operaciones

$o.visibility $o.type.name $o.name

($ownedParameter.type.name $ownedParameter.name)

{

//método

}

}

Paso 2: Instancia.

La siguiente figura es la representación del diagrama de

clases como instancia del metamodelo del diagrama de

clases, correspondiente a las clases Pedido y Cliente.

Ilustración 36

78

Paso 3:

Al aplicar las reglas de transformación para el diagrama de

clases sobre la instancia c3 de la metaclase Class, la cual

hace referencia a la clase Pedido, el código generado para

esta clase, de acuerdo a la plantilla y las relaciones

presentadas en la Tabla1 es:

En la Siguiente tabla veremos cada uno de las operaciones

que hay q usar en cada uno de los casos.

$c.Name Regla Nombre Clase

$p.visibility $p.type.name

Regla atributos propios de la clase

Regla atributos por asociación $p.visibility

$p.type.name($ownedParameter.type.nam e $ownedParameter.type.name)

Regla operaciones propias de la clase

Tabla 4.Operaciones del Metamodelo

Después de haber obtenido cada uno de las instancias y las trasformaciones se coloca en la plantilla

Código en Java de La clase Pedido

Public class Pedido { //atributos

Private String number; Private Cliente cliente; //operaciones

Public void agregarDetalle () { //método

} }

79

DISCUSIÓN DE RESULTADOS.

A continuación se hará una serie de datos de tiempo a través de pruebas hechas para ejecución de tiempo a través de aproximaciones de tiempo.

Según el algoritmo:

Entrada: Diagrama de Clases

Salida: Pseudocódigo del Diagrama de Clases

Primer Paso: Meta Modelado del problema del diagrama de clases en

JAVA……… TA

Segundo Paso: Traducir el Meta modelado por los distintas

Operaciones………TB INICIO

Para cada CLASE de diagrama de clases………TC

Para cada PARTE DEL METAMODELO DE LA CLASE…. TM SI CUMPLE LA REGLA

ENTONCES

Tercer Paso: Instanciar en el Meta modelado para

dar su equivalente en Código JAVA. T1 Fin

Fin FIN

Como el tiempo de a y B son indiferentes para el uso de operaciones entre metamodelos.

O (T)=MAX(A, B, C*M, 1) O (T)=O(C*M)

80

La solución que proponemos nos da un resultado exponencial, en siguientes trabajos se obtendrá información de cómo obtener los tiempos del algoritmo previamente implementado, por el momento el resultado nos da que es un algoritmo, el tiempo depende de un producto de cuantas clases se tenga “O(C)” y dentro de cada clase cuantas partes del metamodelo obtenido se obtendrá a partir de cada clase generada. “O (M)”.

CONCLUSIONES Y RECOMENDACIONES:

6.1. Conclusiones:

El Presente trabajo habla sobre una propuesta computacional que para la transformación de diagramas de clases a código fuente a través de modelados MDA.

Se ha tomado lo mejor de 2 algoritmos “Modelos de Generación Automática de Código” y “Conceptos PSM y técnicas de Mapeo de PIM a PSM” de cada uno se han analizado enfocado para extraer las técnicas de transformación y la forma de modelado de MDA respectivamente para así poder crear una nueva propuesta que se vino desarrollando en el presente trabajo.

Lo complejo del lenguaje unificado de Modelado UML ha hecho que se presente una propuesta de metamodelo para la simplificación del proceso.

6.2. Recomendaciones:

Se recomienda el uso de restricciones a cada uno de los modelos dados, estos se utilizan para saber dónde se originó cada uno de las partes del diagrama, para poder modelar la consistencia solo así se creara una

herramienta confiable y capaz rehacer cada uno de los errores previos de los diagramas.

6.1. Trabajos futuros:

En los siguientes trabajo futuro, se pretende desarrollar una herramienta CASE que incluya el algoritmo generado, los metamodelos comprimidos y las reglas de transformación.

Como se ve solamente al tener el diagrama de clases uno no peude saber cómo actúa el sistema y que relación se tenga para poder convertir todo eso a código. Es por eso que se desea también aplicar lo mismos proceso para los diversos diagramas complementarios del sistema para UML como el diagrama de estados, el diagrama de procesos, máquinas de estados, etc.

81

BIBLIOGRAFÍA

[1] Jonathan, ECU RED, ARQUITECTURA DIRIGIDA POR MODELOS Universidad Central de Ecuador (2009),

[2] ANDRÉS MUÑETÓN, CARLOS M. ZAPATA, FERNANDO ARANGO. REGLAS PARA LA GENERACIÓN AUTOMÁTICA DE CÓDIGO DEFINIDAS SOBRE METAMODELOS SIMPLIFICADOS DE LOS DIAGRAMAS DE CLASES, SECUENCIAS Y MÁQUINA DE ESTADOS DE UML 2.0, DYNA, 267-283. Mayo 05 de 2007, Escuela de Sistemas, Facultad de Minas, Universidad Nacional de Colombia.

[3] Ing. EDUARDO PERALTA SALINAS, MODELADO DE CLASES UML, http://users.dcc.uchile.cl/~psalinas/uml/modelo.html

[4] JUAN PABLO GARCIA BENITEZ, MARCO PARA LA TRANSFORMACIÓN DE MODELOS BASADO EN GRAMÁTICAS DE ATRIBUTOS (Madrid 21 de Junio de 2010).

[5] Rodríguez Vicente, J. (Junio de 2004). Ingeniería de Modelos con MDA. Murcia. [6] UBALDO JOSÉ BONAPARTE, Proyectos UML Diagramas de clases y aplicaciones JAVA en NetBeans 6.9.1, Editorial de la Universidad Tecnológica Nacional – edUTecNe, Facultad Regional Tucumán Universidad Tecnológica Nacional – U.T.N. Argentina

[7] GERMAN SALAZ, EVALUACIÓN Y MEJORA DE LA CALIDAD DE LOSPROCESOS DE MODELOS MDA -> ADMPROCESOS DE MODELOS MDA. ADM BASADOS EN REINGENIERÍA,

[8] Pedro Antonio Fernández Sáez, UN ANÁLISIS CRÍTICO DE LA APROXIMACIÓN MODEL-DRIVEN ARCHITECTURE, Facultad de Informática Universidad Complutense de Madrid. (2009)

82

[9] Luís Eduardo Agudelo González. MARCO DE REFERENCIA PARA LA EVALUACIÓN DE HERRAMIENTAS DE TRANSFORMACIÓN DE MODELOS, UNIVERSIDAD EAFIT MEDELLÍN 2006.

[10] JORGE MARTÍNEZ LADRÓN DE GUEVARA. FUNDAMENTOS DE PROGRAMACIÓN EN JAVA. Editorial EME. ISBN 978-84-96285-36-2. Facultad de Informática. Universidad Complutense de Madrid.

[11] HUGO ALBERTO KOFMAN. MODELOS Y SIMULACIONES EN LA ENSEÑANZA DE LA FISICA. Santiago del Estero 2829, Santa Fe, República Argentina. Facultad de Ingeniería Química de la universidad Nacional del Litoral.

Documento similar