Evolución de Datos Vicent Estruch Gregori Josep F. Silva Galiana
Download
Report
Transcript Evolución de Datos Vicent Estruch Gregori Josep F. Silva Galiana
Evolución de Datos
Vicent Estruch Gregori
Josep F. Silva Galiana
Laboratorio de Sistemas de Información
Facultad de Informática
Universidad Politécnica de Valencia
29/01/03
1
Índice
Introducción
Descripción del problema
Situación actual
Solución propuesta
Ejemplo
Conclusiones
Trabajos futuros
Preguntas
29/01/03
2
Situación Actual
Paradigma de prototipación automática.
Herramientas generadoras de código.
Metodologías de evolución de aplicaciones.
¿Evolución de los datos?
Es necesaria una metodología
29/01/03
3
Descripción del Problema
Herramientas de modelado conceptual capaces de generar
aplicaciones a partir del esquema.
Evolución de software a partir de la evolución del esquema.
EC1
29/01/03
Mod 1
EC2
Mod 2
EC3
Mod 3
EC4
4
Descripción del Problema
Evolución de las aplicaciones
¡Requisitos!
Esquema
Conceptual
1
Aplicación
1
29/01/03
Cambios
Servicios Evolución
Datos???
¡Requisitos!
Esquema
Conceptual
2
Aplicación
2
5
Descripción del Problema
Necesidad de la evolución automática de datos
Presentación
Presentación’
Lógica de Negocio
Lógica de Negocio’
Persistencia
Persistencia’
BD
1
BD
2
29/01/03
6
Descripción del Problema
Durante el proceso de evolución de un Esquema Conceptual,
la BDR original ha ido poblándose.
Herramientas actuales soportan Evolución de Esquema.
Pero NO migran población.
Hay que preservar esta información.
Problema puede ser peor: Legacy Systems.
29/01/03
7
Situación Actual
Migración manual
Creación de programas de migración
Ejecución sentencias SQL
29/01/03
8
Situación Actual
Migración Asistida (software de soporte)
DTS de SQLServer
FileAid
ReTarGet
29/01/03
9
Solución Propuesta
Comparar dos Esquemas Conceptuales
Obtener las Diferencias
Proponer un Plan de Migración
Facilidades de Edición
Traducción Plan de Migración
Ejecución
Localización de Inconsistencias
29/01/03
10
Solución Propuesta
Metodología evolución de aplicaciones
OO-Method
Comparación de esquemas: Todo aquello que tenga una
repercusión sobre los datos.
* Clases
* Atributos
* Relaciones Agregación
* Relaciones Especialización
29/01/03
11
Solución Propuesta
Obtener las Diferencias
Elementos añadidos
E’(j)
Elementos eliminados
E(i)
Elementos modificados
E(i) E’(j)
29/01/03
12
Solución Propuesta
Proponer un Plan de Migración
Trata de establecer una función de trasvase de datos
entre la base de datos origen y la base de datos final.
Habrá que definir un lenguaje:
E’.Clase1 E.Clase1
E’.Clase1.Atr1 E.Clase1.Atr1
...
29/01/03
13
Solución Propuesta
Facilidades de edición: El analista podrá establecer
cambios en el plan de migración.
Es posible que la lógica de negocio afecte a los datos, y
solo el usuario conoce las reglasde migración.
Traducción del plan: El plan de evolución final del analista
se traducirá automáticamente.
E.Clase1 E’.Clase1 INSERT INTO E’.Clase1
SELECT * FROM E.Clase1
29/01/03
14
Solución Propuesta
Ejecución del plan de migración:
BD
1
Programa
Migración
BD
2
29/01/03
15
Solución Propuesta
Comprobación Restricciones Integridad: La base
de datos final puede violar su propio esquema
por haber introducido datos artificialmente.
Restricciones de Integridad
Condiciones de Especialización
Condiciones de Disparo
Estados Inalcanzables o Sumideros
...etc.
29/01/03
16
Ejemplo
NumMáquina
Descripción
Función(D)
NumMáquina
Operador
Descripción
Función(D)
1:1
1:1
1:M DI
1:M DI
NumPieza
Cantidad
Importe
PrecioPieza (D)
29/01/03
NumPieza
Cantidad
Importe
PrecioPieza (D)
17
Ejemplo
Obtener las Diferencias
Elementos añadidos
EC2.Máquina.Operador
Elementos eliminados
Ø
Elementos modificados
Ø
29/01/03
18
Ejemplo
Proponer un Plan de Migración
EC1.Máquina EC2. Máquina
EC1. Máquina.NumMáquina
EC2.Máquina.NumMáquina
EC2.Máquina.Operador
EC1. Máquina.Descripción EC2. Máquina.Descripción
EC1.Pieza EC2. Pieza
EC1. Pieza.NumPieza EC2. Pieza.NumPieza
EC1. Pieza.Cantidad EC2. Pieza.Cantidad
EC1. Pieza.Importe EC2. Pieza.Importe
29/01/03
19
Conclusiones
Durante el proceso de evolución de un EC, el SI
correspondiente va poblándose con datos.
Estos datos constituyen la parte más valiosa del SI.
La migración de los datos de un SI a otro no tiene un
soporte metodológico.
29/01/03
20
Conclusiones
La solución propuesta permite:
Comparar dos Esquemas Conceptuales
Obtener las diferencias
Proponer un Plan de Migración
Editarlo
Traducirlo
Ejecutarlo
Comprobar inconsistencias
29/01/03
21
Conclusiones
La evolución de datos es un proceso naturalmente
paralelo a la evolución de aplicaciones.
EC1
BD
1
29/01/03
Mod 1
Mig 1
EC2
BD
2
Mod 2
Mig 2
EC3
BD
3
Mod 3
Mig 3
EC4
BD
4
22