Apéndice A Diseño Conceptual y Lógico En este apéndice que ahora presentamos intentaremos complementar lo explicado en el bloque actual. Básicamente nos adentraremos, de una mayor forma, dentro del propio diseño Conceptual y Lógico, con ello, conseguiremos obtener unos documentos más formales y entendibles por cualquier profesional del gremio. En primer lugar, detallaremos cómo realizar un diseño Conceptual con todos sus apartados correspondientes (Descripción y Diagrama E-R). En segundo y último lugar, mostraremos el algoritmo de transformación gracias al cual, obtendremos las distintas relaciones (normalizadas) de un modo fácil y rápido. Concluiremos esta introducción diciendo que todo lo que aparecerá a continuación podrá ser entendido de manera correcta habiendo estudiado el tema previamente. A.0.1. Descripción del Problema Aquí describiremos de manera precisa todo lo referente al problema que abordaremos. Tendremos que explicar las entidades con sus atributos, las relaciones también con sus atributos (si los hubiera), las restricciones, etc. Al terminar todo el proceso, poseeremos en nuestras manos un escrito que entenderá cualquier persona sepa de bases de datos o no. A.0.2. Diagrama E-R Un diagrama E-R consistirá en una representación gráfica de la descripción del problema. Esta figura no se podrá realizar de cualquier manera, 1
disponiendo de un lenguaje con una notación bastante especial. Figura A.1: Notación de Diagrama ER En estos esquemas las entidades se representarán como un rectángulo, siendo las débiles rectángulos dobles. El nombre que le hayamos dado aparecerá dentro. Las relaciones entre entidades vendrán expresadas mediante rombos, ocurriendo con los elementos débiles lo mismo que en el caso anterior. El nombre lo podremos ver en su interior nuevamente. 2
Con los atributos encontraremos una mayor variedad dentro del lenguaje. Éstos se expresarán mediante un óvalo donde aparecerá el sustantivo asociado a la figura. Tendremos los siguiente: Normal: Óvalo normal. Clave: Tiene el nombre subrayado. Multivaluado: Podremos distinguir dos óvalos concéntricos. Compuesto: Poseerá distintas ramificaciones que partirán del mismo elemento. Derivado: Estará dibujado mediante una línea discontínua. Para la participación total 1 mostraremos dos líneas. La cardinalidad será como aparece en la figura anterior. A.0.3. Algoritmo de Transformación Concluida la fase de diseño Conceptual procederemos a explicar el diseño Lógico. En esta etapa nuestra misión se centrará en conseguir un diseño relacional a partir del diagrama ER desarrollado, para ello, aplicaremos los siguientes pasos: PASO 1. Por cada tipo de entidad fuerte E, crearemos una relación R con todos los atributos simples de E. Incluiremos sólo los atributos simples componentes de un atributo compuesto. Elegiremos un atributos clave de E como clave de R, si la clave es compuesta el conjunto de atributos simples son clave primaria. PASO 2. Por cada tipo de entidad débil D con tipo de entidades propietario E, se crea una relación R, y se incluyen todos los atributos simples (o componentes simples de los atributos compuestos) de D en R. Además, se incluyen como atributos de clave externa de R el atributo o atributos de clave primaria de la relación o relaciones que corresponden al tipo o tipos de entidades propietarias; con esto indicamos el tipo de relación identificadora de D. 1 Todas las entidades de este tipo deberán participar en la relación. 3
PASO 3. Por cada tipo de relación binaria 1:1 del esquema ER, se identifican la relación L y F correspondientes a las entidades participantes. Para que quede constancia de este vínculo, elegiremos una de las relaciones, por ejemplo L, e incluiremos como clave externa en L la clave primaria de F. Vemos más conveniente elegir un tipo de identidad con participación total en R en el papel de L. Además de la clave externa también añadiremos todos los atributos simples asociados a la relación. PASO 4. Por cada tipo de relación binaria 1:N R, se identifica la relación L que representa el tipo de entidad participante del lado N del tipo de relación. Se incluye como clave externa en L la clave primaria de la relación F que sería el otro tipo de entidad participante en R; esto se debe a que cada instancia de la entidad del lado N está relacionada con un máximo de una instancia de la entidad del lado 1 del tipo de relación. Se incluyen todos los atributos simples del tipo de relación 1:N como atributos de L. PASO 5. Por cada tipo de relación binaria M:N R, se crea una nueva relación L para representar a R. Se incluyen como atributos de clave externa en L las claves primarias de las relaciones que representan los tipos de entidades participantes; su combinación constituirá la clave primaria de L. También se incluyen los atributos simples del tipo de relación M:N como atributos de L. PASO 6. Por cada atributo multivaluado B, se crea una nueva relación R. Esta relación R tendrá un atributo correspondiente a B, más el atributo de clave primaria K de la relación que representa el tipo de entidad o relación que tiene a B como atributo. La clave primaria de R es la combinación de B y K. Si el atributo multivaluado es compuesto, se incluyen sus componentes simples. PASO 7. Por cada tipo de relación n-arias R, n > 2, se crea una nueva relación L que represente a R. Se incluyen como atributos de clave externa de L las claves primaria de las relaciones que representan los tipos de entidades participantes. También se incluyen los atributos simples (o los componentes simples de los atributos compuestos) del tipo de relaciones n-arias como atributos de L. La clave primaria de L casi siempre es una combinaciń de todas las claves externas que hacen referencia a las relaciones que representan los tipos de entidades participantes. No obstante, si la restricción de cardinalidad de uno de los tipos de entidades E que participn en R es 1, entonces la clave 4
primaria de L no debería incluir el atributo de clave externa que haga refenrencia a la relación E que corresponde a E. Con esto concluye el procedimiento de transformación. Anexo realizado por los profesores del presente curso: Ismael González Trujillo Juan José Güelfo Borrajo Juan Manuel Hurtado Salcedo Ricardo Mariscal Quintero 5