MP0484
MP0484
UF1. Fundamentos conceptuales
1.3. El modelo
conceptual
Instituto Tecnológico Telefónica_ 1
MP0484
Índice
Objetivos ............................................................................................................................................................3
Introducción ......................................................................................................................................................3
Conceptos básicos ...........................................................................................................................................4
Entidad...........................................................................................................................................................4
Interrelaciones .............................................................................................................................................6
Nombre......................................................................................................................................................6
Cardinalidad..............................................................................................................................................7
Grado .........................................................................................................................................................8
Tipo de correspondencia .......................................................................................................................9
Opcionalidad.............................................................................................................................................9
Atributos..................................................................................................................................................... 10
Representación de los atributos ....................................................................................................... 11
Tipos de atributos ................................................................................................................................ 12
Claves...................................................................................................................................................... 13
Dominios .................................................................................................................................................... 14
Reglas semánticas.................................................................................................................................... 14
Diccionario de datos ..................................................................................................................................... 15
Diccionario de datos................................................................................................................................. 15
Estructura de datos.................................................................................................................................. 16
Resolución de ejercicio paso a paso .......................................................................................................... 18
Pasos a seguir............................................................................................................................................ 18
Definición de la especificación del sistema ......................................................................................... 18
Identificación de las entidades .............................................................................................................. 19
Relación entre entidades ........................................................................................................................ 20
Asignación de atributos........................................................................................................................... 20
MP0484
Objetivos
El modelado conceptual constituye la primera etapa en el diseño de una BD donde se estudia el
problema real a través del análisis de requerimientos.
Objetivos
Conocer los elementos básicos del modelo conceptual.
Conocer los elementos a incluir en el diccionario de datos.
Crear el modelo conceptual analizando la información suministrada.
Introducción
Para la obtención del modelo conceptual de datos vamos a utilizar el modelo
Entidad/Relación propuesto por Peter Chen en sendos artículos publicados en 1976 y
1977.
Peter Chen dijo:
“La mejor forma de estudiar los datos de un sistema de información es estudiar previamente el
conjunto de entes y de relaciones entre dichos entes que existen en la realidad.”
(Peter Chen, 1976)
El modelo E/R como su nombre indica está centrado en 2 conceptos fundamentales:
Concepto de entidad y
Concepto de interrelación.
Se entiende por entidad cualquier objeto (real o abstracto) sobre el cual queremos tener
información y que tiene existencia por sí mismo. Interrelación es la asociación o
correspondencia entre entidades.
El modelo de datos estará compuesto por las entidades acerca de las cuales se necesita guardar
información así como sus interrelaciones. Una vez diseñado nuestro modelo de datos los
objetivos que debemos conseguir son:
1. Obtener toda la información que sea de interés para el sistema a desarrollar, y necesario
para conseguir los fines que se persigue.
3
MP0484
2. Representar la información mediante una serie de conceptos básicos que contengan su
significado.
3. Independizar los datos de los recursos físicos así como de los requerimientos de los
usuarios.
4. Proporcionar a los usuarios del sistema la información tal y como la necesitan.
Conceptos básicos
Los elementos básicos a tener en cuenta en el modelo
conceptual son los siguientes:
Entidad
Interrelaciones
Atributos
Dominios
Claves
Reglas semánticas
Entidad
Una entidad es un objeto tangible o intangible acerca del cual queremos almacenar información.
Según ANSI, es como "una persona, lugar, cosa, concepto o suceso, real o abstracto, de interés
para la empresa".
Ejemplos de posibles entidades son:
Organizaciones: Empresas, sociedades
Personas: Empleados, alumnos, clientes, proveedores..
Agrupaciones: Departamentos, secciones
Lugares: Países, provincias, localidades
Objetos físicos: Edificios, piezas, almacenes
Componentes: De piezas, tipos de producto
Peticiones: Pedidos, órdenes de trabajo
Acuerdos: Contratos, convenios
Movimientos: Transportes, transferencias
Asignaciones: Tareas, rutinas (por ejemplo: pedido, empleado, pieza, etc.)
4
MP0484
Tardieu propone tres reglas generales que debe cumplir una entidad:
Tiene que tener existencia propia.
Cada ocurrencia de una entidad debe poder distinguirse de las demás.
Todas las ocurrencias de una entidad deben tener los mismos tipos de características
(atributos).
Cada uno de los conjuntos de valores determinados que puede tomar una entidad se llama
ocurrencia.
La representación gráfica de este objeto es un rectángulo etiquetado con el nombre del tipo de
entidad, generalmente será un nombre propio, singular y en mayúsculas. A continuación se
muestran dos ejemplos de entidades.
Ejemplo
Tenemos una empresa de formación y queremos hacer una base de datos con la información
recogida en el aula. Viendo lo que hay en el aula, identificamos objetos de los que se puede
aglutinar información:
De todas estas entidades debemos escoger aquellas que sean de interés para el Sistema de
Información a desarrollar:
Alumno, Profesor y Curso, serían las elegidas. El resto podrían ser interesantes, pero no
para el estudio que estamos desarrollando.
5
MP0484
Las entidades pueden ser de dos tipos:
Fuertes: Este tipo de entidades no depende de otra para su existencia. Por ejemplo, la
entidad ALUMNO.
Débiles: Este tipo de entidades depende de otra para su existencia. Por ejemplo, la
entidad NOTAS es una entidad débil pues necesita a la entidad ALUMNO para poder
existir.
Las entidades débiles se representan con un rectángulo con doble línea exterior. Para el caso de
las notas de un alumno se representaría así:
Interrelaciones
Se entiende por interrelación aquella asociación o correspondencia existente entre entidades.
Son asociaciones que generan información adicional a la de las entidades que las producen.
El nombre en la medida de lo posible debe de ser un verbo en voz activa o una frase verbal corta:
( Posee / es poseído ) ( transporta / es transportado )
En una interrelación existen los siguientes elementos:
Nombre
Como todo objeto del modelo E/R, cada interrelación tiene un nombre que lo distingue
unívocamente del resto y mediante el cual ha de ser referenciado.
6
MP0484
Cardinalidad
Indica el número de ocurrencias que participan en la relación existente entre entidades. Y
sabremos este número por las reglas del negocio del cliente o usuario, y no nos lo podemos
inventar. La solución final de la base de datos debe representar fielmente estas reglas.
En toda relación existen dos cardinalidades,
Mínima
o 0 denota opcionalidad
o 1 denota obligatoriedad
Máxima
o 1 significa exactamente “1”
o N significa más de uno
o Veamos la relación entre cliente y oferta
Un Cliente puede solicitar como mínimo una oferta (cardinalidad mínima) y como máximo más
de una, o muchas (cardinalidad máxima). Por otra parte una Oferta es solicitada por un cliente y
solo por un cliente.
Otro ejemplo, la relación entre un empleado y un departamento, con dos reglas de negocio
distintas:
Un empleado pertenece o no a un departamento (0,1)
Un departamento puede que no tenga empleados, o tengan muchos empleados (0,N).
Un empleado pertenece siempre a un departamento (1,1).
Un departamento como mínimo tiene un empleado como máximo muchos (1,N).
7
MP0484
Grado
Es el número de entidades que participan en una interrelación y pueden ser de dos tipos
Binarias: son las relaciones más normales o habituales y asocian dos tipos de entidad
distintas. Los ejemplos que hemos visto hasta ahora son de ese tipo.
Unarias: son las que asocian un solo tipo de entidad consigo mismo, denominándose en
este caso, tipo de interrelación reflexiva o recursiva.
En este ejemplo, se ve la relación entre un empleado y qué empleado le dirige, y la relación
se lee de la siguiente manera:
Un empleado dirige como mínimo a
nadie (hay empleados que no son
mando), y como máximo a muchos
empleados.
Por otro lado un empleado puede
que no sea dirigido por nadie (esto
sólo pasa con el director general), y
como máximo por un empleado
(tener más de un jefe es
complicado).
Ternarias (Enarias): son relaciones entre tres o más entidades. Este tipo de relación son
más complejas de definir, y de momento ponemos un ejemplo.
8
MP0484
En este tipo de relaciones es
complejo establecer las
cardinalidades. Normalmente una
relación ternaria se especifica
como tres relaciones binarias.
Tipo de correspondencia
Según las cardinalidades máximas de una relación, tendremos los siguientes tipos:
• 1:1 De uno a uno
• 1:N De uno a muchos
• N:N De muchos a muchos
Opcionalidad
El número mínimo de ocurrencias que existe en una relación puede ser 0 o 1; así las
interrelaciones serán:
• Obligatorias: Una ocurrencia en una entidad implica necesariamente una ocurrencia en
la otra.
• Opcionales: Una ocurrencia en una entidad puede implicar una ocurrencia en la otra o
no.
Entre dos entidades puede existir más de una interrelación, como se muestra en la siguiente
figura. Y se lee:
1. Un proyecto lo dirige un empleado y solo 1. Un empleado puede que no dirija un
proyecto nunca, o puede dirigir un montón
2. En un proyecto participan mínimo un empleado, máximo un montón. Un empleado
puede que no participe nunca en proyectos (por ejemplo todos los empleados
transversales, logística, calidad, recursos humanos...) o que participe en muchos
proyectos.
9
MP0484
Atributos
Cada una de las propiedades o características que tiene una entidad. En el modelo conceptual,
cada atributo, de los que se extraen de los requisitos del cliente o usuario, sólo puede
pertenecer a una entidad o a una relación.
En las siguientes figuras se muestran dos formas distintas de representación de los atributos de
dos entidades ( Empleado y Departamento )
10
MP0484
Los atributos indicados son:
EMPLEADO
numemp: número de empleado
• nombreemp: nombre de empleado
• cargo: cargo que ocupa el empleado
• jefe: jefe asociado
fechacontr: fecha de contratación
DEPARTAMENTO
numdep: número de departamento
• nomdep: nombre de departamento
ubicación: localización del departamento
Representación de los atributos
Como hemos visto el atributo en el modelo E/R se representa por medio de un círculo que rodea
a una palabra (nombre del atributo) y que está conectada a la entidad (encerrada en un
rectángulo). De acuerdo al tipo de atributo esta representación puede variar.
11
MP0484
Tipos de atributos
En el modelo de datos existen distintos tipos de atributos. Es importante conocer la forma que
éstos adoptan y comprender sus características y funcionalidades que nos aportan en el
modelo.
Atributo multivaluado
Pueden tener más de un valor para la misma entidad.
Ejemplo:
nacionalidad [ PELICULA coproducida por varios países ]
telefono [ EMPLEADO con varios teléfonos de contacto]
Atributo derivado
Valor calculado a partir de otra información ya existente (atributos, entidades relacionadas)
Ejemplo:
edad [ de EMPLEADO ], cálculo a partir de fechanacimiento.
Atributo clave
Atributo con valor distinto para cada instancia de un tipo de entidad.
Una clave identifica de forma única cada entidad concreta.
Ejemplo:
• dni en EMPLEADO
Atributos compuestos
Pueden dividirse en otros con significado propio.
Ejemplo:
fecha de nacimiento se puede dividir en mes, día y año de nacimiento.
Atributos opcionales
Este tipo de atributo se le considera así por la característica que puede asumir. Los datos se
pueden omitir cuando la entidad considere que ese atributo en particular no es necesario
almacenarlo como tipo de dato, ya que es probable que no exista el dato para ese atributo.
Ejemplo:
En una entidad en donde se solicite un segundo número de teléfono a una persona y
ésta no tuviera, entonces, el atributo quedaría vacío (nulo).
En su defecto una empresa a la cual se le solicita el número de fax y ésta no tuviera, el
atributo quedaría también vacío (nulo); por lo tanto sería un atributo opcional.
12
MP0484
En el modelo conceptual, y normalmente en relaciones de grado N:N, nos pueden aparecer
atributos que pertenecen a la relación. Si observamos a través del siguiente gráfico, la relación
existente entre PROYECTO y PRODUCTOS, vemos que los atributos cantidad de producto
pedido por un proyecto y la fecha de este producto pedido, son atributos que no pertenecen a
Proyecto y tampoco pertenecen a Producto, son atributos de la relación.
Claves
Entre todos los atributos de un tipo de entidad debemos elegir uno o varios que identifiquen
unívocamente a cada una de las ocurrencias de esa entidad. Este atributo o conjunto de
atributos se denomina clave, y los atributos que lo componen deben ser mínimos en el sentido
de que la eliminación de cualquiera de ellos le haría perder su carácter identificador.
Puede ocurrir que exista más de un atributo que verifiquen la condición de ser identificador
único y mínimo de cada ocurrencia de la entidad, por lo que denominaremos a cada uno de ellos
clave candidata. Elegiremos una como primaria y el resto serán claves alternativas.
En este ejemplo si además del número de empleado (numemp), existiese como atributo el dni,
diríamos que numemp y dni son claves candidatas, de las cuales numemp sería la clave
primaria y dni la clave alternativa.
13
MP0484
Dominios
Las distintas propiedades o características de un tipo de entidad, toman valores para cada
ocurrencia de éstas. Al conjunto de posibles valores que puede tomar cada uno de los atributos
de una entidad se denomina dominio.
Conceptualmente los dominios pueden ser:
Continuo: Formado por todos los valores comprendidos entre un máximo y un mínimo.
Ejemplos: DNI, salario...
• De tipo general: Aquellos que contienen unos valores determinados dentro de un
conjunto discreto de valores.
Ejemplos: fecha, sexo…
Los dominios también se pueden clasificar según el significado de sus valores en:
Semánticos: Aquellos cuyos valores tienen significado semántico en sí mismo.
Sintácticos: Aquellos cuyos valores no tienen ningún significado.
Reglas semánticas
Conjunto de todas las normas y reglas de negocio impuestas por el sistema para el manejo y
uso de los datos, y que contienen el significado total de los datos y toda la información.
Las principales reglas semánticas son:
• Las interrelaciones o asociaciones entre entidades.
• Las claves de las entidades.
• Las restricciones de significado (dominio) de los atributos que las forman.
Las reglas semánticas pueden ser impuestas por el sistema para el manejo por el usuario en la
fase de análisis, en cuyo caso nuestro modelo conceptual debe contemplarlas; pero también
pueden venir dadas por el sistema físico donde vayamos a implantarlo en cuyo caso aparecerán
en las fases posteriores del diseño.
14
MP0484
Diccionario de datos
Diccionario de datos
El Diccionario de Datos es una lista organizada de todos los elementos significativos para el
Sistema, con definiciones precisas y rigurosas para usuarios y analistas, que permite una total
comprensión de todas las entradas, salidas, composiciones de los almacenamientos y cálculos
intermedios. En un Diccionario de datos se describe:
• El significado de los flujos y almacenamientos mostrados en los DFD ( Diagrama de flujo
de datos ).
La composición de los conjuntos de datos que se mueven en los flujos.
La composición de los almacenamientos.
• El significado y valores de cada uno de los datos elementales que forman los flujos y los
almacenamientos.
• El significado de las entidades externas.
Un diagrama de flujo de datos (DFD) traza el flujo de la información para cualquier
proceso o sistema. Emplea símbolos definidos, como rectángulos, círculos y flechas,
además de etiquetas de texto breves, para mostrar las entradas y salidas de datos, los
puntos de almacenamiento y las rutas entre cada destino.
Un dato elemental es una parte de un dato que no resulta significativo descomponerse más aún
para nuestros propósitos.
La información mínima necesaria para definir un dato elemental es su nombre y su
descripción. El nombre deberá elegirse de manera tal que tenga la mayor significación posible
para el usuario. La descripción podrá ser un breve esbozo del significado del dato y puede
además incluir un típico ejemplo.
Además del nombre y la descripción deseamos poder registrar entre otras cosas lo siguiente:
Alias
Aparecen debido a que diferentes departamentos de usuarios han denominado a una misma
cosa con nombres diferentes.
Datos relacionados
Algunas veces queremos poder puntualizar los datos que tienen nombres relacionados,
aunque no sean alias.
15
MP0484
Dominio y significado de sus valores
Dominio es el conjunto de los valores que puede tomar un dato elemental. Hay dos tipos de
dominio:
• Continuos: cuando pueden tomar cualquier valor dentro de un determinado rango.
Discretos: aquellos que sólo pueden tomar determinados valores.
Para los datos elementales de dominio continuo debemos indicar el rango de los valores que
pueden tomar, un valor típico y alguna información sobre el tratamiento de los valores límites.
Para los datos elementales de dominio discreto debemos hacer notar los valores y el significado
que se da a cada valor.
Longitud
Se deberá especificar la longitud tal y como se encuentra en el mundo real y no la longitud
que deberá tomar. El analista podrá dejar de especificar longitudes en un primer paso de la
creación de un diccionario de datos, pero debe estar en libertad para poder agregarlas en etapas
posteriores.
Otras informaciones de edición
En este punto se debe incluir información que nos ayude a validar los elementos de datos,
especialmente donde sea parte de una entrada al sistema. Ya hemos registrado rango, longitud
y tipo de información, de modo que bajo este encabezamiento comúnmente anotaremos las
referencias externas para otros elementos de datos o almacenamientos de datos.
Estructura de datos
Una estructura de datos está formada por datos elementales o por otras estructuras de datos
o por una combinación de ambas. En principio podemos describir cualquier estructura de datos
que deseemos mediante la especificación de los nombres de las estructuras y datos que la
componen, asegurándose que dichos componentes estén definidos en alguna otra parte del
diccionario de datos.
Una estructura de datos estará formada, como mínimo, por 2 o más datos elementales. Estos
datos pueden agruparse o repetirse un número de veces, puede ocurrir que un dato esté o no
presente en determinados casos e incluso es posible que en función de la situación aparezca un
dato u otro. Para reflejar esta casuística se pueden utilizar los operadores de Bakus-Naur
indicados a continuación o cualquier otro convencionalismo que nos sirva para enmarcar cada
dato.
16
MP0484
= Está compuesto de o es equivalente a
+ Y
( ) Los elementos encerrados entre paréntesis son OPCIONALES
{ } REPETICIÓN de los elementos encerrados entre llaves
[ ] SELECCIÓN de uno de los elementos encerrados entre corchetes
| Separar cada uno de los elementos ALTERNATIVOS de una selección
** Delimita un comentario
@ Marca un dato como clave
Ejemplo
Estructura de dato
• Nombre: Empleado
Descripción: Datos necesarios de un empleado.
• Componentes: Nombre_empleado + Num_empleado +
• Datos_personales = Fecha_nacimiento + Estado_Civil + Num_hijos [ 0 - ] + (Num _
tfno)
Dirección = Calle + Número + (Población) + Codigo_Postal + Provincia
17
MP0484
Resolución de ejercicio paso a paso
Pasos a seguir
El proceso de construcción del modelo de datos, implica la realización de los pasos siguientes:
Definición de la especificación del sistema
Una empresa de fabricación necesita conocer de sus clientes:
• Los materiales que compran
• Pedidos que hacen
• Los pedidos son de varios materiales.
Después de realizar un análisis, se ha llegado a la conclusión de que se necesita la siguiente
información:
El tipo de material es una clasificación que establece el Departamento Comercial, y en
función de la misma fija el porcentaje de beneficio.
18
MP0484
Identificación de las entidades
Del estudio de las salidas y sus campos de clasificación pueden obtenerse las entidades. En esta
fase tenemos que:
1. Identificar las entidades.
2. Darles un nombre corto, fácil de recordar, significativo y único.
3. Clasificarlas según el tipo al que pertenecen.
4. Dar una breve descripción de su contenido
En el momento de buscar entidades Base podemos hacernos las siguientes preguntas:
¿Qué organizaciones externas al Sistema de están involucradas?
Empresas, sociedades ...
¿Qué personas o agrupaciones de personas intervienen?
Empleados, alumnos, clientes, departamentos, secciones, áreas ...
¿Qué cosas físicas se utilizan o producen?
Edificios, piezas, almacenes, productos …
Por tanto podemos concluir que serán posibles entidades:
• Organizaciones ( empresas, sociedades, ...)
• Personas (empleados, alumnos, clientes, ...)
• Agrupaciones (departamentos, secciones, ...)
Lugares (países, provincias, localidades, ...)
Objetos Físicos (edificios, piezas, almacenes, ...)
• Componentes (de piezas, tipos de productos, ...)
Peticiones (pedidos, órdenes de trabajo, ...)
• Acuerdos (contratos, convenios, ...)
• Movimientos (transportes, transferencias, ...)
• Asignaciones (tareas, rutinas, ...)
Los problemas más comunes con los que nos podemos encontrar en la identificación de
entidades son:
Que el usuario nos dé explicaciones con ejemplos, analogías e ilustraciones,
Que distintos usuarios usen sinónimos u homónimos.
19
MP0484
Siguiendo con el ejemplo anterior, las entidades que detectamos son:
ENTIDADES
• Cliente (Entidad base)
• Material (Entidad base)
• Pedido (Entidad base)
Relación entre entidades
Una vez definidas las entidades se procederá a establecer las relaciones de dependencia entre
ellas. Para ello se estudiarán los campos de clasificación de las salidas. Empezaremos viendo las
posibles relaciones de cada una de las entidades base entre sí.
Para nuestro ejemplo el diagrama E/R queda de la siguiente forma:
Asignación de atributos
Los atributos podemos identificarlos a través del estudio más detallado de las entradas y
salidas del sistema.
Una vez identificados los definiremos. Definir los atributos consiste en:
Asignarles un nombre: corto, fácil de recordar, significativo y único.
Especificar su dominio: si es semántico se indicará además su validación.
Si es un código: indicar su tipo y validación.
• Indicando si es permanente o variable
20
MP0484
Los atributos pueden pertenecer a:
• Entidades
• Relaciones
Al objeto de proceder al análisis de los atributos, se recomienda construir una matriz que
contenga:
• En las filas
o Nº Orden.
o Nombre de los atributos, tomados de la información de salida.
• En las columnas
o Por cada entidad común que se haya detectado en el sistema, se creará una
columna.
o Una columna para recoger los datos de cálculo.
o Una de observaciones.
Una vez identificados todos los datos asignados a cada una de las entidades, lo cual se indicará
con una cruz en la casilla de intersección entre la fila del dato y la columna de la entidad, hemos
de intentar asignar un dato a una sola entidad.
En nuestro ejemplo:
21
MP0484
Vemos que cantidad de pedido no se puede asignar a ninguna entidad. Como vemos en el
siguiente esquema, es un atributo de la relación.
Por tanto nuestro modelo conceptual quedará como sigue:
22