< Anterior | Siguiente >

Lección 5: Crear y definir con más precisión las declaraciones de correlación que se necesitan para la declaración de correlación operación a operación

Con esta lección aprenderá a crear las declaraciones de correlación que la declaración de correlación operación a operación necesita para transformar elementos en una operación. Por ejemplo, creará una declaración de correlación que transforme los parámetros del modelo origen en el modelo destino; Creará asimismo una declaración de correlación que defina cómo transformar los tipos primitivos del modelo origen en los tipos primitivos del modelo destino. En esta lección también creará las reglas de correlación para la declaración de correlación operación a operación, las cuales invocan las declaraciones de correlación que creará en esta lección.
Por qué y cuándo se efectúa esta tarea
En la tabla que sigue figuran las declaraciones de correlación y las reglas de correlación que creará en esta lección:
Declaración de correlación Tipo de objeto de entrada y de salida Atributos de correlación Tipo de regla de correlación Descripción de regla de correlación
Primitive2Primitive Tipo primitivo UML name move Crea un tipo primitivo en el elemento cuya subcorrelación invoca la declaración de correlación Primitive2Primitive
Parameter2Parameter Parámetro UML name, visibility move Crea un parámetro en el elemento cuya subcorrelación invoca la declaración de correlación Parameter2Parameter; el parámetro generado tiene el mismo nombre y la misma visibilidad que el parámetro del elemento de entrada origen
type submap Para cada tipo que hay en el elemento cuya subcorrelación invoque esta declaración de correlación, los resultados son:
  • Si el parámetro es de tipo primitivo, esta regla invoca la declaración de correlación Primitive2Primitive
  • Si el parámetro es de tipo clase, esta regla invoca las declaraciones de correlación Class2Class y Class2Interface
Operation2Operation Operación UML name, visibility move Crea una operación en el elemento cuya subcorrelación invoca la declaración de correlación Operation2Operation; la operación generada tiene el mismo nombre y la misma visibilidad que la operación del elemento de entrada origen
ownedParameter submap Para cada parámetro de la operación, esta subcorrelación invoca la declaración de correlación Parameter2Parameter

En esta guía de aprendizaje, la declaración de correlación Paramater2Parameter invoca la declaración de correlación Primitive2Primitive para crear parámetros de tipo primitivo.

Para crear la declaración de correlación tipo de primitivo a tipo de primitivo en el modelo de correlación:

  1. Si todavía no está abierto, en la vista Explorador de paquetes, en la carpeta model, pulse dos veces en el archivo Generalize_Classes.mapping.
  2. En el área del editor de correlaciones de transformación, en la sección Raíz de correlación, pulse Generalize_Classes con el botón derecho del ratón; después, pulse Crear correlación.
  3. En la ventana Correlación nueva, en el campo Nombre de correlación, teclee Primitive2Primitive para el nombre de la correlación; luego pulse Aceptar. La correlación se visualiza en la vista Esquema y se abre bajo Raíz de correlación, en el área del editor.

Añadir objetos de entrada y de salida a la declaración de correlación primitivo a primitivo

Por qué y cuándo se efectúa esta tarea

Después de haber creado la declaración de correlación primitivo a primitivo, debe añadirle un objeto de entrada y un objeto de salida. En esta lección, especificará un tipo primitivo UML para el objeto de entrada y para el objeto de salida.

Para añadir un objeto de entrada y un objeto de salida a la declaración de correlación primitivo a primitivo:

  1. Pulse el icono de Añadir un objeto de entrada, que es el situado más a la izquierda en la barra de herramientas de la correlación que se propone editar.
  2. En la ventana Añadir entrada, en el panel Elemento, expanda uml, pulse PrimitiveType y, después, Aceptar.
  3. Pulse el icono de Añadir un objeto de salida, que es el segundo icono de la izquierda en la barra de herramientas de la correlación que se propone editar.
  4. En la ventana Añadir salida, en el panel Elemento, expanda uml, pulse PrimitiveType y, después, Aceptar.
  5. Pulse Archivo > Guardar.
Resultados
Ahora puede definir una regla de correlación entre el atributo name de los objetos de entrada y de salida de PrimitiveType.

Definir reglas de correlación entre atributos de los objetos de entrada y de salida de PrimitiveType

Por qué y cuándo se efectúa esta tarea

Para esta lección, cree una regla de correlación de movimiento que cree un tipo primitivo en el modelo destino. El tipo primitivo generado tiene el mismo nombre que el tipo primitivo que hay en el modelo de entrada; este proceso equivale a crear una copia del tipo primitivo.

Para definir una regla de correlación de movimiento que defina una relación entre el atributo name de los objetos de entrada y de salida de PrimitiveType:

  1. En el área del editor, en el objeto de entrada de tipo primitivo, pulse el atributo name.
  2. Arrastre la manecilla del atributo name hasta el atributo name del objeto de salida.
  3. Pulse Archivo > Guardar.
Resultados
Ahora puede crear la declaración de correlación parámetro a parámetro.

Crear una declaración de correlación parámetro a parámetro

Por qué y cuándo se efectúa esta tarea

Con esta sección aprenderá a crear una declaración de correlación que especifica un parámetro UML para el objeto de entrada y también para el objeto de salida. Esta declaración de correlación parámetro a parámetro contiene reglas de correlación que, cuando se ejecuta la transformación generada, crean un parámetro en el modelo destino cuyo nombre, visibilidad y tipo son iguales que los del parámetro del elemento cuya subcorrelación invocaba la declaración de correlación. En esta guía de aprendizaje, la declaración de correlación Operation2Operation contiene una regla de correlación de subcorrelación que invoca esta declaración de correlación.

Para crear una declaración de correlación parámetro a parámetro:

  1. Si todavía no está abierto, en la vista Explorador de paquetes, en la carpeta model, pulse dos veces en el archivo Generalize_Classes.mapping.
  2. En el área del editor de correlaciones de transformación, en la sección Raíz de correlación, pulse Generalize_Classes con el botón derecho del ratón; después, pulse Crear correlación.
  3. En la ventana Correlación nueva, en el campo Nombre de correlación, teclee Parameter2Parameter y pulse Aceptar. La correlación se visualiza en la vista Esquema y se abre en el área del editor bajo Raíz de correlación.

Añadir objetos de entrada y de salida a la declaración de correlación parámetro a parámetro

Por qué y cuándo se efectúa esta tarea

Después de haber creado la declaración de correlación, debe añadirle un objeto de entrada y un objeto de salida. En esta lección, especificará un parámetro UML para el objeto de entrada y para el objeto de salida.

Para añadir un objeto de entrada y un objeto de salida a la declaración de correlación parámetro a parámetro:

  1. Pulse el icono de Añadir un objeto de entrada, que es el situado más a la izquierda en la barra de herramientas de la correlación que se propone editar.
  2. En la ventana Añadir entrada, en el panel Elemento, expanda uml, pulse Parámetro y, después, Aceptar.
  3. Pulse el icono de Añadir un objeto de salida, que es el segundo icono de la izquierda en la barra de herramientas de la correlación que se propone editar.
  4. En la ventana Añadir salida, en el panel Elemento, expanda uml, pulse Parámetro y, después, Aceptar.
  5. Pulse Archivo > Guardar.
Resultados
Ahora puede definir reglas de correlación entre los atributos de los objetos de entrada y de salida del parámetro.

Definir reglas de correlación en la declaración de correlación parámetro a parámetro

Por qué y cuándo se efectúa esta tarea

Después de haber añadido los objetos de entrada y de salida a la declaración de correlación, ya puede definir las reglas de correlación entre los atributos.

En esta sección, creará reglas de subcorrelación y una regla de correlación de movimiento que, cuando se ejecute la transformación generada, creen un parámetro en el modelo destino, cuyo nombre, visibilidad y tipo sean idénticos a los del parámetro en un elemento del modelo origen. En esta guía de aprendizaje, la declaración de correlación Operation2Operation invoca esta declaración de correlación.

Para definir las reglas de correlación de la declaración de correlación parámetro a parámetro (Parameter2Parameter):

  1. Cree una regla de correlación de movimiento entre el atributo name del objeto de entrada y del objeto de salida:
    1. En el área del editor, en el objeto de entrada del parámetro pulse el atributo name.
    2. Arrastre la manecilla del atributo name hasta el atributo name del objeto de salida.
  2. Repita los pasos 1a y 1b, pero en lugar de escribir name, teclee visibility.
  3. Cree una regla de subcorrelación entre el atributo type del objeto de entrada y de salida:
    1. En el área del editor, en el objeto de entrada del parámetro pulse el atributo type.
    2. Arrastre la manecilla del atributo type hasta el atributo type del objeto de salida. Dado que este atributo es un tipo complejo, se crea por defecto una subcorrelación.
    3. Si la vista Propiedades no está abierta, vaya al área del editor y pulse el nuevo elemento Subcorrelación con el botón derecho del ratón y luego elija Mostrar en propiedades.
    4. En la vista Propiedades, en la pestaña Detalles, en la lista Correlación, seleccione Primitive2Primitive.
    Esta regla de correlación genera código que invoca el transforme Primitive2Primitive cuando se encuentra un parámetro primitivo en el modelo origen. El parámetro que hay en el modelo origen, si no es de tipo primitivo, no se transforma en el modelo destino.
  4. Repita los pasos 3a, 3b y 3c, y luego realice el siguiente paso:
    • En la vista Propiedades, en la pestaña Detalles, en la lista Correlación, seleccione Class2Class.
    Esta regla de correlación de subcorrelación genera código que crea un parámetro de tipo clase en un elemento del modelo destino, si el parámetro origen es de tipo clase.
  5. Repita los pasos 3a, 3b y 3c, y luego realice el siguiente paso:
    • En la vista Propiedades, en la pestaña Detalles, en la lista Correlación, seleccione Class2Interface.
    Esta regla de correlación de subcorrelación crea un parámetro de tipo interfaz en un elemento del modelo destino, si el parámetro origen es de tipo clase.
  6. Pulse Archivo > Guardar.
Resultados
Ahora puede definir las reglas de correlación de la declaración de correlación operación a operación que creó en: Lección 3: Crear y definir con más precisión una declaración de correlación clase a clase.

Definir reglas de correlación en la declaración de correlación operación a operación

Por qué y cuándo se efectúa esta tarea

En Lección 3: Crear y definir con más precisión una declaración de correlación clase a clase aprendió a crear una declaración de correlación operación a operación. En esta sección ya está listo para crear las reglas de correlación de esta declaración de correlación. Cuando ejecuta la transformación generada, estas reglas de correlación crean una operación en el modelo destino cuyo nombre, visibilidad y parámetros coinciden con los de la operación que hay en el modelo origen. En esta guía de aprendizaje, las declaraciones de correlación Class2Class y Class2Interface invocan esta declaración de correlación.

Para definir las reglas de correlación de la declaración de correlación operación a operación (Operation2Operation):

  1. Si todavía no está abierto, en la vista Explorador de paquetes, en la carpeta model, pulse dos veces en el archivo Generalize_Classes.mapping.
  2. En la vista Esquema, pulse la declaración de correlación Operation2Operation.
  3. Cree una regla de correlación de movimiento entre el atributo name del objeto de entrada y del objeto de salida:
    1. En el área del editor, en el objeto de entrada de la operación, pulse el atributo name.
    2. Arrastre la manecilla del atributo name hasta el atributo name del objeto de salida.
  4. Repita los pasos 3a y 3b, pero en lugar de escribir name, teclee visibility.
  5. Cree una regla de subcorrelación entre el atributo ownedParameter del objeto de entrada y del objeto de salida:
    1. En el área del editor, en el objeto de entrada de la operación, pulse el atributo ownedParameter.
    2. Arrastre la manecilla del atributo ownedParameter hasta el atributo ownedParameter del objeto de salida. Dado que este atributo es una colección, se crea por defecto una subcorrelación.
    3. Si la vista Propiedades no está abierta, vaya al área del editor y pulse el nuevo elemento Subcorrelación con el botón derecho del ratón y luego elija Mostrar en propiedades.
    4. En la vista Propiedades, en la pestaña Detalles, en la lista Correlación, seleccione Parameter2Parameter.
  6. Pulse Archivo > Guardar.
Resultados
En la próxima lección, creará una declaraciones de correlación paquete a paquete.
< Anterior | Siguiente >

Comentarios