RESUMEN DE LA UNIDAD 2 “DISEÑO DE BASES DE DATOS Y EL

Anuncio
RESUMEN DE LA UNIDAD 2 “DISEÑO DE BASES DE DATOS Y EL MODELO E-R”
TEMA 2.1 EL PROCESO DE DISEÑO
En este capítulo se presenta una metodología para el diseño conceptual de bases de datos que se
basa en el modelo de datos más popular en la actualidad, el modelo entidad-relación. El diseño de
bases de datos es el proceso por el que se determina la organización de una base de datos,
incluidos su estructura, contenido y las aplicaciones que se han de desarrollar. Durante mucho
tiempo, el diseño de bases de datos fue considerado una tarea para expertos: más un arte que una
ciencia.
El diseño de bases de datos se ha convertido en una actividad popular, desarrollada no sólo por
profesionales sino también por no especialistas.
Según ha avanzado la tecnología de bases de datos, así se han desarrollado las metodologías y
técnicas de diseño. Se ha alcanzado un consenso, por ejemplo, sobre la descomposición del
proceso de diseño en fases, sobre los principales objetivos de cada fase y sobre las técnicas para
conseguir estos objetivos.
Debido a la falta de enfoques estructurados para el diseño de bases de datos, a menudo se
subestiman el tiempo o los recursos necesarios para un proyecto de bases de datos, las bases de
datos son inadecuadas o ineficientes en relación a las demandas de la aplicación, la
documentación es limitada y el mantenimiento es difícil.
La tecnología de bases de datos cuenta ya con un marco teórico, que incluye la teoría relacional de
datos, procesamiento y optimización de consultas, control de concurrencia, gestión de
transacciones y recuperación, etc.
El diseño de una base de datos es un proceso complejo que abarca decisiones a muy distintos
niveles. La complejidad se controla mejor si se descompone el problema en subproblemas y se
resuelve cada uno de estos subproblemas independientemente, utilizando técnicas específicas.
TEMA 2.2 MODELO E-R
El modelo entidad-relación es el modelo conceptual más utilizado para el diseño conceptual de
bases de datos. Fue introducido en 1976. El modelo entidad-relación está formado por un
conjunto de conceptos que permiten describir la realidad mediante un conjunto de
representaciones gráficas y lingüísticas.
Originalmente, el modelo entidad-relación sólo incluía los conceptos de entidad, relación y
atributo. Más tarde, se añadieron otros conceptos, como los atributos compuestos y las jerarquías
de generalización, en lo que se ha denominado modelo entidad-relación extendido.
En general, un modelo no es capaz de expresar todas las propiedades de una realidad
determinada, por lo que hay que añadir aserciones que complementen el esquema.
Entidad
Cualquier tipo de objeto o concepto sobre el que se recoge información: cosa, persona, concepto
abstracto o suceso. Por ejemplo: coches, casas, empleados, clientes, empresas, oficios, diseños de
productos, conciertos, excursiones, etc. Las entidades se representan gráficamente mediante
rectángulos y su nombre aparece en el interior. Un nombre de entidad sólo puede aparecer una
vez en el esquema conceptual.
Hay dos tipos de entidades: fuertes y débiles. Una entidad débil es una entidad cuya existencia
depende de la existencia de otra entidad. Una entidad fuerte es una entidad que no es débil.
Relación
Es una correspondencia o asociación entre dos o más entidades. Cada relación tiene un nombre
que describe su función. Las relaciones se representan gráficamente mediante rombos y su
nombre aparece en el interior.
Las entidades que están involucradas en una determinada relación se denominan entidades
participantes. El número de participantes en una relación es lo que se denomina grado de la
relación. Por lo tanto, una relación en la que participan dos entidades es una relación binaria; si
son tres las entidades participantes, la relación es ternaria; etc.
Atributo
Es una característica de interés o un hecho sobre una entidad o sobre una relación. Los atributos
representan las propiedades básicas de las entidades y de las relaciones. Toda la información
extensiva es portada por los atributos. Gráficamente, se representan mediante bolitas que cuelgan
de las entidades o relaciones a las que pertenecen.
Cada atributo tiene un conjunto de valores asociados denominado dominio. El dominio define
todos los valores posibles que puede tomar un atributo. Puede haber varios atributos definidos
sobre un mismo dominio.
Los atributos pueden ser simples o compuestos. Un atributo simple es un atributo que tiene un
solo componente, que no se puede dividir en partes más pequeñas que tengan un significado
propio. Un atributo compuesto es un atributo con varios componentes, cada uno con un
significado por sí mismo. Un grupo de atributos se representa mediante un atributo compuesto
cuando tienen afinidad en cuanto a su significado, o en cuanto a su uso. Un atributo compuesto se
representa gráficamente mediante un óvalo.
Los atributos también pueden clasificarse en monovalentes o polivalentes. Un atributo
monovalente es aquel que tiene un solo valor para cada ocurrencia de la entidad o relación a la
que pertenece. Un atributo polivalente es aquel que tiene varios valores para cada ocurrencia de
la entidad o relación a la que pertenece. A estos atributos también se les
denomina multivalorados, y pueden tener un número máximo y un número mínimo de valores.
Por último, los atributos pueden ser derivados. Un atributo derivado es aquel que representa un
valor que se puede obtener a partir del valor de uno o varios atributos, que no necesariamente
deben pertenecer a la misma entidad o relación.
TEMA 2.3 RESTRICCIONES
La cardinalidad de un atributo indica el número mínimo y el número máximo de valores que puede
tomar para cada ocurrencia de la entidad o relación a la que pertenece.
Identificador
Un identificador de una entidad es un atributo o conjunto de atributos que determina de modo
único cada ocurrencia de esa entidad. Un identificador de una entidad debe cumplir dos
condiciones:
1. No pueden existir dos ocurrencias de la entidad con el mismo valor del identificador.
2. Si se omite cualquier atributo del identificador, la condición anterior deja de cumplirse.
Toda entidad tiene al menos un identificador y puede tener varios identificadores alternativos. Las
relaciones no tienen identificadores.
En primer lugar hay que definir los principales objetos que interesan al usuario. Estos objetos
serán las entidades. Una forma de identificar las entidades es examinar las especificaciones de
requisitos de usuario.
Para liarlo aún más, los usuarios usan, muchas veces, sinónimos y homónimos. Dos palabras son
sinónimos cuando tienen el mismo significado. Los homónimos ocurren cuando la misma palabra
puede tener distintos significados dependiendo del contexto.
Hay que tener mucho cuidado cuando parece que un mismo atributo se debe asociar a varias
entidades. De cada atributo se debe anotar la siguiente información:
·Nombre y descripción del atributo.
·Tipo de dato y longitud.
·Valores por defecto del atributo (si se especifican).
·Si el atributo siempre va a tener un valor (si admite o no nulos).
· Si el atributo es compuesto y, en su caso, qué atributos simples lo forman.
· Si el atributo es derivado y, en su caso, cómo se calcula su valor.
· Si el atributo es multievaluado.
TEMA 2.4 DIAGRAMAS E-R
Denominado por sus siglas como: E-R; Este modelo representa a la realidad a través de un
esquema gráfico empleando los terminología de entidades, que son objetos que existen y son los
elementos principales que se identifican en el problema a resolver con el diagramado y se
distinguen de otros por sus características particulares denominadas atributos, el enlace que rige
la unión de las entidades está representada por la relación del modelo.
Recordemos que un rectángulo nos representa a las entidades; una elipse a los atributos de las
entidades, y una etiqueta dentro de un rombo nos indica la relación que existe entre las entidades,
destacando con líneas las uniones de estas y que la llave primaria de una entidad es aquel
atributo que se encuentra subrayado.
Diseñar el modelo E-R, para la relación Registro de automóvil que consiste en obtener la tarjeta de
circulación de un automóvil con los siguientes datos:- Automóvil- Modelo, Placas, Color - Tarjeta
de circulación -Propietario, No serie, Tipo.
Indicamos con este ejemplo que existe una relación de pertenencia de uno a uno, ya que existe
una tarjeta de circulación registrada por cada automóvil.
El siguiente ejemplo indica que un cliente puede tener muchas cuentas, pero que una cuenta
puede llegar a pertenecer a un solo cliente (Decimos puede, ya que existen cuentas registradas a
favor de más de una persona).
Un diagrama E-R, puede ser representado también a través de una colección de tablas. Para cada
una de las entidades y relaciones existe una tabla única a la que se le asigna como nombre el del
conjunto de entidades y de las relaciones respectivamente, cada tabla tiene un número de
columnas que son definidas por la cantidad de atributos y las cuales tienen el nombre del atributo.
TEMA 2.5 DISEÑO CON DIAGRAMAS E-R
En la gráfica se aprecia la forma en que se representan las entidades, las relaciones, los atributos y
la cardinalidad de las relaciones.
Como ejercicio clasificar e identificar las entidades y los atributos. Expresar con sus palabras las
relaciones e identificar la cardinalidad, expresando su significado.
Otro elemento a tener en cuenta es, que como se ha dicho, las relaciones representan muy
usualmente acciones (verbos) que se dan entre conjuntos de entidades, lo cual sería un buen para
preferir esta representación antes que tomarlos como atributos o como conjuntos de entidades.
Se puede optar por representar entidades débiles como atributos compuestos multivalorados.
Pero si la entidad débil participa en otra relación o tiene muchos atributos es preferible manejarla
como entidad.
En la gráfica se aprecia la forma en que se representan las entidades, las relaciones, los atributos y
la cardinalidad de las relaciones.
Observaciones:
Los nombres de las entidades se escriben en mayúsculas y en singular.
Los nombres de los atributos en minúsculas y en singular.
Los atributos identificadores se marcan con el símbolo #.
Los atributos obligatorios se marcan con * y los opcionales con o.
TEMA 2.6 CONJUNTO DE ENTIDADES DEBILES
Un conjunto de entidades débiles es aquel que no tiene suficientes atributos para formar una
clave primaria. Un conjunto que sí tiene una clave primaria se denomina conjunto de entidades
fuertes.
Cada conjunto de entidades débiles debe estar asociado con un conjunto de entidades llamado
conjunto de entidades identificadoras o propietarias. Así, el conjunto de entidades débiles
depende existencialmente del conjunto de entidades identificadoras. La relación que asocia el
conjunto de entidades débiles con el conjunto de entidades identificadoras se denomina relación
identificadora. La relación identificadora es varios a uno del conjunto de entidades débiles al
conjunto de entidades identificadoras y la participación del conjunto de entidades débiles en la
relación es total.
Aunque un conjunto de entidades débiles no tiene clave primaria, deben hacerse distinguir todas
aquellas entidades del conjunto de entidades que dependen de una entidad fuerte particular. El
discriminante de un conjunto de entidades débiles es un conjunto de atributos que permiten esta
distinción.
La clave primaria de un conjunto de entidades débiles se forma con la clave primaria del conjunto
de entidades identificadoras, más el discriminante del conjunto de entidades débiles.
Un conjunto de entidades débiles se indica en los diagramas E-R mediante un rectángulo dibujado
con una línea doble y la correspondiente relación de identificación mediante un rombo dibujado
con línea doble.
En algunos casos, el diseñador de la base de datos puede elegir expresar un conjunto de entidades
débiles como un atributo compuesto multivalorado del conjunto de entidades propietarias.
En nuestro ejemplo, el conjunto de entidades identificador para pago es préstamo, y la
relación préstamo-pago que asocia las entidades pago con sus correspondientes entidadespréstamo es la relación identificadora. Aunque un conjunto de entidades débiles no tiene clave
primaria, no obstante se necesita conocer un medio para distinguir todas aquellas entidades del
conjunto de entidades que dependen de una entidad fuerte particular. El discriminante de un
conjunto de entidades débiles es un conjunto de atributos que permite que esta distinción se
haga. Por ejemplo, el discriminante del conjunto de entidades débiles pago es el atributo númeropago, ya que, para cada préstamo, un número de pago identifica de forma única cada pago para
ese préstamo. El discriminante de un conjunto de entidades débiles se denomina la clave
parcial del conjunto de entidades.
TEMA 2.7 MODELO E-R EXTENDIDO
Es un modelo conceptual de datos de alto nivel: Sirve para representar los conceptos del
Mundo que nos interesan con sus relaciones y características. Es una herramienta muy
utilizada directamente o a través de otras herramientas o programas.
El Modelo Entidad-Relación Extendido incluye todos los conceptos del Entidad-Relación
e incorpora los conceptos de Subclase y superclase con los conceptos asociados de
Especialización y Generalización. Otro nuevo concepto incluido por el ERE es el de
Categoría. Asociado a estos conceptos está el importante mecanismo de Herencia de
atributos. Habrá que tener en cuenta que no existe una terminología estandarizada para
estos conceptos, por lo que usaremos la más difundida.
SUBCLASE: Grupo de elementos con algo en común, que pertenecen a una entidad.
Ejemplo: Pertenecientes a empleado, tenemos las subclases Ingeniero, Supervisor.
SUPERCLASE: Entidad de la que procede una subclase.
RELACIÓN: Clase/Subclase(o Superclase/Subclase): Es una relación 1:1 en la que ambos
elementos son el mismo. Se suele representar por Ejemplo: Ingeniero Es Empleado.
–Una Entidad no puede ser sólo miembro de una subclase. Debe ser también miembro de
la superclase.
–Una Entidad puede ser miembro de varias subclases. Ejemplo: Un
Empleado puede ser Ingeniero y Supervisor.
–Una Entidad se define por sus atributos y sus relaciones, los cuales son heredados por sus
subclases.
–Atributos y Relaciones locales o específicas: Son aquellas que son propias de una subclase (no
de la superclase a la que pertenece).
ESPECIALIZACIÓN: Proceso para definir un conjunto de subclases de un tipo de Entidad (llamada
superclase). –Pueden definirse varias subclases según distintos criterios. Ejemplo: Empleado Tipo
de Trabajo: Ingeniero, Técnico... Tipo de Contrato: Fijo, Por Horas...–Deben definirse los atributos
y relaciones específicas (si existen).
•GENERALIZACIÓN: Proceso inverso a la Especialización. Identificar las características comunes a
varios tipos de Entidad y generalizar todas ellas en una superclase, con los tipos de Entidad
originales como subclases.
Como consecuencia de las restricciones definidas anteriormente, aparecen reglas para la inserción
y borrado de Especialización (y Generalización). Algunas de esas reglas son las siguientes:
Borrar una tupla de una superclase implica el borrado automático en todas las subclases a las que
pertenezca.
Insertar una tupla en una superclase implica que tiene que ser obligatoriamente insertada en
todas las subclases definidas por predicado en las que satisfaga el predicado de definición.
Insertar una tupla en una superclase de una especialización total implica una inserción obligatoria
en al menos una de las subclases de la especialización.
Existen otras reglas correspondientes a los distintos tipos de especialización y a las operaciones de
inserción y borrado.
Una categoría es una subclase de la unión de dos o más superclases que pueden tener
diferentes claves ya que pueden representar diferentes entidades. En este caso es necesario
sintetizar una clave subrogada, que identifique cada una de las ocurrencias de la categoría y
que será heredada como clave foránea por cada una de las superclases. Por cuestiones de
eficiencia a la hora de realizar los joins entre la categoría y sus correspondientes clases, se
añadirá un atributo a la tabla de la categoría que exprese a que subclase pertenece cada túpla
en particular.
TEMA 2.8 NOTACION UML CON MODELO E-R
Los diagramas entidad-relación ayudan a modelar el componente de representación de datos de
los sistemas de software. La representación de datos, sin embargo, solo forma parte del diseño
global del sistema. otros componentes son los modelos de interacción del usuario con el sistema,
la especificación de los módulos funcionales del sistema y su interacción, etc. el lenguaje de
modelado unificado, es una norma desarrollada bajo los auspicios del grupo de Administración de
Objetos, para la creación de especificaciones de diferentes componentes de los sistemas de
software.
Algunas partes de UML son:




Diagramas de clase. Los diagramas de clase son parecidos a los diagramas ER.
Diagramas de caso de uso. Los diagramas de caso de uso muestran la interacción entre los
usuarios y el sistema, en especial los pasos de las tareas que llevan a cabo los usuarios
(como retirar dinero o matricularse en una asignatura).
Diagramas de actividad. Los diagramas de actividad describen el flujo de tareas entre los
diferentes componentes del sistema.
Diagramas de implementación. Los diagramas de implementación muestran los
componentes del sistema y sus interconexiones, tanto en el nivel de los componentes de
software como en el de hardware.
Aquí no se pretende ofrecer un tratamiento detallado de las diferentes partes del UML, en vez de
eso, se ilustraran algunas características de la parte de UML que se relaciona con el modelado de
datos mediante ejemplos.
Los conjuntos de relaciones binarias se representan en UML dibujando simplemente una línea
que conecte los conjuntos de entidades. El nombre del conjunto de relaciones se escribe junto
a la línea. También se puede especificar el rol que desempeña cada conjunto de entidades en
un conjunto de relaciones escribiendo el nombre del rol sobre la línea, junto al conjunto de
entidades. De manera alternativa, se puede escribir el nombre del conjunto de relaciones, y
conectar el recuadro con una línea discontinua a la línea que describe el conjunto de
relaciones. Este recuadro puede tratar entonces como un conjunto de entidades, de la misma
forma que la agregación en los diagramas ER, y puede participar en relaciones con otros
conjuntos de entidades.
La generalización y la especialización se representan en UML conectando conjuntos de
entidades mediante una línea con un triángulo al final correspondiente al conjunto de
entidades más general. Por ejemplo, el conjunto de entidades persona es una generalización
de cliente y de empleado. Los diagramas UML también pueden representar explícitamente las
restricciones de la condición de disyunción y de solapamiento de las generalizaciones.
Descargar