Clase 7,8 y 9: Modelamiento de Datos Juan Guillermo Henao Montoya [email protected]
Diplomado en Base de Datos
MODELAMIENTO DE DATOS Presentación
• Qué es un modelo de datos ?
– Es una manera diferente de ver la información
“Herramienta intelectual que nos permite estructurar los datos de forma que se capte la semántica de los mismos “
¿qué significan / que representan?
¿cómo se relacionan?
¿qué se puede hacer con ellos? (“¿cómo se almacena una factura?”) Cuales son sus características ?
– No se refieren a los valores específicos que un elemento de datos deba tomar, sino que
– Trata los datos como grupos genéricos, que pueden tomar cualquier conjunto de valores específicos.
MODELAMIENTO DE DATOS Presentación
• Que es modelamiento de datos ?
– Construcción de un modelo de datos que cumpla con las necesidades de los usuarios, expresadas en :
• Las necesidades del Usuario
• Requisitos del sistema
• Diagrama de Casos de Uso
• Diagrama de Clases
• Diagrama de Componentes
• Diagramas de Despliegue
O K
O K Modelo de
casos de uso
Modelo de análisis
Modelo de Diseño
Modelo de Desplie
gue Modelo de Implementació
n
Modelo de Prueba especificado
por realizado
por distribuido
por implementa
do por verificado por
MODELAMIENTO DE DATOS Presentación
MODELO DE
DATOS
Conjunto de conceptos
Reglas de composición
Se compone de
Representa
Sistema de Información
MODELAMIENTO DE DATOS Presentación
¿Como hacer que el MODELO DE DATOS cumpla con las expectativas
de ambos ? Precisa, Predecible
Exacta
Impreciso, intuitivo, desordenado
MODELAMIENTO DE DATOS Presentación
• Como lograr que se cumplan las expectativas
de los usuarios y de los aplicativos ?
Requerimientos del usuario
MODELAMIENTO DE DATOS Presentación
• Cual es la herramienta para la elaboración de un modelo de datos ?
– El Diagrama Entidad - Relación
– Fue propuesto por Peter Chen en 1976
– Es un modelo sobre el cual se soporta el diseño conceptual de una base de datos
– Es una forma valiosa de obtener información y
adentrarse en la estructura de los datos requeridos por una empresa, usuario o sistema antes
implementar un S.I.
MODELAMIENTO DE DATOS Presentación
• Que es un diagrama entidad relación ?
– Es la representación de información en términos de ENTIDADES y las Asociaciones entre estas, llamadas RELACIONES.
• Es el DER el modelo de datos ?
– El DER es solo una parte, ya que este incluye además las definiciones de los objetos, la
descripción de las reglas de integridad, los atributos y sus dominios.
MODELAMIENTO DE DATOS Tipos de Representación
TÉCNICAS DE MODELAMIENTO Conceptos Básicos
Entidad :
• Todo objeto de datos que es diferenciable de otros objetos, ya sean abstractos o concretos.
• Tipo de cosas que tenemos que recordar para conducir nuestro negocio.
• Algo de interés y particular significado para una empresa acerca de los cual necesita guardar
información.
• Ej.: Articulo, Persona, Pedido, Cliente
TÉCNICAS DE MODELAMIENTO Conceptos Básicos
Relación:
• Conexión lógica entre dos entidades
• Asociación entre dos entidades únicamente
• Asociaciones entre entidades que deben ser recordadas
• Ej.: El CLIENTE hace PEDIDO ( Los negocios
deben recordar cuando el cliente ordena que
productos )
TÉCNICAS DE MODELAMIENTO Conceptos Básicos
Atributos :
• Describen las propiedades o características de las entidades.
• Cosas que describen las entidades
• Aspecto o propiedad, de significado único, que está asociado a la entidad. Su significado es relevante solamente cuando está asociado a la entidad.
• Ej.: Número del articulo, Nombre de persona.
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
• Una ENTIDAD se dibuja como una caja
conteniendo el nombre en letras mayúsculas.
CLIENTE
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
Ejemplos de Entidades
Personas : EMPLEADO, CLIENTE, VENDEDOR, ESTUDIANTE
Lugares : ALMACÉN, OFICINA, EDIFICIO
Artículos : PRODUCTO, REPUESTO, EQUIPO
Conceptual : CLIENTE CORPORATIVO, POLITICA DE SEGURO, PROYECTO
Actividad : PEDIDO, VENTA, DEPOSITO
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
• Ocurrencias de una entidad
Cada uno de los valores que adquiere la entidad.
Ejemplo:
Para la entidad EMPLEADO, son ocurrencias:
Pedro, Juan, José, etc...
TÉCNICAS DE MODELAMIENTO
Elaboración de un diagrama ER
EMPLEADO
ES ASIGNADO APROYECTO
JORGE ANALISIS DE NOMINA
MARIA REVISION DE OPERACION
OLGA CLIENTES ESPECIALES
PATRICIA SISTEMA EN LINEA
FREDDY IMPACTO DEL METRO
MARINA PLATAFORMA
FABIO CARLOS
OCURRENCIAS DE LA OCURRENCIAS DE LA ENTIDAD EMPLEADO ENTIDAD PROYECTO
TÉCNICAS DE MODELAMIENTO
Elaboración de un diagrama ER
Se ve mas claro en un diagrama de objetos
Se identifica que hay una relación de muchos a muchos.
Se resuelve con una clase de la relación :Empleado
Nombre=‘Maria’
:Proyecto
Proy=‘Sistema en linea’
:Proyecto
Proy=‘Plataforma’
:Empleado
Nombre=‘Marina
’
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
RELACIÓN
• Una RELACIÓN se dibuja con una línea entre dos entidades, con el nombre de la relación encima y debajo de la línea en letras
minúsculas.
HOTEL está localizado en CIUDAD es la ubicación
Las relaciones se leen en el sentido del reloj
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
PARTICIPACIÓN
La participación de una entidad en una relación se denomina opcionalidad y es mostrada por un circulo (o) cuando significa cero; o por una barra vertical cuando significa uno. Se colocan al final de la línea.
HOTEL está localizado en CIUDAD es la ubicación
0 : Un hotel no tiene ciudades
| : Un hotel está localizado en una ciudad
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
Relaciones Dependientes
Una ocurrencia de una entidad puede solo existir si ella está relacionada a una ocurrencia de la otra, pero una ocurrencia de la otra puede existir independiente sin participar en la relación.
HOTEL está localizado en CIUDAD es la ubicación
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
Relaciones opcionales
En estas relaciones no es necesario que una ocurrencia de alguna entidad esté relacionada con una ocurrencia de la otra entidad.
PUESTO DE
TRABAJO es ocupado por EMPLEADO
ocupa
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
Relaciones obligatorias
En estas, cada entidad debe estar asociada con una ocurrencia de la otra entidad y
viceversa.
ORDEN contiene DETALLE
esta contenido
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
CARDINALIDAD
• La máxima relación entre las ocurrencias de las entidades involucradas en una relación, se
denomina cardinalidad y es mostrada con una barra vertical ( | ) para indicar uno (1) y una pata de gallina (<) para indicar muchos.
ORDEN DETALLE
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
Uno : Al menos una ocurrencia de la entidad está relacionada a una ocurrencia de la otra.
Muchos : Muchas ocurrencias de la entidad están relacionadas con una ocurrencia de la otra.
ORDEN DETALLE
ORDEN DETALLE
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
Clases de relaciones Relación uno a uno ( 1 - 1)
ORDEN PEDIDO
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
Clases de relaciones Relación uno a muchos ( 1 - M )
ORDEN DETALLE
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
Clases de relaciones Relación Muchos a Muchos ( M - M)
EMPLEADO HABILIDAD
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
• La lectura de un diagrama ER es realizada de acuerdo a la siguiente convención :
Cada una (uno)
< E1>
< nombre de la relación>
[ uno y solo uno, uno o muchos, cero o uno, cero o muchos ]
<E2>
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
• Establecer todas las posibles reglas que se pueden dar para documentar esta relación para un cliente:
CLIENTE realiza PEDIDO
TÉCNICAS DE MODELAMIENTO Elaboración de un diagrama ER
Soluciones
• uno y solo un pedido I I
• uno o muchos pedidos I <
• ninguno o un pedido O I
• cero o muchos pedidos O <
Una relación documenta las reglas del negocio
TÉCNICAS DE MODELAMIENTO Taller General
Supóngase que la universidad desea conocer lo siguiente acerca de los diplomados :
Dado un Conocer
Modulo Alumnos asistentes
Alumno Módulos matriculados Profesor Módulos que atiende Diplomado Módulos y Alumnos
TÉCNICAS DE MODELAMIENTO Taller General
Como representarlo en forma gráfica ?
MODULO
ALUMNO
PROFESOR
DIPLOMADO
TÉCNICAS DE MODELAMIENTO Consideraciones de calidad
• Características de un diagrama ER
– Debe mostrar la máxima cardinalidad y la participación para cada relación
– Mas de una relación puede existir entre dos entidades – Es posible para una relación indicar la Asociación
entre diferentes ocurrencias de la misma entidad – Existen relaciones que pueden ser deducidas y no
representarse en el diagrama por ser redundantes
– Antes de verificar relaciones redundantes, debe estar definida la máxima cardinalidad, la participación y la condición de existencia de la relación.
TÉCNICAS DE MODELAMIENTO Consideraciones de calidad
• Evaluación de las relaciones
– Deben tener nombres significativos y precisos
– Las relaciones uno a uno, pueden ser una sola entidad – Verifique las relaciones redundantes
– Confirme que la gran mayoría de las relaciones son uno a muchos y dependientes
– Cada participación obligatoria debe verificarse para ver si una ocurrencia de la entidad con la cual está asociada puede ser creada sin la entidad asociada – Las relaciones muchos a muchos deben ser disueltas
TÉCNICAS DE MODELAMIENTO Consideraciones de calidad
• Evaluación de las entidades
– Asegure que los nombres están en singular y no son ambiguos. Use términos del negocio donde sea posible
– Verifique las entidades sin relaciones
– Chequee las entidades con una sola ocurrencia – Cada entidad debe tener algún atributo que sea
relevante para el negocio
TÉCNICAS DE MODELAMIENTO Consideraciones de calidad
• Consideraciones generales
– Asegúrese que el diagrama refleje las necesidades de datos requeridas
– Lea el diagrama y verifique que refleje los aspectos de la empresa en la forma como son tratados en ésta
– Valide el diagrama contra la definición de procesos y asegure que cualquier entidad o relación requerida está presente en el diagrama y que todas las
relaciones o entidades son usadas
TÉCNICAS DE MODELAMIENTO Proceso de Normalizacion
• Se estudia la normalizacion de la relaciones
– Consiste en descomponer las relaciones originales en otras mas pequenas con el fin de eliminar las anomalias de almacenamiento y manipulacion
que se pueden dar en las relaciones iniciales y que conformaran la futura base de datos relacional.
TÉCNICAS DE MODELAMIENTO Proceso de Normalizacion
Se compone de un proceso de seis etapas llamada formas
normales. El objetivo del proceso es llevar a que las relaciones de la base de datos se encuentren todas en 5ta forma normal
TÉCNICAS DE MODELAMIENTO Proceso de Normalizacion
• Beneficios de una Base de Datos Correctamente Normalizada:
– Reducir los problemas asociados con el Creación y el Borrado de tuplas
– Reducir el tiempo asociado con modificaciones de las tuplas
– Identificar problemas potenciales que pueden requerir un análisis adicional
– Mejorar la información para la toma de decisiones referentes a la organización física de los datos.
TÉCNICAS DE MODELAMIENTO Primera forma normal (1FN)
En donde los atributos son diferentes y los valores de cada uno de estos son componentes atómicos
Numero Fecha Pago 1
Monto 1 Fecha pago 2
Monto 2
123 2011/01/0 1
100000 2011/02/0 1
200000
124 2011/01/0 1
150000 2011/02/0 1
250000 Movimiento
Empleado
Numero Fecha Pago Monto 123 2011/01/01 100000 123 2011/02/01 200000 124 2011/01/01 150000 124 2011/02/01 250000
TÉCNICAS DE MODELAMIENTO Primera forma normal (1FN)
NumeroViaje Sitio
01-2011 Egipto, Piramides
02-2011 Israel, Muro de las lamentaciones TOUR
Numero Viaje
Ano Pais TipoSitio
01 2011 Egipto Piramides 02 2011 Israel Muro de las
lamentaciones
TÉCNICAS DE MODELAMIENTO Segunda forma normal (2FN)
Si se encuentra en 1FN y ningun atributo no llave depende parcialmente de la Clave Primaria (Dependencia Parcial)
Numero Viaje (pk) Fecha Salida (pk) Tarifa Numero sitio Numero Turista
01 2011/01/01 100000 1001 43221345
02 2011/01/01 150000 1002 70555777
Itinerario
Numero Viaje (pk)
Fecha Salida (pk)
Numero sitio
Numero Turista
01 2011/01/01 1001 43221345
02 2011/01/01 1002 70555777
Numero Viaje (pk) Tarifa
01 100000
02 150000
Itinerario CostoItinerario
TÉCNICAS DE MODELAMIENTO Tercera forma normal (3FN)
Si se encuentra en 2FN y no existe Dependencia Transitiva sobre la clave primaria.
Todos los campos no clave primaria son dependientes de la clave primaria.
No hay atributos no clave primaria que dependen de otro atributo no clave primaria.
Sea R(X,Y,Z) donde X,Y.Z son subconjuntos de atributos.
Se verifica X Y No se verifica Y X, se verifica Y Z El ejemplo mas claro es el modelo de caso de estudio
de CRM en especial el modelo de Personas
TÉCNICAS DE MODELAMIENTO Tercera forma normal (3FN)
Si se encuentra en 2FN y no existe Dependencia Transitiva Sea R(X,Y,Z) donde X,Y.Z son subconjuntos de atributos.
Se verifica X Y No se verifica Y X, se verifica Y Z
Numero Viaje (pk)
Fecha Salida (pk)
Numero sitio
Numero Turista
01 2011/01/01 1001 43221345
02 2011/01/01 1002 70555777
Numero Viaje (pk) Tarifa
01 100000
02 150000
Itinerario CostoItinerario
Numero Viaje (pk)
Fecha Salida (pk)
Numero Turista
01 2011/01/01 43221345
02 2011/01/01 70555777
Itinerario
Numero Turista (pk)
Numero sitio
43221345 1001
70555777 1002
SitioVisitado
TÉCNICAS DE MODELAMIENTO Tercera forma normal (3FNBC)
Se encuentra en 3FNBC (Boyce –Codd) si todos los atributos son determinados por Claves
Numero Viaje (pk)
Fecha Salida (pk)
Numero Turista
01 2011/01/01 43221345
02 2011/01/01 70555777
Itinerario
Regla de Integridad:
Cada turista tiene una sola fecha de salida.
Se traduce en una dependencia funcional NumeroTurista---FechaSalida
Numero Viaje (pk)
Fecha Salida (pk)
01 2011/01/01
02 2011/01/01
Itinerario
Numero Turista (pk)
Fecha Salida
43221345 2011/01/01 70555777 2011/01/01 SalidaTurista
TÉCNICAS DE MODELAMIENTO Cuarta forma normal (4FN)
Si se encuentra en 3FNBC (Boyce –Codd) y si cada vez que una dependencia multivaluada X Y se verifica,
entonces X contiene a una Clave de R
NumeroPersona(pk) FechaSiniestro (pk) FechaAviso (pk)
43111222 2011/01/01 2011/01/01
70555777 2011/01/01 2011/01/01
NumeroPersona (pk)
FechaSiniestro
43111222 2011/01/01 43111222 2011/01/01
NumeroPersona (pk)
FechaAviso 43111222 2011/01/01 43111222 2011/01/01
TÉCNICAS DE MODELAMIENTO Quinta forma normal (5FN)
Se refiere a las llamadas dependencias producto que garantizan la descomposición de una relacion en tres o mas relaciones, manteniendo el contenido original y con menor redundancia
Si cada dependencia producto [X1][X2]…[Xn] de R esta inducida por las llaves candidatas de R, es decir cada Xi contiene una llave candidata de R
EPS Especialista Especialidad
EPS Sura Juan Perez Ortopedista
SaludCoop Natalia Medina Dermatologa
TÉCNICAS DE MODELAMIENTO Quinta forma normal (5FN)
EPS Especialista
EPS Sura Juan Perez
SaludCoop Natalia Medina
Especialista Especialidad
Juan Perez Ortopedista
Natalia Medina Dermatologa
EPS Especialidad
EPS Sura Ortopedista
SaludCoop Dermatologa
DICCIONARIO DE DATOS
• TABLE
Owner=
Name=
TableSpace=
Comment=
Ejemplo:
Owner= ops$sini Name= tbt_rva
TableSpace=TSD_BTS_TAB01
Comment= Contiene la informacion de la reserva
DICCIONARIO DE DATOS
• Colums Name=
Type=
Nullable=
Default=
Storage= (cuando existen LOBs) Comment=
Ejemplo:
Name=CDUEN Default= 114
Type= VARCHAR2(3) Storage=
Nullable= YES
Comment= Identificacion de la unidad estrategica de negocio
DICCIONARIO DE DATOS
• Keys
Name=
Type= Primary – Foreign Columns=
Enable=
Ejemplo:
Name=TBTS_RVA_PK Type= Primary
Columns=NMEXPEDIENTE,CDRAMO Enable=YES
DICCIONARIO DE DATOS
• Checks
Name=
Condition=
Enabled=
Deferred = siempre la transaccion se realiza al final Last Change=
Ejemplo:
Name=TBTS_RVA_CDUEN_CK
Condition=CDUEN IN (‘214’,’219’,’220’) Enabled=YES
Deferred=YES
Last Change=9/9/2010 02:00:10
DICCIONARIO DE DATOS
• Indexes
Owner=
Name=
Type=unique-normal Columns =
Ejemplo:
Owner=OPS$BTS
Name=TBTS_RVA_I1 Type=unique
Columns = nmpoliza,nmriesgo
DICCIONARIO DE DATOS
• Privileges Grantee=
Select=
Insert=
Update=
Delete=
Ejemplo:
Grantee= OPS$ORG Select=YES
Insert=YES Update=YES Delete=YES