Está en la página 1de 9

3

MODELO
ENTIDAD - RELACIN

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

Objetivos
Comprender qu datos existen y cmo se relacionan entre
ellos, independientemente de cmo son o sern
almacenados fsicamente.
Comprender qu informacin necesita la organizacin y la
operacin para que pueda soportar los procesos del
negocio.
Servir de punto de partida para el diseo de
almacenamientos que terminarn siendo:
Completos.
Consistentes.
No redundantes.
Flexibles.

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

Modelos de datos
Modelo Conceptual de Datos.
Un modelo de entidad - relacin
extendido y poblado.

Modelo Entidad Relacin.


Una representacin no poblada de
entidades y relaciones

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

Entidades
Una entidad es un objeto de importancia para el negocio
sobre el que se guardan datos.
Los almacenamientos contienen la informacin necesaria
para describir estas entidades: Elementos de datos,
algunos de los cuales son claves de acceso.
... En este negocio necesitamos
saber sobre nuestros clientes,
contratos, pedidos ...

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

Relaciones
Una relacin es una asociacin entre dos entidades que
expresa una conexin para el negocio.
Las relaciones representan las asociaciones que existen
entre ocurrencias de entidades.
Ejemplo: Los clientes realizan pedidos. Un proveedor recibe
una orden de compra.
Generalmente no lo hacen, pero no existe
ninguna razn por la cual no lo puedan
hacer. Depende del cliente.

Muy bien, los clientes hacen


pedidos, pero pueden hacer
ms de un pedido por vez?

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

Elementos de datos
... Por supuesto necesitamos conocer sobre
nuestros clientes, adnde enviarle la
mercadera, adnde enviarle la factura, cul es
su lmite de crdito...

Los elementos de datos son


los datos que necesitamos
guardar sobre cada ocurrencia
de las entidades.
No lo vamos a determinar en
un modelo de entidad
relacin. Se definirn en un
momento ms avanzado del
anlisis.

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

Ocurrencias de una entidad


Una ocurrencia de una entidad es un valor especfico (o
instancia) de dicha entidad.
Ejemplo: El pedido N 43401. El cliente Juan Prez.
... Voy a querer saber con cuntos clientes trabajo
y cuntos pedidos realizan. Adems, voy a
necesitar identificar al cliente e identificar un
pedido y revisarlo...

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

Notacin del ERM


Maestro

Entidad

Cliente

Denominacin
de la relacin

Relacin

Denominacin
De la entidad

Detalle

Pedido

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

Cardinalidad y Opcionalidad
A

Relacin uno a uno:


Para una ocurrencia de la entidad A
pueden existir 0 o 1 ocurrencias
relacionadas de la entidad B.

Ejemplo:

Para una ocurrencia de la entidad B


pueden existir 1 y solo 1 ocurrencia
relacionadas de la entidad A.

Empleado

Gerente

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

Cardinalidad y Opcionalidad
A

Relacin uno a muchos:


Para una ocurrencia de la entidad A
pueden existir 0, 1 o muchas ocurrencias
relacionadas de la entidad B.

Ejemplo:

Para una ocurrencia de la entidad B


pueden existir 1 y solo 1 ocurrencia
relacionadas de la entidad A.

Proveedor

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

Orden de
Compra
10

Cardinalidad y Opcionalidad
A

Relacin muchos a muchos:


Para una ocurrencia de la entidad A
pueden existir 1 o muchas ocurrencias
relacionadas de la entidad B.

Ejemplo:

Para una ocurrencia de la entidad B


pueden existir 0, 1 o muchas ocurrencias
relacionadas de la entidad A.

Orden de
Compra

Producto

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

11

Cardinalidad y Opcionalidad
A
Relacin mltiple:
Las ocurrencias de las entidades A y B
estn relacionadas por ms de una
condicin de negocio.

B
Pendiente
de entrega

Ejemplo:

Orden de
Compra

Asignada

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

Proveedor

12

Cardinalidad y Opcionalidad
Relacin recursiva:
Para una ocurrencia de la
entidad A existen 0, 1 o muchas
ocurrencias de la misma entidad.

Ejemplo:

Partes

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

13

Ejercicio rpido de cardinalidad y opcionalidad


Dibujar los siguientes ejemplos de relaciones entre entidades y asignar la
cardinalidad y opcionalidad que corresponda.
1.
2.
3.
4.
5.
6.
7.
8.

Cada pedido da lugar a una sola factura. En una factura se incluye un solo pedido.
Un pedido puede existir an si no ha sido facturado.
Un empleado puede ser o no un vendedor. Un vendedor es un empleado.
Un cliente puede hacer un pedido por vez. Quien no tenga pedidos pendientes no es
cliente (o sea, un cliente debe tener siempre un pedido hecho).
Un cliente es independiente del nmero de pedidos que tenga pendientes (de hecho
puede tener varios) y no deja de ser cliente por no tener pedidos hechos. Cada
pedido se aplica a un solo cliente.
Cada vendedor puede tener uno o ms clientes. Cualquier cliente es visitado slo por
un vendedor.
Cada producto consiste en una o ms partes. Cada parte es slo utilizada por un
producto y no por otros. Todas las partes son utilizadas en algn producto.
Cada producto consiste en una o ms partes. Cada parte puede ser utilizada en uno
o ms productos (al menos es usada en uno).
Cada producto consiste en una o ms partes. Cada parte puede ser utilizada en uno
o ms productos. Hay partes que no son utilizadas por ningn producto (son para
reventa).

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

14

Construyendo el modelo de entidad relacin

Dibujar el modelo de entidad relacin.

Identificar la relaciones
entre entidades.

directas

Identificar posibles entidades.

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

15

Ejemplo: Revendedora San Martn


San Martn es una empresa que vende productos
alimenticios a almacenes. Su proceso de pedidos tiene las
siguientes caractersticas:
San Martn vende aproximadamente 150 productos
diferentes.
Algunos productos se venden en ms de un tamao (en
promedio, tres tamaos por producto).
San Martn cuenta con 1600 clientes actualmente.
Los clientes obtienen su mercadera a travs de pedidos,
donde solicitan los productos en sus distintos tamaos.
Un pedido tipo tiene 40 tems
Los productos se almacenan en sus distintos tamaos en
alguno de los tres almacenes de San Martn.
Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

16

Relaciones
Para relaciones recursivas

Cmo completar la matriz:


Cliente
Producto
Tamao - Producto
Pedido
Almacn

Para cada par de entidades


preguntar: qu relacin de negocio
directa existe entre cada una de
ellas.
Las
relaciones
directas
consisten en verbos o frases verbales
que conectan sustantivos.
Por ejemplo: Cliente REALIZA pedidos.

Las relaciones indirectas son aquellas en donde la relacin se expresa por


medio de otra entidad de la matriz.
Por ejemplo: El cliente PIDE un producto. Lo hace a travs de un pedido.
Estas relaciones no se marcan en la matriz.
Habr que controlar si existen relaciones mltiples entre entidades.
Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

17

Dibujando el modelo de entidad relacin

A esta altura se dejan sin resolver las relaciones muchos a muchos.

Ingeniera Informtica
2012 Anlisis y Diseo Estructurado Ingeniera de Software I

18