Modelado de Datos

Anuncio
Modelado de Datos
Material desarrollado por Marcelo Rocha Vargas, 2011
Introducción
Un modelo de datos es un conjunto de conceptos que pueden ser usados para describir-diseñar la
estructura de una Base de Datos (BD). Con el concepto de “estructura” de una BD nos referimos a
los tipos de datos, las relaciones, las restricciones que deben cumplirse, y las operaciones de
manipulación de los datos (agregado, borrado, modificación y recuperación de los datos de la
base).
En un enfoque más amplio, un modelo de datos permite describir los elementos que intervienen en
una realidad o en un problema dado y la forma en que se relacionan dichos elementos entre sí.
Podemos decir entonces, que los objetivos del diseño de base de datos son:
•
Representar los datos que requieren las principales áreas de aplicación y los grupos de
usuarios, y representar las relaciones entre dichos datos.
•
Proporcionar un modelo de datos que soporte las transacciones que se vayan a realizar
sobre los datos.
•
Especificar un esquema que alcance las prestaciones requeridas para el sistema.
Hay varias estrategias a seguir para realizar el diseño: de abajo a arriba, de arriba a abajo, de
dentro a fuera y la estrategia mixta.
La estrategia de abajo a arriba parte de todos los atributos y los va agrupando en entidades y
relaciones. Es apropiada cuando la base de datos es simple, con pocos atributos.
La estrategia de arriba abajo es más apropiada cuando se trata de bases de datos complejas. Se
comienza con un esquema con entidades de alto nivel, que se van refinando para obtener
entidades de bajo nivel, atributos y relaciones.
La estrategia de dentro a fuera es similar a la estrategia de abajo a arriba, pero difiere en que se
parte de los conceptos principales y se va extendiendo el esquema para considerar también otros
conceptos, asociados con los que se han identificado en primer lugar.
La estrategia mixta utiliza ambas estrategias, de abajo a arriba y de arriba a abajo, con un
esquema de divide y vencerás. Se obtiene un esquema inicial de alto nivel, se divide en partes, y
de cada parte se obtiene un subesquema. Estos subesquemas se integran después para obtener
el modelo final.
1
Clasificación en función del nivel de abstracción:
En general los modelos de datos pueden dividirse o más bien clasificarse en: conceptuales, lógicos
y físicos. En la figura podemos observar esta visión general.
Grafico: Niveles de modelado (Chinkes)
•
Los modelos de datos conceptuales son aquellos que describen las estructuras de datos y
restricciones de integridad. Se utilizan durante la etapa de análisis de un problema dado y
están orientados a representar los elementos que intervienen y sus relaciones.
2
•
Los modelos de datos lógicos se centran en las operaciones y se implementan en algún
manejador de base de datos (DBMS).
Gráfico: Modelado o diseño lógico (Chinkes)
•
Por último, podemos mencionar a los modelos de datos físicos, que son estructuras de
datos a bajo nivel implementadas dentro del propio DBMS.
Gráfico: Modelado o diseño físico (Chinkes)
3
El Diagrama de Entidad Relación (DER)
Como acabamos de explicar, existen diferentes niveles de abstracción que podemos utilizar,
nosotros nos concentraremos en el de más alto nivel con el objeto de poder manejar la complejidad
de las estructuras de datos y las relaciones entre ellos, para esto recurriremos a una técnica
descriptiva, que permite representar, en lo que se llama diagrama ER, un sistema de información,
siguiendo una metodología gráfica basada en reglas, símbolos y métodos de diseño de base de
datos.
El objetivo es obtener un modelo abstracto que represente la información obtenida del mundo real
de manera gráfica. Para ello, se hace uso, fundamentalmente de tres conceptos:
•
Entidad: Una entidad es una "cosa" u "objeto" del mundo real, con existencia
independiente y distinguible de los demás objetos. Cada entidad tiene un conjunto de
propiedades y valores que la identifican de forma unívoca. Esta puede ser tanto tangible
(existencia física), ejemplo: Un automóvil, como intangible (existencia conceptual), ejemplo:
Un curso universitario. Generalmente es algo sobre lo cual se requiere almacenar datos.
•
Atributo: Las propiedades que califican y le dan vida a la entidad se denominan atributos.
Ejemplo: la entidad persona se puede describir por las siguientes propiedades: cédula,
nombre, dirección, sexo, peso, altura, color, tipo de sangre, salario.
•
Relación: es una asociación entre entidades, suele decirse que sin existencia propia ya
que son el resultado de una construcción conceptual.
Notación gráfica
Se han propuesto diferentes notaciones gráficas para el DER
Los objetos o entidades son
representados por rectángulos y las relaciones por líneas o rombos que conectan directamente a
los objetos. Por ejemplo:
4
Sin embargo, esta notación tiene al menos un inconveniente; indicar que la entidad X se relaciona
con la entidad Y no es suficiente. Se debe comprender la cantidad de ocurrencias en que las
entidades X – Y se relacionan, esto se hace aplicando un concepto llamado cardinalidad.
Dos entidades se pueden relacionar con las siguientes cardinalidades:
• Uno a uno:
1:1 Cada instancia de una entidad se relaciona con una única instancia de la otra
entidad o viceversa. Ejemplo: Un hombre sólo puede estar casado con una mujer,
y una mujer con un hombre.
• Uno a muchos:
1:N Una ocurrencia de la primera entidad se relaciona con un número indeterminado
de la segunda mientras que una de la segunda sólo puede relacionarse con una
de la primera. Ejemplo: Un profesor imparte muchas asignaturas pero una
asignatura sólo es impartida por un profesor.
5
• Muchos a muchos
N:N (muchos a muchos). Una ocurrencia de la entidad A se asocia con un número
indeterminado de ocurrencias de una entidad B y viceversa. Ejemplo: Un alumno
puede estar matriculado en muchas asignaturas, y en una asignatura puede
estar matriculados muchos alumnos.
Los DER emplean símbolos que permiten representar la cardinalidad de las relaciones entre las
entidades, así que vamos a preferir ésta modalidad de notación.
6
Reglas de Diagramación
Planteada la idea general, podemos sugerir unas pautas para construir los diagramas:
•
Las ENTIDADES van en una caja (rectangular) sin bordes.
•
Los nombres de las entidades se escriben en singular y en mayúsculas.
•
Cada nombre debe ser único.
•
Se puede poner un alias a una entidad que tenga más de un nombre entre paréntesis.
•
Los nombres de los atributos van en letra minúscula.
Ejemplos entidades en diagramas
CLIENTE
codcli
nombre
dirección
teléfono
crédito
e-mail
ESTUDIANTE
legajo
nombre
edad
genero
seguro social
departamento
escuela procedencia
ESTADIO
(PARQUE)
nombre
dirección
teléfono
capacidad sillas
capacidad carros
Vemos a ver ahora como procedemos con las RELACIONES: Como se mencionó anteriormente,
es una asociación bi-direccional (ambas direcciones) e imprescindible entre dos entidades o entre
una entidad y ella misma. Para explicitar las RELACIONES, existe una sintaxis que nos ayudara a
unir las entidades que conforman nuestro diagrama ER.
7
Los componentes de una RELACION son:
•
Nombre de la relación – Se utiliza una palabra que haga sentido al unir la relación entre
dos entidades
•
Opcionalidad – Sólo se puede indicar “tiene que ser” o “puede ser”
•
Grado o Cardinalidad - Sólo se puede indicar “Uno o más” o “Uno y solo uno”
Podemos ver algunos ejemplos:
Ejemplo 1: DEPARTAMENTO - EMPLEADO
Cada DEPARTAMENTO puede ser habitado por uno o más EMPLEADO(s)
Ejemplo 2: ESTUDIANTE - CURSO
Cada ESTUDIANTE puede tomar uno o más CURSO(s)
Las RELACIONES se pueden diagramar de la siguiente forma:
Utilizando la notación sugerida: el DER correspondiente al “Ejemplo 2” seria el siguiente.
8
Veamos un ejemplo de un DER correspondiente a un sistema de compras:
9
Pasos para el desarrollo del Modelo de Datos
1) Identificar las principales entidades: Comenzar identificando los objetos de interés (a partir de los
requisitos) y analizar cada uno para ver si son de interés o no para el sistema.
o
Considerar algún ejemplo de ocurrencia para comprobar que tiene sentido
o
pensar en el concepto que representa, una misma representación puede significar
diferentes conceptos para analistas diferentes.
o
Nombrar, definir y documentar las entidades en el diccionario de datos o en el
documento de diseño correspondiente.
2) Determinar las relaciones entre entidades: Recordar que las relaciones son los hechos de
interés para el sistema, ya que proporcionan la conexión entre las ocurrencias de dos o más
entidades.
o
Existentes o de Posesión (por ejemplo un empleado tiene hijos)
o
Funcionales (El profesor explica a los alumnos)
o
Sucesos (El cliente realiza pedidos)
Reglas:
o
Identificar las relaciones y darles un nombre.
o
Asignar cardinalidad o conectividad
3) Definir identificadores: (claves primarias y foráneas)
o
Establecer estándares de nomenclatura, abreviaturas, etc.
4) Añadir Atributos al Modelo de Datos: Un atributo es un hecho o una unidad de información sobre
una entidad que no se puede descomponer.
10
Descargar