tm06 diseño bd
TRANSCRIPT
1
Diseño de base de datos y Modelo de datos
Diseño de base de datos y Modelo de datos
Prof. César Luza MonteroFacultad de Ingeniería de Sistemas e informática
Universidad Nacional Mayor de San Marcos
Copyright © 2009, Cesar Luza, Lima-PerúCopyright © 2009, Cesar Luza, Lima-Perú
2
Temas de esta sesión
Diseño de Base de Datos
Modelo de datos
3
Diseño de Base de Datos
Previos Fases Ejemplos
4
Administración de pedidos
Facturación
Cuentas por pagar
ContabilidadGeneral
Compras a proveedores
RecursosHumanos
Inventarios
Distribución
Cuentaspor cobrar
Bases de Datos
¿ Qué es Base de Datos?
5
¿ Qué es Base de Datos?
Una colección de datos relacionados, y unadescripción de estos datos, diseñados paracumplir con las necesidades de información
de una organización.(Connolly & Begg)
6
¿ Qué es SGBD ?
SistemaGestor deBase deDatos
DataBase ManagementSystem
Usuarios Finales
7
¿ Qué es SGBD?
SGBDUn sistema de software que permite a sus
usuarios crear, mantener y controlar elacceso a una base de datos.
Funciones del SGBD•Descripción o Definición
•Manipulación•Control
•Procedimientos para Administrador
8
¿Qué es el Diseño de B.D.?
Es el proceso de definir la estructura lógica y física de la base de datos para satisfacer las necesidades de información de los usuarios
en una organización, para un conjunto definido de aplicaciones.
[Elmasri/Navathe 02][Elmasri/Navathe 02]
9
Fases del Diseño de B.D.
1. Obtención y análisis de requisitos
2. Modelado conceptual
3. Elección de un SGBD
4. Diseño lógico
5. Diseño físico
6. Implementación y ajustes [Elmasri/Navathe 02]
10
Fases del Diseño de B.D.
Dependencia de: Clase de SGBD
SGBD específico
Modelado Conceptual NO NO Diseño Lógico SI NO Diseño Físico SI SI
Fases del diseño y relación con el SGBD
11
Fases del Diseño de B.D.
MODELADO CONCEPTUAL
Propósito
Obtener los requerimientos de información de los
usuarios y expresarlo en un
esquema conceptual
Obtener los requerimientos de información de los
usuarios y expresarlo en un
esquema conceptual
Resultado
Esquema ConceptualEsquema ConceptualEs una descripción concisa de
los requerimientos de información de los usuarios;
Contiene descripciones detallada de los tipos de datos,
relaciones y restricciones;Se expresan mediante
conceptos de modelo de datos de alto nivel.
Es una descripción concisa de los requerimientos de
información de los usuarios;Contiene descripciones
detallada de los tipos de datos, relaciones y restricciones;
Se expresan mediante conceptos de modelo de datos
de alto nivel.
12
Fases del Diseño de B.D. DISEÑO LOGICO
Propósito
Transformar el esquema
conceptual en un esquema lógico
Transformar el esquema
conceptual en un esquema lógico
Resultado
Esquema LógicoEsquema LógicoEs una descripción detallada de la estructura de la base de datos en términos de modelo de datos de implementación (jerárquico, red, relacional orientada a objetos, objeto
relacional)
Es una descripción detallada de la estructura de la base de datos en términos de modelo de datos de implementación (jerárquico, red, relacional orientada a objetos, objeto
relacional)
13
Fases del Diseño de B.D. DISEÑO FISICO
Propósito
Conseguir una instrumentación
eficiente del esquema lógico a
través de un esquema físico
Conseguir una instrumentación
eficiente del esquema lógico a
través de un esquema físico
Resultado
Esquema FísicoEsquema FísicoEs una descripción detallada de la implementación de la
base de datos en términos de estructura de almacenamiento
internos, (organización de archivos) y métodos de
acceso
Es una descripción detallada de la implementación de la
base de datos en términos de estructura de almacenamiento
internos, (organización de archivos) y métodos de
acceso
14
Modelo de Datos
Definición Taxonomia Abstracciones
Modelo de Datos: Definición
“Un modelo de datos es un conjunto de conceptos, reglas y convenciones que nos permiten describir los datos de una porción
del mundo real” (De Miguel, 93)
“Un modelo de datos es un conjunto de conceptos, reglas y convenciones que nos permiten describir los datos de una porción
del mundo real” (De Miguel, 93)
16
Modelo de datos: Taxonomía .
MD. EXTERNO
Punto de vista de cada usuario en particular
MD. EXTERNO
Punto de vista de cada usuario en particular
MD. GLOBAL
Punto de vista del conjunto de usuarios – Empresa
MD. GLOBAL
Punto de vista del conjunto de usuarios – Empresa
MD. INTERNO
Punto de vista de la maquina
MD. INTERNO
Punto de vista de la maquina
Según Nivel de abstracción de la arquitectura ANSI
Modelos lógicosDescriben aspectos lógicos de los datos
Modelos FísicosDescriben aspectos internos
17
Modelo de datos: Taxonomía
CONCEPTUAL O SEMANTICOEnfocados a describir elmundo real conindependencia de lamáquina
CONVENCIONAL O LOGICOOrientados a suimplementación en un tipo de SGBD especifico
MODELO DE
DATOS GLOBALES
•Entidad/Interrelación (E/R)•Objetos (UML)
•Jerárquico•Red (Codasyl)•Relacional•Objeto-Relacional•Orientado a Objetos
18
Modelo de datos:Abstracciones
Abstracciones
EjerciciosTiposDefinición
19
AbstraccionesDefinición
20
Abstracción
– La abstracción es un proceso mental – Que se aplica al seleccionar algunas
características y propiedades de un conjunto de objetos y
– Excluye otras no pertinentes. – Abstracciones vínculos entre
elementos del modelo.
– La abstracción es un proceso mental – Que se aplica al seleccionar algunas
características y propiedades de un conjunto de objetos y
– Excluye otras no pertinentes. – Abstracciones vínculos entre
elementos del modelo.
Definición
21
Abstracciones
Tipos
Clasificación Agregación Generalización Asociación
22
Abstracción: Clasificación• Abstraer las características comunes a un conjunto de
ejemplares para crear una categoría (clase, tipo) a la cual pertenecen dichos ejemplares.
• Teoría de conjuntos, clase: – intensión (parte definitoria)– extensión (colección de ejemplares en un momento dado)
• Se corresponde con el concepto de pertenencia a un conjunto.
Clase:
PROFESOREjemplares: profesor 1,..., profesor n
clasificación
particularización
Proceso inversoProceso inverso
23
Abstracción: Clasificación• Se utiliza para definir un concepto como una clase
de objetos de la realidad caracterizados por propiedades comunes.
Días de la semana
Lunes Martes Domingo...
Cada rama del árbol indica que un nodo hoja es un miembro (ES_MIEMBRO_DE) la clase que representa la raíz.
24
Abstracción: Clasificación
• Ejemplo: Clasificamos como Vehículos a las máquinas, animales o cosas, con medios de propulsión propios, que sirven para desplazar seres u objetos desde una posición a otra.– Ambulancia => SI es un vehículo– Grúa => NO es un vehículo (incumple la autopropulsión).
• Los mismos objetos admiten clasificaciones distintas. Por ejemplo, podemos clasificar las asignaturas de varias maneras:– obligatorias / optativas,– anuales / semestrales,– de primer curso, segundo curso, etc,– teóricas / aplicadas, etc.
25
Abstracción: Agregación
• Construir un nuevo elemento del modelo como compuesto de otros elementos (componentes, “son parte de”).– Agregación de clases Clase compuesta
• AREA 1, AREA 2, ... DEPARTAMENTO– Agregación de propiedades Clase
• Código, nombre, créditos, ... ASIGNATURA
– Agregación de propiedades Propiedad compuesta
• Día, Mes, Año Fecha
26
Abstracción: Agregación
• Define una nueva clase de objetos a partir de un conjunto de clases (otras, no necesariamente distintas) que representan sus partes componente
Cada rama del árbol indica que una clase hoja es una parte de (ES_PARTE_DE) la clase representada por la raíz
Persona
rut nombre dirección teléfono
27
Abstracción: Generalización
• Abstraer las características comunes a varias clases (subclases) para construir una clase más general (superclase).– Parecido a clasificación: (ejemplares clase / clases clase).
• El conjunto de ejemplares de la subclase “es un” subconjunto de los ejemplares de la superclase.
• Todo ejemplar de la subclase, es también un ejemplar de la superclase. • La subclase. además de poseer características específicas, hereda todas
las de la correspondiente superclase.
SuperClase:
PERSONASubClases: PROFESOR, ESTUDIANTE,...
especialización
generalización
28
Abstracción: Generalización
• Define una relación de subconjunto entre elementos de dos o mas clases.
Cada rama del árbol expresa que una clase hoja es un (ES_UN) subconjunto de la clase raíz
Empleado
Proyectista Ingeniero Gerente
Herencia
29
Abstracción: Asociación
• Asociación :
vincula dos o más clases, creándose un elemento de tipo distinto.
• Ej.: PROFESOR imparte ASIGNATURA
• Puede parecerse a la agregación, pero posee rasgos distintivos
30
Combinación de abstracciones
• La clase PERSONA se puede obtener por– Clasificación de sus ejemplares (persona x,
persona y, ...)– Agregación de sus propiedades (DNI,
Nombre, Dirección).– Generalización de las clases PROFESOR y
ESTUDIANTE
31
Abstracciones: Ejercicio
• El vehículo de matrícula CR-0978-Z es de la clase ambulancia.
• Está formada por cuatro ruedas, un chasis, un motor, ...
• Una ambulancia es un tipo de vehículo para recoger y transportar enfermos.
• Su propietario es la empresa CUASER; su conductor es Fernández, ...
Clasificación
Agregación
Generalización
Asociación
Ejemplo de la vida
cotidiana: una ambulancia
32
Los MD en el proceso de diseño de una BD
33
Tarea
• Desarrollar el caso planteado