Universidad Tecnológica Nacional - Facultad Regional C. del Uruguay Planificación de Cátedra Gestión de Datos 2012 Planificación de Cátedra Gestión de datos – Primer cuatrimestre 2012 Objetivos Objetivo Valorar la importancia del diseño conceptual de bases de datos en el marco del diseño de un sistema de información. Tiempo (semanas) Actividades y Metodologías Nivel de Profundidad 4 Trabajos prácticos, Formación de resolución de problemas. Conceptos Comprender los conceptos básicos de la Teoría Relacional 3 Trabajos prácticos, Formación de resolución de problemas. Conceptos Adquirir un manejo fluido de lenguajes de consulta de bases de datos, ya sea basados en la teoría relacional o en la tecnología de objetos 4 Trabajos prácticos, prácticas de laboratorio. Conceptual Estar al tanto de las técnicas utilizadas para la implementación de sistemas de gestión de bases de datos 2 Resolución de problemas. Informativo Conocer las tendencias futuras en el desarrollo del campo de las bases de datos 2 Seminario y simposio. Informativo Conocer y aplicar técnicas para desarrollar modelos conceptuales de datos. Los objetivos en el marco de la carrera y como futuro profesional son: • • Conocer las incumbencias que puede llegar a tener como futuro profesional de sistemas en relación a la administración de datos en general y de bases de datos en particular. Adquirir los fundamentos básicos de los diferentes modelos de datos y sus posibles aplicaciones. Programa sintético Archivos: organizaciones. Procesamiento básico. Bases de Datos: componentes. Modelos conceptuales (Ej.: Entidad/Relación, Orientado a Objetos, etc.). Seguridad y privacidad. Modelos Lenguajes de consultas. Programa analítico Unidad 1: Introducción a los sistemas de bases de datos Concepto de Base de Datos. Propósito de los sistemas de bases de datos. Beneficios respecto de otras técnicas. Independencia de datos. Integridad. Arquitectura de un sistema de bases de datos: nivel externo, nivel conceptual, nivel interno. Unidad 2: Modelo conceptual de datos Propósito del modelado conceptual de datos. Técnicas: Diagrama entidad/relación. Entidades. Atributos. Relaciones. UML: Diagrama de Clases. Unidad 3: Modelo Relacional Concepto de modelo de datos. Dominios. Relaciones. Atributos. Reglas de integridad. Claves. Obtención de un esquema relacional a partir de un diagrama Entidad/Relación. Dependencias funcionales. Formas normales. Normalización. Página 1 de 6 Universidad Tecnológica Nacional - Facultad Regional C. del Uruguay Planificación de Cátedra Gestión de Datos 2012 Unidad 4: Operaciones en el modelo relacional Álgebra relacional. Operadores tradicionales. Otros operadores. Operadores de actualización. Comparaciones Relacionales. Cálculo relacional. Lenguaje comercial de consultas a bases de datos: SQL. Operaciones básicas. Operaciones de actualización. Uso de SQL en el entorno de otro lenguaje de programación. Unidad 5: Protección de datos Recuperación de información: transacciones, recuperación de transacciones, las propiedades "ACID". Concurrencia: problemas de concurrencia, bloqueo, abrazo mortal, seriabilidad, protocolos de bloqueo. Seguridad: control de accesos, encriptación de datos, control de accesos, protección de datos individuales en consultas estadísticas. Integridad: reglas de integridad, reglas de estado y de transición. Técnicas en SQL para la protección de datos. Unidad 6: Aspectos de la implementación de un sistema administrador de bases de datos Nivel interno de una base de datos: representación de tablas, índices, métodos de acceso, hashing, árbol B. Optimización: necesidad, tipos de optimizadores. Bases de datos distribuídas: ventajas, objetivos, problemas, replicación, sistemas cliente/servidor. Unidad 7: Otros modelos de datos Distintos modelos de datos, modelo en red, modelo jerárquico, modelo orientado a objetos. Enfoque mixto (object-relational). Metodología de enseñanza-aprendizaje La enseñanza es una combinación de estrategias como la técnica de resolución de problemas, técnicas de grupo: talleres grupales, seminarios, simposios, prácticas en laboratorio. Evaluación continua La evaluación se basará en la observación de las actitudes del alumno en cuanto a la participación en la clase, el trabajo dentro del grupo y el interés que manifieste en los temas desarrollados en la materia. Otro aspecto de la evaluación será la presentación de la resolución, dentro de los plazos establecidos, de los trabajos prácticos que indique la cátedra. Asimismo los alumnos deberán aprobar tres exámenes escritos: dos parciales y una instancia globalizadora, o bien sus respectivos recuperatorios. Requisitos para regularizar la asignatura. a) Cumplir con todos los requisitos establecidos por la Universidad y por la Facultad. b) Haber entregado en tiempo y forma y aprobado todos los trabajos prácticos solicitados por la cátedra con una nota promedio de cuatro puntos o más. c) Haber obtenido una evaluación conceptual del docente de cuatro puntos o más. d) Haber aprobado los tres exámenes escritos, o en su defecto el recuperatorio respectivo con una nota igual o superior a cuatro puntos. Requisitos para promocionar la asignatura en forma directa a) Cumplir con todos los requisitos de la Universidad y la Facultad para la promoción directa de asignaturas. b) Haber regularizado la materia de acuerdo a los requisitos de la cátedra. c) Haber entregado en tiempo y forma y aprobado todos los trabajos prácticos solicitados por la cátedra con una nota promedio de siete puntos o más. d) Haber aprobado la instancia globalizadora o su recuperatorio con una calificación de siete o superior. e) Haber aprobado los dos exámenes parciales, obteniendo una nota promedio de siete o superior. Página 2 de 6 Universidad Tecnológica Nacional - Facultad Regional C. del Uruguay Planificación de Cátedra Gestión de Datos 2012 Integración con otras materias Integración vertical Uno de los ejes principales de esta materia es el conocimiento y la aplicación de lenguajes especialmente diseñados para realizar consultas a bases de datos. Resulta por ello fundamental la aplicación de los conocimientos adquiridos en Algoritmos y estructuras de datos, Sintaxis y semántica de lenguajes y Paradigmas de programación. Asimismo, las estructuras fundamentales en las que se basa la organización interna de los sistemas de bases de datos (primordialmente árboles), se estudian en la materia Matemática Discreta. Otro eje fundamental de la materia es el diseño conceptual de bases de datos. Para abordar este tema, resulta imprescindible aplicar las técnicas adquiridas al cursar la materia Análisis de sistemas. Por otro lado, los temas referidos a la administración de bases de datos, que se ven en esta materia resultan de utilidad para la materia de cuarto año Administración de recursos. La materia en su totalidad brinda los fundamentos y conocimientos para la materia de cuarto año Gestión Avanzada de Datos. Integración horizontal El diseño del sistema de base de datos representa una actividad fundamental dentro del marco del diseño de un sistema de información. Por ello, esta materia aporta conceptos y herramientas de suma utilidad para la materia Diseño de sistemas. Cronograma de clases Semana 1 2y3 4y5 6a8 9 y 10 Temas Unidad 1: Introducción a los sistemas de bases de datos Concepto de Base de Datos. Propósito de los sistemas de bases de datos. Beneficios respecto de otras técnicas. Independencia de datos. Integridad. Arquitectura de un sistema de bases de datos: nivel externo, nivel conceptual, nivel interno. Unidad 2: Modelo conceptual de datos Propósito del modelado conceptual de datos. Técnicas: Diagrama Entidad/Relación, Entidades, Atributos y Relaciones. UML – Diagrama de clases. Unidad 3: Modelo Relacional Dominios. Relaciones. Atributos. Reglas de integridad. Claves. Obtención de un esquema relacional a partir de un diagrama Entidad/Relación. Dependencias funcionales. Formas normales. Normalización. Unidad 4: Operaciones en el modelo relacional Álgebra relacional. Operadores tradicionales. Otros operadores. Operadores de actualización. Comparaciones Relacionales. Cálculo relacional. Lenguaje comercial de consultas a bases de datos: SQL. Operaciones básicas. Operaciones de actualización. Unidad 5: Protección de datos Recuperación de información: transacciones, recuperación de transacciones, las propiedades "ACID". Concurrencia: problemas de concurrencia, bloqueo, abrazo mortal, seriabilidad, protocolos de bloqueo. Seguridad: control de accesos, encriptación de datos, control de accesos, protección de datos individuales en consultas estadísticas. Integridad: reglas de integridad, reglas de estado y de transición. Técnicas en SQL para la protección de datos. Página 3 de 6 Universidad Tecnológica Nacional - Facultad Regional C. del Uruguay Planificación de Cátedra Gestión de Datos 2012 11 a 12 Unidad 6: Aspectos de la implementación de un sistema administrador de bases de datos. Nivel interno de una base de datos: representación de tablas, índices, métodos de acceso, hashing, árbol B. Optimización: necesidad, tipos de optimizadores. Bases de datos distribuidas: ventajas, objetivos, problemas, replicación, sistemas cliente/servidor. Unidad 7: Otros Modelos de Datos 13 y 14 Concepto de modelo de datos. Distintos modelos de datos, modelo en red, modelo jerárquico, orientado a objetos y objeto relacional. 16 Instancia de integración. Semana Temas Fechas probables de examenes • • • • • Primer Parcial: lunes 23 de abril de 2012 Recuperatorio Primer Parcial lunes 7 de mayo de 2012 Segundo Parcial: lunes 21 de mayo de 2012 Recuperatorio Segundo Parcial: lunes 4 de junio de 2012 Globalizador: jueves 21 de junio de 2012 Bibliografía • • • • • • • Carlo Batini, Stefano Ceri y Shamkant B. Navathe, "Diseño conceptual de bases de datos, un enfoque de entidades-interrelaciones", Addison-Wesley/Díaz de Santos (1994) ISBN 0-20160120-6 Mary E. S. Loomis, "Object Databases, the essentials", Addison-Wesley (1995) ISBN 0-20156341-X Jeffrey D. Ullman y Jennifer Widom, "Introduccion a los Sistemas de Bases de Datos", Prentice Hall (1999) ISBN 970-17-0256-5 G. Booch, J. Rumbaugh, I. Jacobson, “El lenguaje unificado de modelado”, Addison Wesley, ISBN 9-78847829028-4 Hector García-Molina, Jeffrey D. Ullman, Jennifer Widom, “Database System Implementation”, Prentice Hall (2000), ISBN 0130402648 C. J. Date, "Introducción a los Sistemas de Bases de Datos" séptima edición, Prentice Hall (2001) ISBN 968-444-419-2 Ramez A. Elmasri, Shamkant B. Navathe, “Fundamentos de Sistemas de Bases de Datos”, Addison Wesley – Pearson (2003) ISBN 978-8478290512 Recursos Didácticos Se ha puesto sumo cuidado en que todo el software necesario para cursar esta cátedra pueda obtenerse y usarse en forma gratuita en el ámbito académico. De esta forma se evita que la Facultad por un lado, y los alumnos por otro deban realizar erogación alguna para la adquisición de licencias de software, o lo que es peor, recurrir al uso de copias ilegales. También se utilizan en algunas clases proyección de presentaciones, facilitando de esta manera la rápida visualización de ejemplos complejos y el alumno se enfoque en los conceptos o problemas presentados. Se utiliza con frecuencia el laboratorio donde se utilizan las computadoras en forma grupal para resolver guías de ejercicios. El software a utilizar será el siguiente. Free Pascal Página 4 de 6 Universidad Tecnológica Nacional - Facultad Regional C. del Uruguay Planificación de Cátedra Gestión de Datos 2012 URL Autor / Propietario Descripción Uso en la cátedra Costo Código fuente disponible Licencia Observaciones WinRDBI URL Autor / Propietario Descripción Uso en la cátedra Costo Código fuente disponible Licencia Observaciones Amzi! Prolog URL Autor / Propietario Descripción http://www.freepascal.org Bérczi Gábor, Pierre Muller y Peter Vreman Compilador de lenguaje Pascal. La herramienta educativa WinRDBI (Windows Relational DataBase Interpreter) es un componente integral de la enseñanza de bases de datos en la Universidad del Estado de Arizona, la misma proporciona un medio eficaz para la comprensión de los siguientes lenguajes para bases de datos relacionales: • Algebra Relacional • Cálculo relacional de dominios • Cálculo relacional de tuplas • SQL Realizar prácticas de acceso a archivos. Opcionalmente puede ser utilizado por los alumnos para programar aplicaciones que accedan a sistemas de bases de datos relacionales. Gratuito Si GNU Public Licence http://www.eas.asu.edu/~winrdbi/ Chien-Ho Ho, Ana Hun, Changguan Fan, y Sarah Simons, con Ariela Sterns, y otros. Universidad del Estado de Arizona La herramienta educativa WinRDBI (Windows Relational DataBase Interpreter) es un componente integral de la enseñanza de bases de datos en la Universidad del Estado de Arizona, la misma proporciona un medio eficaz para la comprensión de los siguientes lenguajes para bases de datos relacionales: • Algebra Relacional • Cálculo relacional de dominios • Cálculo relacional de tuplas • SQL Realizar prácticas de álgebra relacional, cálculo relacional y SQL Gratuito en el ámbito académico No Propietaria Libre uso académico http://www.amzi.com/ Amzi! inc. 5861 Greentree Road Lebanon, OH 45036 U.S.A. Amzi! Provee servicios basados en reglas para C, C++, Java, servidores web, Delphi, Visual Basic, PowerBuilder, Access, Excel, y muchas otras herramientas. La integración se realiza a través de la API "Logic Server", la cual Página 5 de 6 Universidad Tecnológica Nacional - Facultad Regional C. del Uruguay Planificación de Cátedra Gestión de Datos 2012 Uso en la cátedra Costo Código fuente disponible Licencia Observaciones J2SE SDK URL Autor / Propietario Descripción Uso en la cátedra Costo Código fuente disponible Licencia Observaciones PostgreSQL URL Autor / Propietario Descripción Uso en la cátedra Costo Código fuente disponible Licencia Observaciones permite acceder a una base de reglas lógicas con la misma facilidad con la que hoy en día se accede a una base de datos. Esto hace posible la utilización de programación basada en reglas en cualquier lugar que sea necesario. Este software es necesario ya que es utilizado como Back-end por la herramienta WinRDBI Gratuito en el ámbito académico. No Propietaria Libre uso y distribución en aplicaciones no comerciales, no gubernamentales. http://java.sun.com/j2se/ Sun Microsystems Inc. 901 San Antonio Road Palo Alto, CA 94303 USA Herramientas de programación para la plataforma Java Este software es necesario ya que es utilizado como front-end por la herramienta WinRDBI Con este software también es posible demostrar cómo se realiza el acceso a bases de datos a través de un lenguaje de programación determinado, en este caso, Java Gratuito Parcialmente Propietaria http://www.postgresql.org/ Marc G. Fournier y otros PostgreSQL es una sistema gestor de bases de datos relacional. El mismo soporta prácticamente todas las constucciones de SQL, incluyendo subselects, transacciones, reglas de integridad, además de tipos y funciones definidos por el usuario. Prácticas de programación con SQL. Transacciones. Seguridad. Bases de datos espaciales/GIS. Gratuito Si BSD J2SE SDK Todos los paquetes de software mencionados con anterioridad poseen versiones tanto para Linux como para Windows, con lo cual cada alumno podrá trabajar en cualquiera de estos sistemas operativos. Página 6 de 6