Ver Mensaje Individual
  #3 (permalink)  
Antiguo 01/07/2009, 13:51
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Modelos de clase a modelo relacional

Existe alguna forma de realizar la transformación, pero no se trata de dos diagramas que se correspondan 1:1, esto es: El modelo de clases y el modelo de datos de UM están relacionados, pero no son iguales.
Para darte algunos detalles:
1. Las superclases eventualmente se pueden transformar en tablas, pero no en todos los casos siguen existiendo por sí mismas, pudiendo fusionarse más de una en la misma tabla. Si una suplerclase posee una composición de cardinalidad1:1, estas dos clases se convertirán en una sola tabla.
2. Una clase que posea relaciones n:n con otra, no implica que sean dos tablas, sino tres, ya que las relaciones n:n definen la existencia de tablas nuevas que no existen como clases.
3. Una jerarquía puede componer un conjunto de tablas dependientes de una tabla principal; pero puede también ser que muchas subclases de una jerarquía se fusionen un una sola tabla con relaciones a la tabla primaria y una o más tablas primarias adicionales, que no existen tampoco dentro del diagrama de clases.
4. No existen relaciones de nivel superior a las ternarias en un modelo de datos. Esto significa que si A está relacionada con B y con C, no existe una relación mayor a esa, por lo que si existe una tabla D relacionada al conjunto, esta se relaciona a una sola o a dos de ellas, pero no a las tres.
5. Si pueden existir tablas que se relaciones a múltiples tablas en forma directa.

El tema aquí es que transformar un modelo de clases en un modelo de datos requiere primero crear sobre la base de las reglas del negocio y del modelo de clases extraído de allí, un diagrama intermedio que exprese el modelo Entidad - Relación. Es desde ese modelo E-R de donde se parte más fácilmente hacia el modelo lógico de datos, y de allí al modelo físico.

Aunque todo esto parezca muy complicado, en realidad es sencillo de desarrollar cuando conoces los dos lados del problema. El inconveniente que puedes tener está dado por la diferencia de visión de los sistemas entre los programadores y los administradores de datos. Las visiones son muy disímiles y a veces a los programadores les resulta un poquito críptico el asunto.

Si pudieses aportarnos el diagrama de clases, podríamos comenzar a ver el problema para que lo entiendas mejor.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)