PDF de programación - Integración de herramientas CASE usando Internet, CORBA, y repositorios de Meta Información

Imágen de pdf Integración de herramientas CASE usando Internet, CORBA, y repositorios de Meta Información

Integración de herramientas CASE usando Internet, CORBA, y repositorios de Meta Informacióngráfica de visualizaciones

Publicado el 4 de Abril del 2020
66 visualizaciones desde el 4 de Abril del 2020
148,0 KB
11 paginas
Creado hace 16a (08/07/2003)
Integración de herramientas CASE usando
Internet, CORBA, y repositorios de Meta

Información

A/C. Enrique Delfino
Grupo Lins - Inco
Facultad de Ingeniería - UdelaR
http://www.fing.edu.uy/inco/grupos/lins/

1. Introducción

1.1. Contexto

Las herramientas CASE asisten en el análisis y diseño de proyectos y facilitan la
generación de aplicaciones finales, brindan facilidades en una amplia gama de actividades que
van desde la asistencia gráfica en el diseño hasta la generación automática de código.
Constituyen un tipo de software fundamental en el desarrollo de proyectos, sobre todo de gran
porte.

Durante el ciclo de vida de un proyecto puede ser necesario utilizar varias herramientas

CASE por diferentes razones, entre ellas:

S una sola herramienta puede no cubrir todas las necesidades
S no cubre todo el ciclo de vida de desarrollo del proyecto
S el proyecto se reparte entre varias empresas y no es posible que todas estén de

S

acuerdo en utilizar la misma herramienta.
la diversidad de lenguajes y metodologías existente ha hecho que no exista un
ambiente CASE integrado para las mismas.

Sin un ambiente integrado, con una forma de intercambio de información, al momento
de mover información de una herramienta a otra, es necesario ingresar nuevamente los datos
en el nuevo modelo. Esto es una solución costosa, que puede introducir nuevos errores, y que
requiere un conocimiento completo de las herramientas con las que se esta intercambiando la
información.

Una forma de integración de las mismas consiste en programar interfaces para la
interacción entre cada par de componentes utilizados, debiendo reprogramar una parte
importante de las interfaces si alguno de los componentes cambia.

Otra forma de integración menos costosa y mas escalable consiste en definir una
interface estándar independiente de los productos, de forma que integrar una nueva
herramienta a un conjunto ya existente o el cambio en una de ellas, requiera sólo la
programación de la interfaz para el nuevo componente (o componente modificado) que realice
la comunicación con un manejador central. Este último se basa en contar con un repositorio de
modelos en común y un mecanismo de conexión que permita integrar las funcionalidades.

1.2. Estado del arte

Existen algunos estándares que permiten definir y manipular los metadatos a

intercambiar entre herramientas CASE.

manipular metadatas.

MOF (Meta Object Facility) es una especificación de la OMG para definir, representar y

dMOF es la implementación de la especificacion MOF por parte de la DSTC [dMOF].
Este producto es una suite de herramientas que permiten la generacion de manejadores de
repositorios para metadatos.

XMI es el formato definido para la transmision de metadata definido por la OMG.
CWM (Common Warehouse Meta-model)[cwm] es el meta-modelo canónico que se
maneja en el repositorio (en particular el OLAP de CWM). La especificación CWM es
establecida por la OMG (basada en los estándares UML, MOF, y XMI), consiste de un conjunto
de meta-modelos llamados paquetes (como por ejemplo los paquetes OLAP, Relacional,
Transformacional, Jerárquico), y define como modelar, manipular e intercambiar metadata entre
herramientas. (De ahora en mas
términos paquete y meta-modelo se usaran
indistintamente).

los

XMI es un estándar para codificar colecciones de meta data basadas en MOF como

documentos XML.

SOAP (Simple Object Access Protocol) es el mecanismo de comunicación a utilizar
entre las herramientas y el manejador de repositorio (para el alta y modificación de modelos).
El protocolo SOAP se basa en XML para hacer llamadas a procedimientos remotos usando
HTTP como protocolo de transporte.

Integración de herramientas CASE usando Internet, Corba y Repositorios de Metainformación Página 2 de 11

1.3. Descripción general

El presente proyecto implementa un manejador de repositorio centralizado para
modelos OLAP, donde las herramientas CASE pueden realizar altas y modificaciones de
modelos (OLAP) a través de Internet.

Los modelos son almacenados en forma persistente y cualquiera de ellos esta
accesible a cualquier herramienta CASE que acceda al repositorio a través de internet
utilizando SOAP.

Las herramientas CASE que se

integren con el manejador pueden estar
implementadas en cualquier plataforma y lenguaje, lo único que requieren es implementar una
interfaz (en el lenguaje y plataforma que se desee) para acceder a la funcionalidad del mismo.

El repositorio puede ser navegado a través de Internet, utilizando un browser. Se puede
obtener un reporte en HTML de cada modelo almacenado, e incluso cada modelo puede ser
obtenido (downloading) a través del browser. Esta navegación es de solo consulta.

La siguiente figura muestra la funcionalidad de este proyecto en forma global.

Herram.CASE 1 (java)

Herram.CASE n (C++)

Interfaz

Interfaz

Browser

Internet

Altas y modif. de modelos del repositorio

Navegación del repositorio

Manejador de Repositorio

Repositorio

  :3.43,/,/ 4-, /0 5740.94

Para demostrar el funcionamiento, se realizo la aplicación practica del manejador a una

herramienta CASE en particular, implementando la interfaz correspondiente.

Manejador de Repositorio.

La implementación del manejador de repositorio “núcleo” (representado en la figura 1
por un recuadro con el nombre “manejador de repositorio”) es una implementación CORBA,
generada con la herramienta dMOF.

DMOF permite, básicamente, generar manejadores de repositorios para meta-modelos
basados en MOF. Los modelos son almacenados en el repositorio como objetos CORBA (se
almacena su IOR).

Este manejador tal cual es generado puede ser accedido únicamente por clientes
CORBA. La funcionalidad (para clientes CORBA) abarca todo lo que es creación y manejo de
modelos OLAP de CWM. Permite además trabajar con el documento XMI correspondiente a
cada uno de esos modelos (el cual contiene la misma información). Por ejemplo a partir de un
objeto CORBA que representa un modelo permite obtener el XMI del mismo y viceversa
(procesos que de ahora en mas llamaremos Producer –producir XMI- y Consumer –consumir
XMI- respectivamente).

Integración de herramientas CASE usando Internet, Corba y Repositorios de Metainformación Página 3 de 11

Cliente CORBA

ABM de modelos

Cliente

Documentos en XMI de modelos
según CWM

Producer y Consumer

Modelo
X

Stubs Cliente- Skeletons
CORBA

Manejador Repositorio

Repositorio

  :3.43,20394 /0 2,30,/47 /0 705489474

El esquema de la arquitectura del manejador de repositorio generado por dMOF es el

siguiente:

Stubs-Cliente

Servidores

BUS

Repositorio

  ,30,/47 /0 705489474 0307,/4 .43 / 

Integración de herramientas CASE usando Internet, Corba y Repositorios de Metainformación Página 4 de 11

Alta y modificación de modelos en el repositorio vía Internet

El alta y modificación de modelos vía Internet (ver Fig. 1) implementa un “puente”
SOAP-CORBA. Es una “capa” sobre el manejador de repositorio en CORBA que permite a
cualquier tipo de clientes (herramientas) acceder a los modelos OLAP almacenados en el
repositorio vía SOAP. Permite agregar un modelo nuevo al repositorio u obtener y actualizar
uno existente, en los tres casos el modelo es dado en XMI. Es decir que las herramientas
CASE que interactúen con el manejador a través de SOAP deben enviar y/o recibir modelos
OLAP (de CWM) en XMI. Adicionalmente almacena datos de cabecera de los modelos como
fecha de creación y descripción.

Esta interfaz SOAP ofrece una funcionalidad restringida con respecto a la totalidad que
brinda el manejador en CORBA, ya que solo permite actualizar un modelo “entero”, no permite
modificar partes como con CORBA. Ofrece los métodos atómicos: LoadXMI (obtención de un
modelo) y StoreXMI (inserción o actualización). Para estos utiliza además la funcionalidad
Producer y Consumer.

La siguiente figura muestra mas en detalle la interacción entre los recuadros titulados

como “Altas y modif. de modelos del repositorio” y “Manejador de Repositorio” de la Fig. 1.

Gráficamente se tiene:

SOAP- XMI

Servidor Web
Caucho-Resin

XMI

Interfaz SOAP-Apache SOAP

Producer y Consumer

Objetos CORBA

Stubs-Cliente

Servidores

BUS

  ,30,/47 /0 705489474 0307,/4 .43 / 

Navegación del repositorio

JDBC

JDBC

MYSQL

El módulo para el acceso web al repositorio (recuadro titulado como Navegación del
repositorio en la Fig. 1) implementa la navegación y consulta del repositorio a través de
Internet, las funcionalidades que ofrece son:

S Navegación del repositorio de modelos, obteniendo un listado de los modelos
existentes en el repositorio, con datos de cabecera como fecha de creación,
descripción e identificador (información adicional del modelo).

S Obtención del documento XMI de cualquier modelo almacenado en el repositorio
S Generación de un reporte en HTML de cualquier modelo, en un formato más

“legible” resultado de aplicar una transformación XSL al XMI mencionado.

Integración de herramientas CASE usando Internet, Corba y Repositorios de Metainformación Página 5 de 11

Tanto este modulo como la interfaz SOAP corren bajo el mismo Servidor Web.

Browser

Modelo en XMI o reporte del
modelo en HTML

Páginas JSP

Lógica Acceso Web XMI-XSL-HTML

Servidor Web

Producer

Manejador Repositorio

Datos de control

Repositorio

   39071, /0 ,..084 0- , 705489474

Interfaz entre cliente (herramienta CASE) y objetos de “ayuda al clie
  • Links de descarga
http://lwp-l.com/pdf17488

Comentarios de: Integración de herramientas CASE usando Internet, CORBA, y repositorios de Meta Información (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad