33
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 Montero Facultad 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ú

Tm06 diseño bd

Embed Size (px)

Citation preview

Page 1: Tm06 diseño bd

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ú

Page 2: Tm06 diseño bd

2

Temas de esta sesión

Diseño de Base de Datos

Modelo de datos

Page 3: Tm06 diseño bd

3

Diseño de Base de Datos

Previos Fases Ejemplos

Page 4: Tm06 diseño bd

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?

Page 5: Tm06 diseño bd

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)

Page 6: Tm06 diseño bd

6

¿ Qué es SGBD ?

SistemaGestor deBase deDatos

DataBase ManagementSystem

Usuarios Finales

Page 7: Tm06 diseño bd

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

Page 8: Tm06 diseño bd

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]

Page 9: Tm06 diseño bd

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]

Page 10: Tm06 diseño bd

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

Page 11: Tm06 diseño bd

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.

Page 12: Tm06 diseño bd

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)

Page 13: Tm06 diseño bd

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

Page 14: Tm06 diseño bd

14

Modelo de Datos

Definición Taxonomia Abstracciones

Page 15: Tm06 diseño bd

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)

Page 16: Tm06 diseño bd

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

Page 17: Tm06 diseño bd

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

Page 18: Tm06 diseño bd

18

Modelo de datos:Abstracciones

Abstracciones

EjerciciosTiposDefinición

Page 19: Tm06 diseño bd

19

AbstraccionesDefinición

Page 20: Tm06 diseño bd

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

Page 21: Tm06 diseño bd

21

Abstracciones

Tipos

Clasificación Agregación Generalización Asociación

Page 22: Tm06 diseño bd

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

Page 23: Tm06 diseño bd

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.

Page 24: Tm06 diseño bd

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.

Page 25: Tm06 diseño bd

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

Page 26: Tm06 diseño bd

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

Page 27: Tm06 diseño bd

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

Page 28: Tm06 diseño bd

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

Page 29: Tm06 diseño bd

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

Page 30: Tm06 diseño bd

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

Page 31: Tm06 diseño bd

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

Page 32: Tm06 diseño bd

32

Los MD en el proceso de diseño de una BD

Page 33: Tm06 diseño bd

33

Tarea

• Desarrollar el caso planteado