Computing">
Nothing Special   »   [go: up one dir, main page]

Modelado de Datos

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 61

MODELO DE DATOS

Andrés Henao Rosero


Universidad Tecnológica de Pereira

Tomado de:
Gloria Lucía Giraldo Gómez
Universidad Nacional de Colombia

Bases de Datos I Andres Henao Rosero - UTP 1


SISTEMA DE INFORMACION
 Un sistema de información es un conjunto
organizado de elementos, estos son 4:
- Personas.
- Datos.
- Actividades.
- Recursos materiales.
Tipos de sistemas de información:
ERP, Sistema Experto (SE).

Bases de Datos I Andres Henao Rosero - UTP 2


Introducción a las bases de datos
relacionales : Representación tabular de los
datos

Nombre de la tabla / relación

Atributos o nombres de columnas o campos

Aeropuertos
codigo nombre codCiudad dpto

10 José María Córdova Medellín Antioquia


20 El Dorado Bogotá Cundinamarca
30 Rafael Nuñez Cartagena Bolivar

Bases de Datos I Andres Henao Rosero - UTP 3


Tupla / fila
Introducción a las bases de datos
relacionales : Representación tabular de
los datos
Aeropuertos
codigo nombre codCiudad dpto
10 José María Córdova MDE Antioquia
Tabla Aeropuerto
20 El Dorado BOG Cundinamarca
o el esquema instanciado
30 Rafael Nuñez CTG Bolivar de la relación aeropuerto
Información explícita:
El aeropuerto José Maria Córdova esta en el departamento de
Antioquia

conexiones
origen destino Tabla Conexión
10 30 o el esquema instanciado
20 10
de la relación Conexión
30 20

Información implícita:
Se puede ir en avión del departamento de Antioquia al departamento
de Bolivar
Bases de Datos I Andres Henao Rosero - UTP 4
Introducción a las bases de datos
relacionales : Representación tabular de
los datos
Aeropuertos
codigo nombre codCiudad dpto Esquema
10 José María Córdova MDE Antioquia
20 El Dorado BOG Cundinamarca Instancias
30 Rafael Nuñez CTG Bolivar (datos)
Información explícita:
El aeropuerto José Maria Córdova esta en el departamento de
Antioquia

conexiones
origen destino Esquema
10 30
20 10
Instancias
30 20
(datos)
Información implícita:
Se puede ir en avión del departamento de Antioquia al departamento
de Bolivar
Bases de Datos I Andres Henao Rosero - UTP 5
Modelo Relacional
 El modelo relacional para la gestión de
una base de datos es un modelo de datos
basado en la lógica de predicado y en la
teoría de conjuntos.
 Creado por Edgar Frank Codd, IBM en
1970.
Num. Num_se
Nomb Secci Nombre
emple cci�n
re �n
ado
25 Textil
33 Pepe 25
26 Pintura
34 Juan 25

Bases de Datos I Andres Henao Rosero - UTP 6


Modelo Entidad Relación
 Es una herramienta para el modelado de
datos de un sistema de información. Estos
modelos expresan entidades relevantes
para un sistema de información, sus inter-
relaciones y propiedades.

Bases de Datos I Andres Henao Rosero - UTP 7


Modelo Entidad Relación
 Creado por Peter Chen en 1976

Notación E/R (1) Ross, (2) Bachmann, (3) Martin, (4) Chen, (5) Rumbaugh

Bases de Datos I Andres Henao Rosero - UTP 8


Modelo Jerarquico
 Tiene forma de árbol invertido, un
padre puede tener varios hijos, pero
no un hijo varios padres.

Bases de Datos I Andres Henao Rosero - UTP 9


Modelo de Red
 Este es un modelo de base de datos
ligeramente distinto del jerárquico. Su
diferencia fundamental es la modificación
del concepto de un nodo, permitiendo que
un mismo nodo tenga varios padres (algo
no permitido en el modelo jerárquico).

Bases de Datos I Andres Henao Rosero - UTP 10


¿QUÉ ES UN MODELO?
 Herramienta para comunicar y plasmar
nuestra representación de algún
fenómeno o hecho del mundo que nos
interesa

 ¿Y para qué? para comprender mejor los


fenómenos

Bases de Datos I Andres Henao Rosero - UTP 11


CONCEPTO DE MODELO

 ¿Será posible capturar TODOS los


detalles de la realidad concreta?

 N observadores de un fenómeno
tendrán al menos N percepciones
distintas del mismo fenómeno

Bases de Datos I Andres Henao Rosero - UTP 12


¿MODELO CONCEPTUAL?

Bases de Datos I Andres Henao Rosero - UTP 13


MODELO CONCEPTUAL

 En bases de datos, es una descripción


de alto nivel de la estructura de la
base de datos
 Independiente del SGBD que se vaya
a usar
 El diseño de un modelo conceptual
parte de la especificación de
requisitos
Bases de Datos I Andres Henao Rosero - UTP 14
MODELO CONCEPTUAL

 El propósito del modelo conceptual es


describir el contenido de la información de
la base de datos, en vez de las estructuras
de almacenamiento que se requerirán para
manejar esa información
 Se expresa mediante un lenguaje de muy
alto nivel
 Es un modelo de datos que describe un
conjunto de conceptos de una realidad

Bases de Datos I Andres Henao Rosero - UTP 15


MODELO CONCEPTUAL

 Características:
 Expresividad: Representación de gran
variedad de restricciones
 Simplicidad: Fácil de comprender por
los usuarios
 Minimalidad: Ningún concepto presente
se puede expresar por otros conceptos
 Formalidad: Conceptos con
interpretación única, precisa y bien
definida
Bases de Datos I Andres Henao Rosero - UTP 16
MODELO CONCEPTUAL

 Los modelos conceptuales más


usados para bases de datos son:
- Entidad/Asociación  El más usado
y base del curso
- Diagrama de clases de UML
- Semántico

Bases de Datos I Andres Henao Rosero - UTP 17


¿MODELO LÓGICO?

Bases de Datos I Andres Henao Rosero - UTP 18


MODELO LÓGICO

 Un modelo lógico en bases de datos


es una descripción de la estructura de
la base de datos que puede ser
procesada por un SGBD
 El diseño de un modelo lógico parte
de un modelo conceptual
 Sigue siendo un lenguaje de alto nivel

Bases de Datos I Andres Henao Rosero - UTP 19


MODELO LÓGICO

 Los modelos lógicos más usados


son:
 Relacional
 Objeto – Relacional
 Objetual puro
 Anteriores (primitivos):
 Red
 Jerárquico

Bases de Datos I Andres Henao Rosero - UTP 20


MODELO LÓGICO
 La elección del modelo lógico
depende de la clase de modelo
soportado por el tipo de SGBD, NO
del SGBD específico (es decir, el
diseño del modelo lógico se efectúa
igual para todos los SGBD
relacionales porque todos utilizan el
modelo relacional)
 Puede decirse que el modelo lógico
está entre el modelo conceptual y el
modelo físico
Bases de Datos I Andres Henao Rosero - UTP 21
¿MODELO FÍSICO?

Bases de Datos I Andres Henao Rosero - UTP 22


MODELO FÍSICO

 Un modelo físico es una descripción


de la implantación de una base de
datos en disco
 Describe las estructuras de
almacenamiento y las técnicas de
almacenamiento para tener un acceso
efectivo a los datos
 El diseño de un modelo físico
depende de un SGBD concreto
Bases de Datos I Andres Henao Rosero - UTP 23
Resumiendo
El diseño CONCEPTUAL:
 parte de las especificaciones de los requisitos
 Es independiente del SGBD
 Es una descripción de alto nivel de la estructura de la base
de datos

El diseño LÓGICO:
 Parte del modelo conceptual
 Es dependiente del TIPO de SGBD

El diseño FISICO:
 Parte del modelo lógico
 Describe las estructuras de almacenamiento y métodos
eficientes para tener acceso a los datos
 Se expresa en un lenguaje de definición de datos
 Es dependiente del SGBD en concreto
Bases de Datos I Andres Henao Rosero - UTP 24
Resumiendo
… veremos en este curso
Requisitos

Modelo de Clases Diseño Modelo Entidad/Asociación


Conceptual Modelo Semántico

Modelo objetual
M. objeto-relacional Diseño Modelo Relacional
Modelo en red Lógico
Modelo jerárquico

Diseño
Físico
Bases de Datos I Andres Henao Rosero - UTP 25
MODELO ENTIDAD-ASOCIACIÓN
(E/A)

Bases de Datos I Andres Henao Rosero - UTP 26


Modelo Entidad/Asociación (E/A)
Introducción (1)
 Propuesto por Peter Chen en 1976
 Gran aceptación inicial
 Poco formal en sentido matemático
 Intuitivamente funciona muy bien
 Expresividad gráfica: Visión global
de lo que se modela
 El más usado para el modelamiento
conceptual
Bases de Datos I Andres Henao Rosero - UTP 27
Modelo Entidad/Asociación (E/A)
Introducción (2)
 Inicialmente tenía unos elementos
y se le fueron adicionando otros 
Modelo (E/A) extendido
Richard Barker:
libro CASE METHOD
¿Para qué? Entity Relationship Modelling

Aumentar la
expresividad

Bases de Datos I Andres Henao Rosero - UTP 28


Elementos básicos del E/A

 Entidades

 Asociación … Continuación

 Atributos

Bases de Datos I Andres Henao Rosero - UTP 29


Elementos básicos del modelo E/A
 Entidad: es una Clase de objetos
relevantes y distinguibles del mundo, que
son los sujetos de interés para el modelo,
para la organización. Ej.: Cliente,
Empleado, Proveedor, Sucursal etc.
 Asociación: conexión, asociación entre 2
entidades (relación binaria)
 Atributo: propiedad básica o característica
de interés que describe una entidad o
asociación
Bases de Datos I Andres Henao Rosero - UTP 30
Notaciones Modelo E/A
 Existen diferentes notaciones para
representar el modelo E/A*
 Chen
 Pata de Gallo: desarrollado por C.W.
Bachman. La utilizaremos en este curso
 Rein85
 IDEFIX
OJO : En las evaluaciones solo se aceptará la notación de
pata de gallo
*En el libro de Peter Rob y Carlos Coronel (ver bibliografía clase 1) hacen
una comparación de las diferentes notaciones
Bases de Datos I Andres Henao Rosero - UTP 31
Entidades
 Clases de objetos que son importantes
en el dominio de estudio
 Nos interesan sus propiedades 
Atributos.
 A veces NO es fácil distinguir entre
un atributo y una entidad Ej: ¿Barrio
es un atributo de persona o es una
entidad en si misma?

Bases de Datos I Andres Henao Rosero - UTP 32


Entidades
 Representación:
 Rectángulo (con bordes
redondeados*). El tamaño no
importa
 Nombre único (cada entidad sólo
aparece una vez en el modelo) en
mayúscula y singular

* El borde redondeado es opcional. En la literatura se encuentran con bordes rectos

Bases de Datos I Andres Henao Rosero - UTP 33


Entidades
 Entidades Débiles: Aquellas que no
pueden existir sin la existencia de otras
entidades. Ej:
- Los detalles son débiles con respecto a
una factura
- Las personas a cargo de un empleado
son débiles con respecto al empleado
 Normales: Aquellas que tienen existencia
propia.
Ej: La existencia de un animal no está
condicionada a la existencia de una jaula

Bases de Datos I Andres Henao Rosero - UTP 34


Entidades

 Se pueden identificar a partir de la


descripción de los requisitos así:
 A partir de los sustantivos de la
descripción
 Información relevante de las posibles
entidades candidatas
 ¿Cada instancia se puede identificar en
forma única?

Bases de Datos I Andres Henao Rosero - UTP 35


Ejemplos de entidades
 Instituciones: Bancos, Empresas, Universidades
 Universitario: Estudiantes, Profesores, Cursos
 Aerolínea: Piloto, Avión, Ruta, Pasajero
 Unidades organizacionales: Departamentos,
Sucursales, Plantas, Líneas
 Clasificaciones, agrupaciones y jerarquías:
Tipos, Clases, Conceptos, Grupos
 Documentos: Facturas, Pedidos, Órdenes,
Cheques

Bases de Datos I Andres Henao Rosero - UTP 36


ASOCIACIONES

Bases de Datos I Andres Henao Rosero - UTP 37


Asociaciones

 Relación binaria bidireccional,


significativa y nombrable entre 2
entidades (no necesariamente
diferentes)

 Establecen una acción o hecho

Bases de Datos I Andres Henao Rosero - UTP 38


Tipos de Asociaciones
Uno a muchos:
pinta
PINTOR CUADRO
pintado por

Un pintor pinta muchos cuadros


Un cuadro es pintado por un pintor CUADRO

PINTOR El primer autorretrato


Figura asomada a la ventana
Salvador Dali
Rosita
El pueblo
Fernando Botero
La familia colombiana
Retrato de un hombre barbudo
Pablo Picasso
Bañista

Bases de Datos I Andres Henao Rosero - UTP 39


Tipos de Asociaciones
Muchos a muchos:
aprende
EMPLEADO HABILIDADES
aprendida por

Un empleado aprende muchas habilidades


Una habilidad es aprendida por muchos empleados

EMPLEADO HABILIDADES
Pedro Pintar
Juan Cantar
Luis Conducir
Lola Tejer
Bailar

Bases de Datos I Andres Henao Rosero - UTP 40


Tipos de Asociaciones
Uno a uno
encargado de
EMPLEADO TIENDA
administrada por

EMPLEADO TIENDA
Pedro Marazzi
Juan Bosi
Luis Alpie
Lola Americanino

Bases de Datos I Andres Henao Rosero - UTP 41


Asociaciones

 Cada dirección de una asociación


posee:
Un nombre
Opcionalidad:
 Puede : línea punteada
 Debe (obligatoria): línea contínua
Cardinalidad:
 Uno : un punto(.)
 Muchos : el símbolo ( )
Bases de Datos I Andres Henao Rosero - UTP 42
Opcionalidad y Cardinalidad
de las Asociaciones
Dirección 2 de la asociación:
Opcionalidad: opcional (puede)
Cardinalidad: uno
Nombre
Asociación 1
ENTIDAD 1 ENTIDAD 2
Nombre
Asociación 2

Dirección 1 de la asociación:
Opcionalidad: obligatoria (debe)
Cardinalidad: muchos

Bases de Datos I Andres Henao Rosero - UTP 43


Asociaciones: ¿como se leen?
1. Desde Entidad 1 a Entidad 2
Un(a
Un(a))

DEBE SER Un(a


Un(a)) Entidad
Entidad
Entidad Nombre
Relaci ón 1 2
1 Relación1
PUEDE ESTAR
ESTAR Mucho(a)s
Mucho(a)s

EJEMPLO

genera
CLIENTE FACTURA
generada por

Un Cliente puede generar muchas facturas


OJO: Una lectura de asociación SIEMPRE inicia en singular : Un(a),
JAMÁS con la palabra mucho(a)s.
Bases de Datos I Andres Henao Rosero - UTP 44
Asociaciones: ¿como se leen?
2. Desde Entidad 2 a Entidad 1
Un(a )

DEBE SER Un(a) Entidad


Entidad Nombre
Relaci
Relacióónn22 1
2
PUEDE ESTAR Mucho(a)s

EJEMPLO

genera
CLIENTE FACTURA
generada por

Una Factura debe ser Generada por un Cliente


Nota: Si la entidad 1 es seguida por muchos se debe pluralizar en la
lectura
Bases de Datos I Andres Henao Rosero - UTP 45
Asociaciones

Convenciones para la representación:


 Una línea que une las dos entidades
relacionadas
 Los nombres de las asociaciones en el extremo
de cada entidad y en minúscula
 Opcionalidad:
 Obligatoria: Línea continua: Debe
 Opcional: Línea discontinua: Puede
 Cardinalidad
 “Pata de gallina”: Muchos
 Punto (fin de la línea continua o discontinua): Uno

Bases de Datos I Andres Henao Rosero - UTP 46


Ejemplos de Opcionalidad y
Cardinalidad de las Asociaciones
Uno a muchos:
pinta
PINTOR CUADRO
pintado por

De E1 a E2: Un pintor puede pintar muchos cuadros


De E2 a E1: Un cuadro debe ser pintado por pintor

Muchos a muchos:
aprende
EMPLEADO HABILIDADES
aprendida por

De E1 a E2: Un empleado puede aprender muchas habilidades


De E2 a E1: Una habilidad debe ser aprendida por muchos empleados

Bases de Datos I Andres Henao Rosero - UTP 47


Tipos de Asociaciones
Uno a uno:
encargado de
EMPLEADO TIENDA
administrada por

 Tienen en cuenta reglas de la


organización.
 No usar como nombre de la asociación
“relacionado con” o “asociado a”.

Bases de Datos I Andres Henao Rosero - UTP 48


Ejemplo Modelo
Ej: Un modelo con 4 entidades y 3
asociaciones:

comprado
mediante

compuesta
de
almacenado en hecha para
el sitio de almacenamiento de el generador de

Bases de Datos I Andres Henao Rosero - UTP 49


Matriz de Asociaciones

Bases de Datos I Andres Henao Rosero - UTP 50


Atributos

 Características y propiedades que


describen las entidades en detalle
 Identifican, califican, cuantifican,
clasifican o expresan el estado de la
entidad
 Claros, específicos, completos y
preferiblemente sin el nombre de la
entidad

Bases de Datos I Andres Henao Rosero - UTP 51


Atributos
 Convenciones para la representación:
 Minúscula.
 Dentro de la caja de entidad
 Obligatorios con “ * ” ó “●” y opcionales con
“○”
 Es recomendable descomponerlos hasta
su mínima expresión (semántica)
 Un atributo no debe ser calculado a
partir de otros atributos: problemas de
redundancia
Ejemplo: Nro. de estudiantes
Bases de Datos I Andres Henao Rosero - UTP 52
Atributos
 No se permiten atributos multivaluados o
atributos que puedan tener a su vez atributos
 Ejemplo:

COMPUTADOR Sabiendo que la tarjeta


madre tiene:
*referencia Número de serie, chip
*marca procesador, velocidad, etc
*fechaCompra
*tarjetaMadre

Bases de Datos I Andres Henao Rosero - UTP 53


Atributos
 Dos soluciones
 Primera: crear una entidad
llamada TARJETA_MADRE
TARJETA_MADRE
COMPUTADOR
poseedor *numeroSerie
*referencia ubicada *chipProcesador
*marca COMPUTADOR
*velocidad
*fechaCompra
*referencia
 Segunda: Introducir los atributos *marca
en la entidad COMPUTADOR *fechaCompra
*numeroSerie
Atributos de la tarjeta madre
*chipProcesador
*velocidad
Bases de Datos I Andres Henao Rosero - UTP 54
Atributos Identificadores de una
entidad
 Conjuntos de atributos y/o
relaciones que identifican de manera
única una entidad. Ejemplos:

 Entidad con un único identificador:


ALUMNO con atributos cédula, nombre y
año nacimiento
 Entidad con varios identificadores:
ELEMENTO_QUIMICO con nro, símbolo,
nombre, temp_ebullic.

Bases de Datos I Andres Henao Rosero - UTP 55


Atributos Identificadores de una
entidad
 Conjuntos de atributos y/o
relaciones que identifican de manera
única una entidad. Ejemplos:

 Entidad con un identificador compuesto


por 2 atributos: LIBRO con el código
ISBN descompuesto en dos atributos
así: primeros_3dígitos_ISBN,
resto_dígitos_ISBN, título, autor.

Bases de Datos I Andres Henao Rosero - UTP 56


Atributos Identificadores de una
entidad
 Conjuntos de atributos y/o
relaciones que identifican de manera
única una entidad. Ejemplos:
 Un identificador compuesto por un
atributo y una asociación
Identificador de Considerando que
SUCURSAL dos sucursales
tengan el mismo
número de cuenta
Identificador adscrita SUCURSAL
CUENTA
compuesto # cod_suc
# nro_cta
para * saldo lugar_apertura * nombre
CUENTA: * direccion
nro_cta y
cod_suc

Bases de Datos I Andres Henao Rosero - UTP 57


Atributos Identificadores:
Convenciones de representación
 Se les antepone el símbolo #

 Se coloca una línea perpendicular a la


entidad en el punto terminal de la
asociación

 Se pueden emplear identificadores


artificiales o surrogados para evitar
identificadores compuestos (“largos”)
Bases de Datos I Andres Henao Rosero - UTP 58
Atributos identificadores
Si hay más de un identificador, se selecciona uno y se
dejan los demás como secundarios o alternativos(1)

Identificador de
COMPUTADOR
COMPUTADOR
# referencia
* marca
* fecha de compra
* número de serie
Identificador alternativo * chip procesador
de COMPUTADOR * velocidad procesador
° chip coprocesador

(1) Los identificadores alternativos no poseen símbolos especiales


Bases de Datos I Andres Henao Rosero - UTP 59
La notación de Chen para el E/A

NO SE TRABAJARÁ EN EL CURSO ESTA NOTACIÓN

nombre cédula número valor

1 M
CLIENTE genera FACTURA

Los óvalos son atributos, los cuadros entidades y el rombo


asociación

Bases de Datos I Andres Henao Rosero - UTP 60


EJERCICIO

 La universidad “U” se divide en varias escuelas. Cada


escuela es administrada por un decano. Los decanos
son profesores a los cuales se les asignan tareas
administrativas. Cada escuela se compone de varios
departamentos. Por ejemplo la escuela de Negocios
tiene un departamento de contabilidad, uno de costos,
uno de presupuesto, etc.
Cada departamento ofrece varios cursos. Una clase es
una sección de un curso. Es decir un departamento
puede ofrecer varias secciones (clases) de un mismo
curso. Cada una de esas clases es impartida por un
profesor a una hora y lugar dados.

Bases de Datos I Andres Henao Rosero - UTP 61

También podría gustarte