Escolar Documentos
Profissional Documentos
Cultura Documentos
Presentacin
Presentacin
Lgica Negocio
Lgica Negocio
Persistencia
Persistencia
BD
1
BD
2
Base de datos
final
Nombre
Juan
Luis
Marcos
Edad
22
34
17
Nombre
Juan
Luis
Edad
22
34
Mo
d1
EC1
BD
1
EC2
Mig 1
BD
2
Mod
2
Mig 2
EC3
BD
3
Mod
3
Mig 3
EC4
BD
4
Diseo de la solucin.
Vamos a intentar solucionar el problema de una manera
elegante, y que por otro lado es la manera ms sensata posible; esto
es, modelando la solucin con el propio OO-Method, y generando
automticamente la aplicacin que resuelve el problema.
Para poder modelar la solucin, deberamos establecer primero
una metodologa para abordar la migracin de datos. En primer lugar,
toda migracin debera pasar por los siguientes pasos:
-
- Localizacin de Inconsistencias
.
A partir de una comparacin entre los esquemas conceptuales
inicial y final, se obtienen las diferencias y se propone un plan de
migracin entre las bases de datos. Este plan no tiene porque ser el
que el analista quiere, puede ser editado y cambiado. Una vez se
tiene el plan de migracin, se traduce en sentencias de
transformacin (SQL, DTS...) y se ejecuta la migracin. Finalmente,
debe haber una fase de localizacin de inconsistencias, y de aviso al
analista de que poblacin ha sido migrada, y que poblacin queda por
analizar para su posterior migracin.
En segundo lugar, se debe tener en cuenta que, una vez
generada la aplicacin en algn lenguaje de programacin como
pueda ser Visual Basic, quedarn por implementar manualmente los
mtodos algortmicos de comparacin de esquemas, y el compilador
del plan de migracin.
En tercer lugar, est el hecho de que de todos los elementos de
los esquemas conceptuales solo debemos considerar para la
migracin aquellos que tengan una repercusin sobre las bases de
datos.
En nuestro caso esos elementos son los siguientes:
-
Clases
Atributos
Relaciones de Agregacin
Relaciones de Especializacin
ARBOL
EC
Clase
1
Atribu
to 1
..
.
..
.
Atribu
to k
Clase
i
Restri
c. 1
Relaci
n1
..
.
..
.
Restri
c. n
Relaci
Relacin
j nj
Clase Atributo: