2. 3. MODELO DE DATOS
¿Qué es un Modelo de Datos?
Una representación abstracta de los datos de una
organización y las relaciones entre ellos. Más aún,
podemos decir que, en cierta medida, un modelo
de datos describe una organización.
El propósito de un modelo de datos es, por una
parte, representar los datos y, por otra, ser
comprensible.
3. 3. MODELO DE DATOS
Campañas Ejecutivas
Ejemplo:
PK codi_campaña PK codi_ejecutiva
Nombre campaña Nombre
Fecha_inicio Rut
Fecha_termino Dirección
Teléfono
Estado
Carteras
PK codi_cartera
FK1 codi_campaña
FK2 codi_ejecutiva
Estado Clientes
PK Rut_cliente
Nombre
Direccion
Detalle_cartera Ciudad
Telefono
PK codi_detalle
FK1 codi_cartera
Promociones
FK2 rut_cliente
FK3 codi_promocion PK codi_promocion
flag_compra
Fecha_contacto Nombre_promocion
Valor
4. 3. MODELO DE DATOS
Modelo E-R (Entidad – Relación)
Estos modelos surgen de la necesidad de mecanismos que
capten con mayor facilidad la semántica del mundo real,
mejorando la calidad de diseño de sistemas.
Visualiza los datos en forma unificada, centrándose en las
estructuras lógicas y abstractas de datos como representación
del mundo real, con independencia de consideraciones de tipo
físico.
5. 3. MODELO DE DATOS
Modelo E-R (Entidad – Relación)
Entidad: Persona, suceso o concepto, de interés para la
Organización, distinguible de los demás objetos.
Relación: Es la asociación existente entre dos o más
entidades.
Conjunto de entidades: Totalidad de las entidades del mismo
tipo que comparten las mismas propiedades o atributos.
6. 3. MODELO DE DATOS
Modelo E-R (Entidad – Relación)
Tipos de atributos:
Simples y Compuestos: Si están o no divididos en
subpartes.
Univalorados y Multivalorados: Derivados o no
Conjunto de relaciones:
Grupo de relaciones del mismo tipo. Es la asociación
que existe entre dos o más conjuntos de entidades. El
grado de una relación es el número de conjuntos de
entidades que participan en una relación.
7. 3. MODELO DE DATOS
Nomenclatura E-R (Entidad – Relación)
Entity name Clase de Entidad
Entity name Clase de Entidad débil
Clase de relación
Clase de relación
identificadora
8. 3. MODELO DE DATOS
Nomenclatura E-R (Entidad – Relación)
Atributo
--------- Atributo clave
Atributo multivaluado
Atributo
compuesto
9. 3. MODELO DE DATOS
• Clases de entidades
Débiles son aquellas que no tienen clave primaria.
Fuertes las que sí tienen.
Entidades débiles dependen de una fuerte a través de
una clave parcial.
• Claves
PK (Primary Key), es una clave que identifica
univocamente a un registro de otro.
FK (Foreign Key), es una clave que ayuda a relacionar las
tablas, usando la PK de la tabla a la cual se hace
referencia.
10. 3. MODELO DE DATOS
• Visualización de datos
RUT_CLI COD_CIU NOMBRE_CLI DIRECCION FONO
16544311-1 01 Ramon Picarte Picarte 3000 210021
7725745-6 03 Juan Perez Los Alamos 21 210210
6981233-K 10 Alvaro Henriquez Bueras 521 230023
15456345-8 05 Ester Valdes Errazuriz 443
COD_CIU NOMBRE
01 Arica
03 Iquique
10 Valdivia
05 Santiago
11 Osorno
11. 3. MODELO DE DATOS
• Ejemplo :
COD_REG CIUDAD COD_CIU
14 Valdivia 1
14 Corral 2
REGION COD_REG 14 Lanco 3
LOS RIOS 14 14 Los Lagos 4
TARAPACA 1 14 Mafil 5
ANTOFAGASTA 2 14 Mariquina 6
14 Paillaco 7
14 Panguipulli 8
1 Arica 9
1 Iquique 10
2 Calama 11
12. 3. MODELO DE DATOS
• Pasos para hacer un Diagrama E - R:
1. Identificar sustantivos entidades
2. Identificar verbos relaciones
3. Identificar atributos
4. Identificar llaves primarias
5. Establecer cardinalidades
13. 3. MODELO DE DATOS
• Ejemplo :
Se requiere construir un sistema de información en el que se
requiere tener la información sobre las viviendas urbanas del
país y las personas que las habitan. Cada persona solo puede
habitar una vivienda, pero puede ser propietaria de más de
una. (Como simplificador, las ciudades pertenecen a regiones).
14. 3. MODELO DE DATOS
• Paso 1 : identificar sustantivos entidades
Se requiere construir un sistema de información en el que se
requiere tener la información sobre las viviendas urbanas del
país y las personas que las habitan. Cada persona solo puede
habitar una vivienda, pero puede ser propietaria de más de
una. (Como simplificador, las ciudades pertenecen a
regiones).
15. 3. MODELO DE DATOS
• Paso 1 : identificar sustantivos entidades
personas viviendas
ciudades
regiones
16. 3. MODELO DE DATOS
• Paso 2 : identificar verbos relaciones
Se requiere construir un sistema de información en el que se
requiere tener la información sobre las viviendas urbanas del
país y las personas que las habitan. Cada persona solo puede
habitar una vivienda, pero puede ser propietaria de más de
una. (Como simplificador, las ciudades pertenecen a
regiones).
17. 3. MODELO DE DATOS
• Paso 2 : identificar verbos relaciones
Habita
personas viviendas
Pertenece
Es propietaria
ciudades
regiones Estan
18. 3. MODELO DE DATOS
• Paso 3 : identificar atributos
Personas: Rut y Nombre
Viviendas: Dirección
Ciudades: Nombre
Regiones: Nombre
19. 3. MODELO DE DATOS
• Paso 3 : identificar atributos
dirección
Habita
rut personas viviendas
Pertenece
nombre Es propietaria
ciudades
nombre
nombre regiones Estan
20. 3. MODELO DE DATOS
• Paso 4 : Identificar llaves primarias
Personas: RUT (Rol Único Tributario)
Viviendas: Id_vivienda (Id: Identificador)
Ciudades: Id_ciudad
Regiones: Id_region
NOTA: las llaves primarias se denotan por PK (Primary Key), y
usaremos la siguiente forma de representación:
PK: rut
21. 3. MODELO DE DATOS
PK: id_vivienda
dirección
Habita
PK: rut personas viviendas
Pertenece
PK: id_ciudad
nombre
Es propietaria
ciudades
nombre
PK: id_region
nombre regiones Estan
22. 3. MODELO DE DATOS
• Paso 5 : Establecer cardinalidades
Se requiere construir un sistema de información en el que se
requiere tener la información sobre las viviendas urbanas del
país y las personas que las habitan. Cada persona solo
puede habitar una vivienda, pero puede ser propietaria de
más de una. (Como simplificador, las ciudades pertenecen a
regiones).
23. 3. MODELO DE DATOS
• Paso 5 : Establecer cardinalidades
Entonces…
• Una persona es propietaria de N viviendas, y una vivienda
es propiedad de 1 sola persona.
• En las viviendas pueden habitar N personas, y una persona
puede habitar en 1 sola vivienda.
• Una ciudad puede tener N viviendas, y una vivienda
pertenece a sólo 1 ciudad.
• Una región puede tener N ciudades, y una ciudad pertenece
a sólo 1 región.
24. 3. MODELO DE DATOS
• Paso 5 : Establecer cardinalidades
PK: id_vivienda
dirección
1
Habita
N
N
PK: rut personas viviendas
1 N Pertenece
PK: id_ciudad
1
nombre
Es propietaria
ciudades
PK: id_region nombre N
nombre regiones Estan
1
25. 3. MODELO DE DATOS
• Paso 5 : Establecer cardinalidades
Como parte de este paso, nace una llave llamada
FK (Foreign Key), llave foránea, que es el
identificador que relaciona de forma real las
entidades (como otro atributo de la entidad ).
Esta se toma desde la punta de la relación con 1
a la que tiene N.
Para ello se traspasa la PK de la entidad con
cardinalidad 1, como FK a la entidad con
cardinalidad N.
26. 3. MODELO DE DATOS
• Paso 5 : Establecer cardinalidades
PK: id_vivienda FK: rut
dirección
FK: id_vivienda FK: id_ciudad
1
Habita
N
N
PK: rut personas viviendas
1 N Pertenece
PK: id_ciudad
1
nombre
Es propietaria
ciudades
PK: id_region nombre N
FK: id_region
nombre regiones Estan
1
27. 3. MODELO DE DATOS
• Solución PK
:Id_vivien dirección
da FK
FK :Id_ciud
:Id_vivien ad
da FK: rut
N 1
Habita
PK: rut personas viviendas N
nombre pertenece
Es propietaria
PK 1 FK
1 N :Id_ciud
:Id_region
ad
ciudades
nombre
N
nombre
1
PK regiones estan
:Id_region
28. 3. MODELO DE DATOS
• Ejercicio :
Se necesita el diseño de una BD simple para un
banco que contenga la información de los clientes, las
cuentas, las sucursales y las transacciones
producidas.
Se debe tener en cuenta las siguientes restricciones:
• Un cliente puede tener muchas cuentas
• Una cuenta puede pertenecer a muchos clientes, pero
solo uno de ellos es el titular
• Una cuenta está asociada a una sucursal
• Con respecto a las transacciones solo se requiere
almacenar el número de la transacción, la cuenta que la
origino, la fecha y el monto.