Información Básica
-
Créditos: 3
-
Horas de trabajo acompañado: 5 / semana (3 horas de clase, 2 horas de taller)
-
Horas de trabajo independiente: 4 / semana
-
Pre-requisitos: Programación orientada a objetos, Árboles y grafos
-
Tipo de curso: Núcleo de Formación Fundamental.
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. En este curso 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 el diseño de bases de datos, con énfasis en las bases de datos relacionales e ilustra los conceptos de seguridad de la información. A lo largo del curso se introducen diversos modelos de datos y se usan los modelos entidad relación y relacional para modelar problemas 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:
-
Identificar los conceptos fundamentales sobre almacenamiento y recuperación de la información y los sistemas de bases de datos.
-
Reconocer la importancia de la información en la sociedad.
-
Evaluar las implicaciones éticas del uso de la información
-
Describir los principales componentes de un Sistema de Base de Datos.
-
Reconocer las ventajas que ofrecen los Sistemas de Bases de Datos.
-
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.
-
-
Identificar los principios básicos de la protección y seguridad de la información.
-
Reconocer las ventajas y desventajas de incluir características y principios de diseño seguro en el software.
-
Describir los conceptos relacionados con la protección y seguridad de la información (riesgo, amenaza, vulnerabilidad, ataque, autenticación, autorización, control de acceso, confiabilidad).
-
Explicar los principios de diseño seguro.
-
-
Modelar una base de datos a partir de una problemática o realidad particular.
-
Definir que es un modelo de datos e identificar sus componentes.
-
Extraer a partir de un enunciado de un problema las entidades (u objetos), relaciones y atributos necesarias para modelarlo.
-
Emplear restricciones en el modelo de datos cuando sea necesario.
-
Modelar por medio del MER una base de datos a partir de una problemática o realidad particular, incluyendo las restricciones necesarias (llaves primarias, aridad, obligatoriedad, relaciones débiles, relaciones ISA, etc).
-
Modelar por medio del Modelo Relacional una base de datos a partir de una problemática o realidad particular, incluyendo las restricciones necesarias (llaves primarias, llaves foráneas, unicidad, chequeo, obligatoriedad, tipo, etc).
-
Transformar un diseño en el MER al modelo relacional.
-
Especificar consultas en una base de datos por medio del Álgebra Relacional (AR).
-
Reconocer el impacto de los índices en el desempeño de la base de datos y usar índices para mejorar la eficiencia de la ejecución de las consultas.
-
Reconocer las estructuras de datos que se utilizan para indexar datos en una base de datos.
-
Identificar las características de las herramientas y modelos diseñados para el manejo eficiente de grandes volúmenes de información. Usar, en un nivel básico, algunas de ellas.
-
-
Implementar una base de datos y manipular su contenido mediante el lenguaje SQL (Structured Query Language).
-
Utilizar el Lenguaje de Definición de Datos (DDL) para crear la estructura de una base de datos.
-
Implementar restricciones del modelo relacional mediante DDL.
-
Manipular el contenido de una base de datos por medio del Lenguaje de Manipulación de Datos (DML) de SQL.
-
Implementar consultas sobre la base de datos utilizando SQL.
-
-
Implementar procedimientos para manipular datos en una base de datos
-
Implementar, utilizando PL/SQL, procedimientos, funciones y triggers en la base de datos
-
Usar transacciones para garantizar la consistencia de los datos.
-
Usar JDBC-ODBC para crear aplicaciones de software que almacenan y administran datos.
-
Reconocer las aplicaciones de las vistas de datos en los sistemas de bases de datos.
-
Crear indices usando SQL.
-
-
Diseñar una base de datos a partir de las dependencias funcionales entre sus componentes.
-
Reconocer los problemas de redundancia e inconsistencia que surgen en los diseños de bases de datos no normalizados.
-
Extraer el conjunto de dependencias funcionales que debe satisfacer una relación.
-
Calcular el cierre y el recubrimiento canónico de un conjunto de dependencias funcionales.
-
Identificar las diferentes formas normales y sus fundamentos teóricos.
-
Calcular la 3FN y la FNBS a partir de una relación universal y un conjunto de dependencias funcionales
-
Calcular la 4FN a partir de una relación universal y un conjunto de dependencias funcionales (multivaloradas)
-
Argumentar si una relación se encuentra en una forma normal dada.
-
Evaluar diseños de bases de datos a partir de las dependencias funcionales que debe cumplir.
-
Competencias técnicas específicas que se desarrollan
-
SQL (intermedio)
-
PL (intermedio)
-
PostgreSQL (básico)
Contenido
Capítulo 1: Introducción a la Administración de la Información
Sesión | Horas teóricas | Prácticas acompañadas | Temas | Profundidad | Bibliografía |
---|---|---|---|---|---|
1 | 2 | 0 | Presentación del curso. Conceptos básicos del almacenamiento y recuperación de la información. | Familiaridad | [1 cap. 1; 4 cap 1] |
1-2 | 2 | 0 | Sistemas de bases de datos | Familiaridad | [3 cap. 2; 4 cap. 2] |
2-3 | 2 | 1 | Aspectos éticos del manejo de la información | Familiaridad |
Total de Horas: 7.
Sesión | Horas de trabajo independiente | Temas | Bibliografía |
---|---|---|---|
1-2 | 10 | Preparación examen parcial, tarea, búsqueda de información, lecturas, informes, ensayo | [1 cap. 1; 4 cap. 1,2; 3 cap. 2] |
Total de Horas: 7.
Capítulo 2: Seguridad y Protección de la Información
Sesión | Horas teóricas | Prácticas acompañadas | Temas | Profundidad | Bibliografía |
---|---|---|---|---|---|
3-4 | 2 | 0 | Confidencialidad, integridad y disponiblidad. Riesgos, amenazas, vulnerabilidades y tipos de ataque. Autenticación, autorización y control de acceso. | Familiaridad | |
4-5 | 2 | 0 | Confianza e integridad. Principios de diseño seguro. | Familiaridad | |
5 | 2 | 0 | Seguridad en relación con otros objetivos de diseño. | Familiaridad |
Total de Horas: 6.
Sesión | Horas de trabajo independiente | Temas | Bibliografía |
---|---|---|---|
3-5 | 4 | Preparación de examen parcial, tarea, quiz |
Total de Horas: 4.
Capítulo 3: Modelación de Datos
Sesión | Horas teóricas | Prácticas acompañadas | Temas | Profundidad | Bibliografía |
---|---|---|---|---|---|
6-7 | 2 | 3 | Conceptos de los modelos de datos. Modelos conceptuales: Modelo Entidad Relación. | Evaluación | [1 cap 2] |
8-9 | 2 | 3 | Modelo relacional. Transformaciones del MER al MR. | Evaluación | [1 cap 2] |
10-11 | 2 | 3 | Algebra relacional. | Evaluación | [1 cap 4; 3 cap 6] |
12 | 1 | 1 | Indices: estructura e impacto en las consultas. | Familiaridad | |
13 | 2 | 1 | Otros modelos de datos: hojas de cálculo, orientado a objetos. | Familiaridad | |
14-15 | 3 | 1 | Administración de grandes volúmenes de información: noSQL, MapReduce | Familiaridad |
Total de Horas: 24.
Sesión | Horas de trabajo independiente | Temas | Bibliografía |
---|---|---|---|
6-11 | 24 | Preparación del examen parcial, proyectos, tareas | [1 caps. 2,4; 3 cap. 6] |
Total de Horas: 18.
Capítulo 4: Lenguaje SQL
Sesión | Horas teóricas | Prácticas acompañadas | Temas | Profundidad | Bibliografía |
---|---|---|---|---|---|
16-17 | 2 | 3 | Introducción a los lenguajes de consulta de datos. Definición y manipulación de datos con SQL: create, insert, update, delete y consultas básicas. | Uso | [1 cap 5] |
18-20 | 2 | 5 | Join, funciones agregadas, agrupamientos y subconsultas. | Uso | [1 cap 5] |
Total de Horas: 12.
Sesión | Horas de trabajo independiente | Temas | Bibliografía |
---|---|---|---|
16-20 | 12 | Preparación examen parcial, tareas, proyectos, laboratorios | [1 caps. 2,4; 3 cap. 6] |
Total de Horas: 12.
Capítulo 5: Implementación de Bases de Datos
Sesión | Horas teóricas | Prácticas acompañadas | Temas | Profundidad | Bibliografía |
---|---|---|---|---|---|
25-27 | 2 | 4 | Procedimientos almacenados. | Uso | |
27-29 | 2 | 4 | Triggers. | Uso | |
29-31 | 2 | 3 | Transacciones. JDBC-ODBC. Índices. | Uso |
Total de Horas: 17.
Sesión | Horas de trabajo independiente | Temas | Bibliografía |
---|---|---|---|
25-31 | 12 | Preparación examen parcial, tareas, proyectos, laboratorios |
Total de Horas: 12.
Capítulo 6: Diseño de Bases de Datos Relacionales
Sesión | Horas teóricas | Prácticas acompañadas | Temas | Profundidad | Bibliografía |
---|---|---|---|---|---|
21-22 | 3 | 2 | Dependencias Funcionales y Mulitvaloradas. Llaves candidatas, superllaves y clausura de un conjunto de atributos. | Uso | [1 cap 3; 3 cap 12] |
23-24 | 2 | 3 | Descomposición sin pérdida. Formas normales. | Evaluación | [1 cap 3; 3 cap 12] |
Total de Horas: 10.
Sesión | Horas de trabajo independiente | Temas | Bibliografía |
---|---|---|---|
21-24 | 8 | Preparación examen parcial, tareas | [1 cap. 3; 3 cap. 12] |
Total de Horas**: 8.
Uso de material en exámenes
Está permitido el uso de notas de clase, bibliografía y calculadoras. No está permitido el uso de computadores personales ni teléfonos celulares.
Asistencia
Obligatoria.
Bibliografía
-
Jeffrey D. Ullman and Jennifer Widom , Introducción a los Sistemas de Bases de Datos. , Prentice Hall , 1999
-
Abraham Silberschatz, Henry F. Korth and S. Sudarshan , Fundamentos de Bases de Datos , McGraw-Hill , 2004 (Ed. 4)
-
C. J. Date , Introducción a los Sistemas de Bases de Datos , Pearson Educación , 2001
-
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. Laboratorio de Ingeniería de Sistemas y Computación.