Unidad Académica Responsable: Departamento de Informática y Ciencias de la Computación CARRERA a las que se imparte: Ingeniería Civil Informática I.- IDENTIFICACION Nombre: Bases de Datos Código: 503307 Créditos: 5 Créditos SCT: 8 Prerrequisitos: no tiene (deseable Lógica) Modalidad: presencial Calidad: obligatoria Duración: semestral Semestre en el plan de estudios: 6 Ingeniería Civil Informática Trabajo Académico: 13 Horas Teóricas: 3 Horas Prácticas: 0 Horas Laboratorio: 2 Horas de otras actividades: 8 Docente M. Andrea Rodríguez Tastets Responsable Docente Colaborador Comisión Loreto Bravo Evaluación Duración 17 (semanas) Fecha: Aprobado por: Al finalizar esta asignatura los alumnos deberán conocer los conceptos básicos de la tecnología de bases de datos, comprender el modelo de datos relacional y saber usar un sistema gestor de bases de datos relacional. Para esta asignatura es deseable haber cursado la asignatura de Lógica. Esta asignatura aporta a las siguientes competencias del perfil de egreso: • • • • Aplicar principios de matemáticas, ciencias de la ingeniería y ciencias de la computación, a problemas de ingeniería informática. Identificar necesidades de usuarios, a partir de las cuales formula, diseña e implementa soluciones informáticas que satisfagan las especificaciones. Trabajar en equipos para solucionar problemas de manera colaborativa e incentivando el trabajo multidisciplinario. Involucrarse en procesos de auto-aprendizaje continuo que le permita adaptarse a la evolución de la teoría y tecnología. III.- RESULTADOS DE APRENDIZAJE ESPERADOS Al finalizar la asignatura, los alumnos estarán en condiciones de: 1. Conocer el concepto de bases de datos, sus características principales, y la existencia de distintos modelos de datos. 2. Comprender los conceptos del modelo de datos relacional, los mecanismos para expresar restricciones de integridad y una metodología de diseño de bases de datos relacionales. 3. Conocer el lenguaje estándar para la manipulación de datos y consultas— SQL. 4. Comprender el concepto y los componentes de un sistema gestor de bases de datos. 5. Diseñar e implementar una base de datos usando un sistema gestor de bases de datos relacional, siguiendo las directrices de una metodología de diseño. IV.- CONTENIDOS 1. Sistema de Bases de Datos a. Conceptos básicos b. Arquitectura c. Evolución 2. Modelado Conceptual a. Proceso de diseño de bases de datos b. Modelo E/R c. Modelado de restricciones d. Extensiones al modelo E/R y otros modelos 3. Modelo Relacional: a. Conceptos b. Álgebra y cálculo relacional c. De E/R a modelo relacional d. Restricciones, dependencias funcionales e. Normalización f. Extensiones al modelo relacional 4. SQL a. Lenguaje de Definición de Datos DDL b. Lenguaje de Manipulación de Datos DML c. Vistas d. Restricciones de Integridad e. Triggers f. Recursividad 5. Nociones de Sistema de Gestión de Bases de Datos a. Componentes y funciones b. Implementación física c. Transacciones d. Concurrencia e. Recuperación f. Seguridad V.- METODOLOGIA La asignatura usa una metodología activa que consiste de trabajos prácticos orientados a la resolución de ejercicios y al desarrollo de un proyecto semestral, complementado con sesiones expositivas. VI.- EVALUACION La asignatura consta de tres controles, un trabajo semestral evaluado en tres fases y el trabajo de laboratorio. Los controles tienen diferente ponderación cada uno, siendo el control 1 un 20%, el control 2 un 30% y el control 3 un 50% de la nota final de controles (NC). El proyecto del curso es un trabajo de 2 PERSONAS que consiste en el diseño e implementación de una base de datos de complejidad mediana, la cual considere aspectos técnicos y de eficiencia. Los proyectos deberán tener una interfaz (Web o no Web) que hace de medio de interacción con el usuario. Cada grupo definirá un problema a tratar en el proyecto semestral, de su elección o sugerido por la profesora. Comenzarán con el diseño conceptual que se implementará en una base de datos relacional tipo Postgres. La complejidad del problema debe requerir el uso de 8 o más entidades de un modelo EntidadRelación. El proyecto deberá requerir obtención de datos, programación de restricciones de integridad y transacciones, dependiendo de los requisitos, y una interfaz. El proyecto se evalúa en fases, donde la fase de modelo conceptual equivale a un 20%, el modelo lógico a un 20% y la implementación final a un 60% de la nota final del proyecto (NP). Ambos NC y NP debe ser mayores o iguales a 4.0 para aprobar el curso. Lo nota final del curso (NF) se curso se calcula por la siguiente ponderación: NF = 0.7*NC + 0.25*NP + 0.05NL, Donde NL es la nota de trabajo en laboratorio. Tienen derecho a dar examen de recuperación los alumnos que habiendo reprobado los controles, hayan aprobado el proyecto. El examen de recuperación equivale a un 40 % de los controles. VII.- BIBLIOGRAFIA Y MATERIAL DE APOYO Básicos: • J. Ullman & J. Widom: A first course in database systems, third edition. Prentice-Hall, 2007. 592 pp., ISBN-10 0136006374, ISBN-13 978-0136006374. • R. Elmasri & S. Navathe: Fundamentals of database systems, sixth edition. Addison-Wesley, 2006. 1200 pp., ISBN-10 0136086209, ISBN13 978-0136086208. VIII.- PLANIFICACIÓN (Tentativa) Semana Actividad Responsable Trabajo académico Resultado de aprendizaje 1 Clase presencial: Introducción Clase presencial: modelo conceptual Práctica: ejercicios de modelo conceptual Clase presencial: modelo relacional Práctica: ejercicios de modelo relacional Control I/ presentación de trabajo Laboratorio: Motor Postgres Clase presencial: Algebra relacional Práctica: ejercicios de algebra relacional Clase presencial: SQL/trigger/views Laborotorio: Trabajo práctico de base de datos Clase presencial: Dependencias funcionales Práctica: ejercicios de dependencias funcionales Clase presencial: Normalización Loboratorio: trabajo proyecto y PHP Control/presentación trabajo docente 1h R1 docente 3h R2 Ayudante 4h R2 Docente 3 R2 Ayudante 2 R2 2 R2,R5 Ayudante Docente 2 3 R4 R2 Ayudante 2 R2 Docente 5 R3 Ayudante 5 R3,R5 docente 3 R2 Ayudante 2 R2 docente 6 R2 Ayudante 12 R4 Docente/ Ayudante Docente 2 R3,R5 3 R4 Docente 3 R4 Docente 3 R4 Docente 4 R4 Docente/ Ayudante 4 R5 2-3 2-3 4 4 5 6 6 6-7 8 9 9 10-11 10-16 12 13 14 15 16 17 IX.- OTROS Clase presencial: Modelo físico Clase presencial: Procesamiento de consulta Clase presencial: Transacciones/concurrencia Clase presencial: Concurrencia/recuperación Control y presentación de trabajos El cursos manejo la interacción oficial a través del sistema INFODA y el intercambio de documentos e información por el sistema piazza (https://piazza.com/class/).