La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Teórico: Introducción

Presentaciones similares


Presentación del tema: "Teórico: Introducción"— Transcripción de la presentación:

1 Teórico: Introducción
Bases de datos 1 Teórico: Introducción

2 Temario Teoría (I) Tema 1. Metodologías de Diseño.
Introducción al Diseño de Bases de Datos. Fases de una metodología de diseño. Metodologías ascendentes y descendentes. Características de una metodología de diseño. Tema 2. Modelo Entidad / Relación. Estática del MER: Entidades, Interrelaciones, Atributos, Dominios, Claves. Semántica de las Interrelaciones. Generalización y especialización. Herencia. Agregación. Tema 3. Diseño conceptual. Etapas de diseño conceptual (Modelo conceptual). Análisis de requisitos. Conceptualización. Construcción del esquema conceptual: Enfoques y Estrategias. Integración de vistas. Características del esquema conceptual T1

3 Temario Teoría (II) Tema 4. Diseño lógico.
Etapas de diseño lógico. Transformación del esquema conceptual al lógico estándar. Diseño lógico específico. Tema 5. Teoría de la normalización. Introducción. El proceso de normalización. Objetivos de la normalización. Dependencias funcionales. Descomposición. Forma normal de Boyce y Codd (FNBC). Dependencias funcionales parciales y transitivas. Segunda y Tercera Forma normal (2FN, 3FN). Dependencias multivaluadas. Cuarta forma normal (4FN). Dependencias de combinación. Quinta forma normal (5FN). Tema 6. Diseño Físico. Visión general: introducción, objetivos y factores que influyen en el diseño físico. El proceso de diseño físico. Selección de la organización de ficheros y estructuras de acceso. Ajuste del diseño del esquema, de índices y de consultas. T1

4 INTRODUCCIÓN El término base de datos fue acuñado por primera vez en 1963, en un simposio celebrado en California. De forma sencilla podemos indicar que una base de datos no es más que un conjunto de información relacionada que se encuentra agrupada o estructurada. Desde el punto de vista informático, una base de datos es un sistema formado por un conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulan ese conjunto de datos.

5 Introducción Ingeniería del SW: Diseño de una BD
importantes esfuerzos para encontrar las metodologías más adecuadas gran impacto en el desarrollo de un producto SW: costes, plazos, calidad, mantenimiento. MÉTRICA, SSADM, MERISE,... Integran datos y funciones (mayor énfasis) Diseño de una BD No existe metodología consagrada (diversos enfoques) limitado a veces a teoría de normalización debe abarcar otras etapas (desde concepción a instrumentación) T1

6 Conceptos generales Base de Datos: Database Management System (DBMS):
Es un conjunto de datos relacionados Representa algún aspecto del mundo real Es construida para un propósito específico Database Management System (DBMS): Es un software especializado en gestión de bases de datos Permite a los usuarios crear y mantener una base de datos

7 Conceptos generales Esquema de una BD: Instancia de una BD:
Describe la estructura de una BD Define sus tablas, sus campos en cada tabla y las relaciones entre cada campo y cada tabla Es estable Instancia de una BD: Es el conjunto de datos almacenados en la BD en un cierto momento Es inestable

8 Elementos de una base de datos

9 Actores Administradores de la Base de Datos (DBA):
Son responsables de: Autorizar el acceso a la BD Coordinar y monitorear su uso Diseñadores de la Base de Datos: Identificar los datos que van a ser almacenados Elegir las estructuras adecuadas para representar y almacenar estos datos Usuarios finales: Son las personas cuyo trabajo requiere acceso a la BD Analistas de Sistemas: Determinan los requerimientos de los usuarios finales Desarrolladores: Implementan estas especificaciones como programas

10 Ventajas al usar bases de datos
Permite el manejo de grandes volúmenes de datos Permite una mejor organización de la información: Definición central de datos Abstracción de datos Múltiples vistas de los datos Almacenamiento de datos y programas Control de concurrencia Seguridad y Recuperación ante fallas Separación entre programas y datos Control de Restricciones de Integridad Estandarización de modelos y lenguajes

11 Al no usar bases de datos
Se debería desarrollar programas usando lenguajes de propósito general Esto implica más trabajo para manipular datos así como mantener la calidad de los mismos Se presentan problemas específicos a la implementación basada en archivos, a resolver por el programador: Inconsistencia de datos Dificultades para el acceso a la información Seguridad en datos Control de concurrencia

12 Propiedades de DBMS Control global único de la BD
Separación entre esquema y aplicaciones: Esquema: Visión global de los datos de la realidad Aplicaciones: Programas sobre la BD Soporte a diferentes visiones de los datos: Usuarios/aplicaciones ven subconjuntos de la BD Independencia de datos: Esquema lógico independiente de implementación

13 Arquitectura en 3 niveles

14 Tipos de DBMS Según el Modelo de Datos: Según el porte:
Relacional Orientado a Objetos Otros Según el porte: Desktop/mono-usuario Servidor/multi-usuario Según la distribución de la BD: Centralizado Distribuido

15 Estructura de un DBMS

16 Modelos de datos Son lenguajes usados para especificar BDs
Permiten expresar: Estructuras: Objetos de los problemas Restricciones: Reglas que deben cumplir los datos Operaciones: Insertar, actualizar, borrar y consultar la BD

17 Modelos de datos

18 Clasificación de modelos de datos
Según el nivel de abstracción: Conceptuales: Representan la realidad independientemente de cualquier implementación de la BD Usados en la etapa de Análisis Lógicos: Implementados en DBMSs Usados en las etapas de Diseño e Implementación Físicos: Implementación de las estructuras de datos

19 Lenguajes en ambientes bd
Provistos por DBMS: Definición de Esquema: VDL (View Definition Language) SDL (Storage Definition Language) DDL (Data Definition Language) Manipulación de la BD: DML (Data Manipulation Language): Modificaciones en instancias QL (Query Language): Subconjunto del DML, sólo para consultas

20 Tipos de Query Language
Declarativos: Se especifica qué propiedad cumplen los datos No se especifica cómo se recuperan de la BD Suelen recuperar conjuntos de ítems (registros) El DBMS define el plan de ejecución Procedurales: Se especifica un algoritmo que accede a estructuras del esquema lógico y recupera los datos ítem por ítem (registro a registro)

21 Interfaces en ambientes bd
Interfaces Gráficas de Consulta: Se visualizan las estructuras en forma gráfica Interfaces de Lenguaje Natural: Se procesan frases y se traducen al QL Interfaces para Administración: Ambientes especializados

22 Referencias Capítulos 1, 2, 3 Elmasri-Navathe

23 Metodología De Miguel, Piattini (1993):
"Conjunto de modelos, lenguajes y otras herramientas que nos facilitan la representación de los datos en cada fase del proceso de diseño de una BD, junto con las reglas que permiten el paso de una fase a la siguiente". Herramientas: cualquier recurso a disposición de la metodología modelo de datos, lenguaje de datos, documentación y reglas. + diagramas, grafos, teorías, etc T1

24 Metodología Lenguaje de datos: Documentación: Reglas:
resultado de definir una determinada sintaxis sobre un modelo de datos (p.e. SQL). Documentación: Descripción normalizada de los resultados de cada etapa. diagramas: Representación gráfica de construcciones del MD; documentos fáciles de leer y entender (p.e.: grafos relacionales) Reglas: actúan sobre los elementos de entrada de cada fase de diseño para conseguir las salidas de cada una de ellas. Otras herramientas: CASE. Oracle Designer, ERwin, ER Studio, System Architect,... Metodologías de diseño implícitas en estas herramientas T1

25 Volviendo a definir modelo de datos…
Conjunto de conceptos, reglas y convenciones bien definidos que nos permiten aplicar una serie de abstracciones a fin de describir y manipular los datos de un cierto mundo real que deseamos almacenar en la base de datos MD=Reglas+ Operaciones Reglas: componente estático (definición, LDD) Operaciones: componente dinámico (manipulación, LMD) LD= LDD+LMD T1

26 Los MMDD en el proceso de diseño de una BBDD
Proceso de diseño: Conjunto de etapas necesarias para pasar de un UoD a la base de datos que lo representa. Objetivos de un modelo de datos Formalización Estructuras y restricciones Lenguaje de datos Diseño En el modelo de datos se basa la metodología de diseño T1

27 El proceso de Diseño de Bases de Datos
[Elmasri/Navathe 02] Es el proceso de diseñar la estructura lógica y física de una o más bases de datos para satisfacer las necesidades de información de los usuarios en una organización, para un conjunto definido de aplicaciones. T1

28 El proceso de Diseño de Bases de Datos
Los objetivos del diseño de BD: satisfacer requisitos de contenido de información de usuarios y aplicaciones proporcionar una estructuración de los datos natural y fácil de entender soportar los requisitos de procesamiento y objetivos de rendimiento como tiempo de respuesta, tiempo de procesamiento, espacio de almacenamiento... conseguir un esquema flexible de BD, es decir tal que sea posible modificarlo (como consecuencia de cambios en los requisitos del sistema) fácilmente una vez implementada la BD T1

29 Fases principales en el Diseño de BD
[Elmasri/Navathe 02] Obtención y análisis de requisitos (S.I.) Diseño conceptual Elección de un SGBD Diseño lógico Diseño físico Implementación y ajuste del sistema de BD (S.I.) T1

30 Fase 1: Obtención y análisis de requisitos
CONTENIDO Y ESTRUCTURA DE DATOS APLICACIONES DE LA BASE DE DATOS Fase 1: Obtención y análisis de requisitos REQUISITOS DE PROCESAMIENTO REQUISITOS DE DATOS DISEÑO DEL ESQUEMA CONCEPTUAL DISEÑO DE TRANSACCIONES Y APLICACIONES Fase 2: Diseño conceptual Fase 3: Elección SGBD frecuencias, restricciones de rendimiento DISEÑO DEL ESQUEMA LÓGICO Y DE LAS VISTAS Fase 4: Diseño lógico Fase 5: Diseño físico DISEÑO DEL ESQUEMA INTERNO IMPLEMENTACIÓN DE TRANSACCIONES Y APLICACIONES Fase 6: Implementación y ajuste del sistema de BD Sentencias DDL Sentencias SDL

31 Actividades paralelas
Muchas interacciones entre ambos lados no mostradas. Habituales ciclos de retroalimentación entre fases. DBD: aproximación al desarrollo de SI orientada /controlada por los datos (data-driven): primero se diseñará la BD y posteriormente se diseñarán las aplicaciones. (data modeling) aproximación alternativa al diseño de SI centra su principal atención a los procesos (process-driven). (process modeling). Ingenieros SW y Diseñadores de BD reconocen que ambas actividades deben efectuarse en coordinación. T1

32 Actividades paralelas
Análisis Funcional: especificación de los requerimientos de las aplicaciones esquema funcional: descripción de alto nivel de actividades y flujos de información intercambiados por esas actividades. bases de datos: simples depósitos de información, análisis funcional integra al modelado conceptual. T1

33 Actividades paralelas
Diseño: Especificación de las aplicaciones: descripción a alto nivel de abstracción del comportamiento de los programas de aplicación (en particular describen como las aplicaciones acceden a la BD). Especificaciones detalladas de programas de aplicación y eventualmente el código de los programas. Estas fases integran los diseños lógico y físico (para estas etapas de diseño habrá que tener en cuenta los requisitos de las funciones (procesos). T1

34 Actividades paralelas
Ambas aproximaciones al diseño de SI deben de considerarse como complementarias y deben desarrollarse en paralelo. Los esquemas funcional (resultado del Análisis Funcional) y conceptual (resultado del Modelado Conceptual) deben de ser mutuamente consistentes (sin conflictos) y completos: todos los datos requeridos por las funciones están representados en el esquema conceptual y las funciones incluyen todas las operaciones requeridas por la base de datos. El diseño físico de la base de datos depende de las aplicaciones que van a utilizar los ficheros de la base de datos (forma y frecuencia de acceso a los datos, restricciones de rendimiento, etc.). En el diseño de los programas de aplicación se hace referencia a los elementos que tiene el esquema lógico de la base de datos. T1

35 Diseño de BD T1 Tres grandes fases (comprenden a varias etapas): Modelado conceptual, diseño lógico y diseño físico.

36 Modelado Conceptual Propósito: Esquema conceptual: Modelo Conceptual:
describir el contenido de información de la BD (tipos de datos, relaciones y restricciones), no las estructuras de almacenamiento que se puedan requerir para su gestión Esquema conceptual: descripción de alto nivel de la estructura de la BD; independiente del SGBD particular usado para la implementación de la BD. Modelo Conceptual: lenguaje usado para la descripción del esquema conceptual. T1

37 MC, Enfoque Centralizado
Diseño top-down, descendente: esquema conceptual refleja directamente la visión de la empresa que se intenta modelar. Diferentes listas de requerimientos de usuarios se combinan en una lista de requerimientos global antes de la construcción del esquema conceptual global. El esquema conceptual se elabora mediante la introducción de sucesivos refinamientos posteriormente se definen las vistas de usuario (subesquemas) como subconjuntos de este esquema conceptual. T1

38 Enfoque Centralizado T1

39 MC, Integración de vistas
Diseño bottom-up, ascendente: el esquema conceptual se obtiene como resultado de la integración de las vistas (esquemas conceptuales) de los distintos usuarios. Se empieza construyendo las distintas vistas de usuario teniendo en cuenta las restricciones entre éstas, se elabora el esquema conceptual mediante un proceso de integración. T1

40 Integración de vistas T1

41 La aplicación de un diseño centralizado o de integración de vistas dependerá de la complejidad y tamaño de la BD. Normalmente, el enfoque centralizado podrá utilizarse para BD pequeñas y poco complejas. T1

42 Diseño Lógico independiente del sistema: dependiente del modelo de datos usado, no tanto del SGBD específico. Esquema Lógico: descripción de la estructura de la BD en términos del modelo de datos de implementación. Esquema conceptual y esquemas externos (vistas) en la arquitectura a tres niveles. Modelo Lógico: lenguaje usado para especificar el esquema lógico. Relacional, Red, Jerárquico, Orientado a Objeto. T1

43 Diseño Físico Objetivo: conseguir una instrumentación eficiente del esquema lógico. Las fases de diseño físico y lógico están relacionadas (retroalimentación, adaptar diseño lógico a requisitos de físico). Dependerá del SGBD específico utilizado en implementación. Esquema físico: Descripción de la implementación de la BD: estructuras de almacenamiento y métodos de acceso. Esquema interno en arquitectura a tres niveles. Tanto el esquema lógico como el físico se expresarán usando el DDL y SDL del SGBD destino. Posteriormente se podrá pasar a la construcción de la BD, pruebas, carga y explotación,... T1

44 Características (deseables) de una metodología de diseño.
A) Claridad y comprensibilidad Distintas clases de personas (usuarios, técnicos de sistemas, analistas, etc.) participan en el proceso de diseño; una sencillez tal que permita que sea explicada a distintos tipos de usuarios. B) Soportar la evolución de los sistemas. produciendo en sus distintas etapas esquemas evolutivos, cambio UoD  adaptación de esquemas la metodología debe proporcionar la base para una buena documentación del sistema. T1

45 Características (deseables) de una metodología de diseño.
C) Facilitar la portabilidad. IEEE: “la facilidad con la que un producto de programación puede ser transferido de un sistema informático a otro o de un entorno a otro". esquemas portables, etapas de diseño independientes Fase de Diseño Lógico eStándar (DLS), entre el modelado conceptual y el diseño lógico específico / físico en el SGBDR concreto que se va a utilizar. D) Versatilidad respecto a tipos de aplicaciones No orientada a un tipo de aplicaciones concreto, sino que puede utilizarse en aplicaciones diversas T1

46 Características (deseables) de una metodología de diseño.
E) Flexibilidad: Independencia de la dimensión de los proyectos tanto en proyectos grandes como pequeños. si bien las líneas metodológicas serán las mismas otras técnicas (como, por ejemplo, la de integración de vistas) simplificación de algunas de las etapas F) Rigurosidad Se pretende imprimir un carácter riguroso a los principios metodológicos propuestos. Siempre que sea posible (como en el caso de la normalización) nos apoyaremos en sólidos fundamentos teóricos. un excesivo formalismo puede provocar el rechazo de determinado tipo de usuarios. T1

47 Características (deseables) de una metodología de diseño.
G) Adoptar estándares Aplicación de todos aquellos que para la ingeniería del software en general y para las bases de datos en particular, recomiendan distintas organizaciones internacionales (como ISO, ACM, etc). H) Automatización Aplicando herramientas tipo CASE que soporten todas las fases propuestas para el diseño de la BD. En nuestro caso, al utilizar modelos, lenguajes y herramientas muy extendidos (como el ME/R, diagramas de dependencias funcionales, SQL, etc.), la metodología se puede instrumentar con facilidad en los productos CASE existentes. T1

48 Bibliografía De Miguel, A.; Piattini, M. Concepción y diseño de bases de datos: Del Modelo E/R al modelo relacional. Madrid, Ra-Ma, De Miguel, A.; Piattini, M.; Marcos, E. Diseño de bases de datos relacionales. Madrid, Ra-Ma, 1999. Batini, C; Ceri, S; Navathe, S.B. Diseño conceptual de bases de datos: Un enfoque de entidades-interrelaciones. Wilmington, Addison Wesley / Díaz de Santos,1994. Elmasri, R.; Navathe, S.B. Sistemas de bases de datos: conceptos fundamentales. 2ª ed. Wilmington, Addison Wesley, Elmasri, R.; Navathe, S.B. Fundamentos de sistemas de bases de datos. 3ª ed. Madrid, Pearson Educación, 2002. T1


Descargar ppt "Teórico: Introducción"

Presentaciones similares


Anuncios Google