Gestión y Modelación de Datos (300CID001)

 

Información Básica

Descripción del Curso

El curso de Gestión y Modelación de Datos introduce los conceptos y técnicas de los sistemas de bases de datos. Se estudian los componentes de un sistema de información y las características de un sistema gestor de bases de datos (SGBD). El curso se enfoca en las bases de datos relacionales y se utiliza el modelo entidad relación y el modelo relacional para modelar problemas típicos en donde es necesario el almacenamiento y manipulación de datos. También se estudia el diseño de bases de datos a partir de dependencias funcionales y formas normales. Finalmente, por medio del lenguaje SQL el participante logra implementar bases de datos y manipular su contenido.

Objetivos

Al finalizar el curso los participantes podrán:

  1. Identificar los conceptos fundamentales de los sistemas de bases de datos.
    1. Enumerar las diferencias entre dato e información.
    2. Evaluar las implicaciones éticas del uso de la información
    3. Reconocer la importancia de la información en la sociedad actual.
    4. Identificar los componentes de un Sistema de Información.
    5. Describir los principales componentes de un Sistema de Base de Datos.
    6. Reconocer las ventajas de los Sistemas de Bases de Datos en comparación con los sistemas de archivos.
    7. Identificar la importancia de las bases de datos en distintas aplicaciones de software.
    8. Explicar las etapas del proceso de diseño de un sistema de información haciendo énfasis en las relacionadas con el diseño de bases de datos.
  2. Modelar por medio del MER (Modelo Entidad Relacional) y de ODL (Object Definition Language) una base de datos a partir de una problemática o realidad particular.
    1. Identificar los componentes de los modelos lógicos basados en objetos (MER y ODL).
    2. Extraer a partir de un enunciado de un problema las entidades y relaciones necesarias para modelarlo.
    3. Emplear restricciones en el modelo de datos cuando sea necesario (aridad, obligatoriedad, relaciones débiles, relaciones ISA, etc).
    4. Modelar por medio del MER una base de datos a partir de una problemática o realidad particular.
    5. Modelar por medio del ODL una base de datos a partir de una problemática o realidad particular.
  3. Modelar una problemática o realidad particular mediante el Modelo Relacional y expresar consultas sobre el modelo utilizando el Álgebra Relacional.
    1. Identificar los componentes de los modelos lógicos basados en registros, particularmente, del modelo relacional de datos
    2. Extraer a partir de un enunciado las restricciones del modelo (llaves primarias, foráneas, de unicidad, de chequeo, obligatoriedad, tipo, etc).
    3. Transformar un diseño en el MER al modelo relacional.
    4. Transformar un diseño en ODL al modelo relacional.
    5. Especificar consultas en una base de datos por medio del Álgebra Relacional (AR).
    6. Calcular la relación resultante a partir de una expresión en el AR.
  4. Implementar una base de datos y manipular su contenido mediante el lenguaje SQL (Structured Query Language).
    1. Utilizar el Lenguaje de Definición de Datos (DDL) para crear la estructura de una base de datos
    2. Implementar restricciones del modelo relacional mediante DDL
    3. Manipular el contenido de una base de datos por medio del Lenguaje de Manipulación de Datos (DML) de SQL.
    4. Implementar consultas sobre la base de datos utilizando SQL
  5. Diseñar una base de datos a partir de las dependencias funcionales entre sus componentes.
    1. Reconocer los problemas de redundancia e inconsistencia que surgen en los diseños de bases de datos no normalizados.
    2. Extraer el conjunto de dependencias funcionales que debe satisfacer una relación.
    3. Calcular el cierre y el recubrimiento canónico de un conjunto de dependencias funcionales.
    4. Identificar las diferentes formas normales y sus fundamentos teóricos.
    5. Calcular la 3FN y la FNBS a partir de una relación universal y un conjunto de dependencias funcionales
    6. Calcular la 4FN a partir de una relación universal y un conjunto de dependencias funcionales (multivaloradas)
    7. Argumentar si una relación se encuentra en una forma normal dada.
    8. Evaluar diseños de bases de datos a partir de las dependencias funcionales que debe cumplir.
  6. Implementar procedimientos para manipular datos en una base de datos
    1. Implementar utilizando PL/SQL procedimientos y funciones en la base de datos
    2. Reconocer las estructuras de datos que se utilizan para indexar datos en una base de datos.
    3. Reconocer las aplicaciones de las vistas de datos en los sistemas de bases de datos.

Contenido

Capítulo 1: Introducción

Sesión Horas de Clase Tópicos Bibliografía
1 2 Presentación del curso e Introducción. [4,cap 1]
2 2 Definiciones y Conceptos de los Sistemas de Bases de Datos. [1,cap 1],[4,cap 2]
3 2 El Sistema Gestor de base de Datos [1,cap 1],[3,cap 2]

Total de Horas: 6.

Capítulo 2: Modelación de Datos

Sesión Horas de Clase Tópicos Bibliografía
4 2 Conceptos de los modelos de datos [1,cap 2]
5 4 ODL [1,cap 2]
7 4 Modelo Entidad Relación [1,cap 2]
9 4 Ejercicios de Modelación de Datos [1,cap 2]

Total de Horas: 14.

Capítulo 3: Modelo Relacional de Datos

Sesión Horas de Clase Tópicos Bibliografía
11 2 Introducción al modelo relacional y transformaciones del MER (y ODL) al MR [1,cap 2]
12 2 Restricciones de Integridad referencial [1,cap 2]
13 2 Operaciones Fundamentales del Álgebra Relacional [1,cap 4],[3,cap 6]
14 2 Operaciones Derivadas del Álgebra Relacional [1,cap 4],[3,cap 6]
15 2 Ejercicio completo de modelado de datos y especificación de consultas [1,cap 4],[3,cap 6]

Total de Horas: 10.

Capítulo 4: El lenguaje SQL

Sesión Horas de Clase Tópicos Bibliografía
16 2 Introducción a SQL. [1,cap 5]
17 2 DML y DDL [1,cap 5]
18 4 Ejercicio completo de creación de una base de datos y manipulación de datos [1,cap 5]

Total de Horas: 8.

Capítulo 5: Diseño de Bases de Datos

Sesión Horas de Clase Tópicos Bibliografía
20 2 Conceptos de dependencias funcionales [1,cap 3],[3,cap 12]
21 2 Reglas de las dependencias funcionales [1,cap 3],[3,cap 12]
22 4 Diseño de esquemas de bases de datos (FNBD, 3FN) [1,cap 3],[3,cap 12]
24 2 Dependencias funcionales multivaloradas y 4FN [1,cap 3],[3,cap 12]
25 2 Ejercicio: Diseño y evaluación de una modelo de bases de datos

Total de Horas: 12.

Capítulo 6: Implementación de Bases de Datos

Sesión Horas de Clase Tópicos Bibliografía
26 4 Funciones, Procedimientos y triggers
28 2 Indices y vistas
29 4 Ejercicio completo de implementación

Total de Horas: 10.

Recursos

Bibliografía

  1. Jeffrey D. Ullman and Jennifer Widom , Introducción a los Sistemas de Bases de Datos. , Prentice Hall , 1999
  2. Abraham Silberschatz, Henry F. Korth and S. Sudarshan , Fundamentos de Bases de Datos , McGraw-Hill , 2004 (Ed. 4)
  3. C. J. Date , Introducción a los Sistemas de Bases de Datos , Pearson Educación , 2001
  4. Adoración de Miguel and Mario Piattini , Fundamentos y Modelos de Bases de Datos , RA-MA Editorial , 1997

Instalaciones

Salón de clase con computador y proyector.

Material de este semestre