Información general


Tipo de asignatura: obligatoria

Coordinador:

trimestre:2

Créditos: 4

Profesorado: Alfonso Palacios González

Descripción


El objetivo general de la asignatura es la profundización en el conocimiento de las bases de datos y los sistemas gestores de bases de datos (SGBD. El curso hace un recorrido por todas las etapas del diseño de bases de datos, -conceptual, lógico, físico, externo-, y estudia las características avanzadas de SQL.  

Esta asignatura dispone de recursos metodológicos y digitales para hacer posible su continuidad en modalidad no presencial en el caso de ser necesario por motivos relacionados con la Covidien-19. De esta forma se asegura la consecución de los mismos conocimientos y competencias que se especifican en este plan docente.

Resultados de aprendizaje


A nivel general, esta asignatura contribuye a siguientes resultados de aprendizaje especificados para la materia de Ingeniería del software a la que pertenece:

  • (1) Utilizar de forma apropiada teorías, procedimientos y herramientas en el desarrollo profesional de la ingeniería informática en todos sus ámbitos (especificación, diseño, implementación, despliegue -implantació- y evaluación de productos) de forma que se demuestre la comprensión de los compromisos adoptados en las decisiones de diseño.
  • (2) Tomar iniciativas que generen oportunidades, nuevos objetos o soluciones nuevas, con una visión de implementación de proceso y de mercado, y que implique a los otros en proyectos a desarrollar (capacidad de actuar de manera autónoma).
  • (3) Especificar, diseñar, implementar, gestionar y mantener sistemas y servicios software complejos y / o críticos.
  • (4) Definir y gestionar los requisitos de un sistema software.
  • (5) Comprender y utilizar eficazmente manuales, especificaciones de productos y cualquier otra información de carácter técnico escrita en inglés.

A un nivel más concreto, al finalizar la asignatura el estudiante debe ser capaz de:

  • RA1: diseñar el esquema conceptual de una base de datos a partir de los requisitos del sistema. (Colabora en 1,2,3,4 y 5)
  • RA2: Para transformar el esquema conceptual en un esquema lógico y obtener un diseño lógico de la base de datos. (Colabora a 1,2,3 y 5)
  • RA3: Forma consultas avanzadas en SQL. (Colabora a 1,2,3 y 5)
  • RA4: Usar de forma avanzada los lenguajes DDL y DML de SQL. (Colabora a 1,3 y 5)
  • RA5: generar una base de datos con DDL a partir del diseño lógico. (Colabora en 1,2,3,4 y 5)

 

Metodología de trabajo


metodología docente

Las horas de aprendizaje dirigido comprenden:

Clases en gran grupo en las que:

 > El profesorado o los profesionales invitados introducen los contenidos de la asignatura en clases magistrales, conferencias, presentaciones y vídeos.

 > Se realizan pequeñas actividades docentes como resolución de problemas i simulaciones i estudios de casos que persiguen que el estudiante sea un protagonista activo en la adquisición de sus conocimientos.

Prácticas en equipos pequeños de dos personas que tienen una parte que se realiza en el laboratorio conducidas o supervisadas por el profesorado y una parte en la que el equipo debe funcionar autónomo.

Dentro de las horas de aprendizaje autónomo se consideran las horas para trabajar individualmente sobre las plataformas de e-learning de la asignatura, preparar las clases teóricas, las horas para estudiar y consolidar los conocimientos adquiridos, las horas para preparar el trabajo de las prácticas, las horas para realizar el proyecto de curso y, por último, las horas que el estudiante puede dedicar a aumentar y complementar sus conocimientos sobre la materia.

Las herramientas que se utilizarán en el curso 2020/21 son: Oracle Academy, Oracle Database, Oracle APEX, Fecha Modeler y SQL Developer. 

Este curso, debido a la situación generada por la Covidien, algunas de las sesiones de grupo grande pueden hacerse -si la situación sanitaria lo requiere- en formato híbrido: presencial y en línea (vía en streaming). Esto permitirá que los estudiantes puedan ir rotativamente en las clases presenciales, respetando el máximo de estudiantes por aula que imponen las medidas de distanciamiento. Cuando no les toque sesión presencial podrán seguir la clase en línea desde casa.

En cuanto a las sesiones de prácticas en espacios más reducidos (como laboratorios, estudios o plató), en su caso se trabajará simultáneamente en varios espacios para garantizar que se cumplen las condiciones establecidas por los protocolos de seguridad.

contenidos


Contenido 1: El proceso de diseño de bases de datos

dedicación:

  • actividades en grupo grande: 10 horas
  • seminarios: 6 horas
  • actividades en grupo pequeño: 4 horas
  • aprendizaje autónomo: 30 horas

Descripción: 

Introducción al proceso de diseño e implementación de una base de datos desde la captura de requerimientos a la generación de la base de datos, pasando por las etapas de diseño conceptual, diseño lógico y diseño físico.

Se usa herramientas y técnicas de modelado conceptual de datos y de normalización para la etapa de diseño conceptual y el modelo relacional de datos para los diseños lógico y físico. 

temario:

1.1 Introducción al diseño de base de datos

1.2 Diseño conceptual: los requisitos en el esquema conceptual de datos

1.3 Diseño lógico: del esquema conceptual al esquema lógico

1.4 Diseño físico: generación de la base de datos

1.5 Normalización

 

Contenido 2: Desarrollo y uso de bases de datos con SQL avanzado

dedicación:

  • actividades en grupo grande: 10 horas
  • seminarios: 4 horas
  • actividades en grupo pequeño: 6 horas
  • aprendizaje autónomo: 30 horas

Descripción: Profundización en el conocimiento de SQL para implementar el diseño lógico y físico de una base de datos relacional

temario: 

2.1 Recuperación de datos con SQL avanzado: funciones, operadores, combinaciones de tablas, operaciones de conjuntos y ordenación de resultados

2.2 Gestión del tiempo en SQL avanzado

2.3 Recuperación avanzada de datos agrupados

2.4 subconsultas

2.5 Recuperaciones jerárquicas

2.6 Sentencias DML para grandes conjuntos de datos

2.7 Sentencias DDL para la gestión de objetos de esquemas de bases de datos

2.8 Control de acceso

2.9 Vistas, vistas materializadas, sinónimos

2.10 Creación de métodos de acceso: índices, clusters

 

 

 

 

Actividades de aprendizaje


Título de la Actividad 1:

Resolución de problemas de bases de datos con SQL avanzado
(MECES 2 descriptores a) b) c) d) yf))

Descripción: Tres sesiones de prácticas (grupo pequeño), la 1, 4 y 5 y los seminarios 4 y 5 donde se trabaja el lenguaje SQL de Oracle
Material: Oracle12c, SQL Developer, Oracle APEX, Oracle Academy
entregable:

Evaluación individual, ejercicios y cuestiones resueltas individualmente

Resultados de aprendizaje RA3, RA4 y RA5
Competencias a las que colabora

B2 (aplicar conocimientos SQL resolver problemas reales de uso de datos)
B4 (redactar comentarios técnicos al código del script de SQL)
B5 (descubrir aplicaciones avanzadas de SQL que puedan ampliar la vida profesional o complementar su formación con cursos especializados)
T1 (leer documentación técnica en inglés y usar comandos y sentencias SQL con palabras clave en inglés)
T2 (actividad realizada en equipo de dos)
EFB4 (Programación con SQL para consultar, actualizar y definir datos)
CIN1 (Desarrollar bases de datos que sean fiables, seguras y de calidad)
CIN5 (Administración y mantenimiento de bases de datos)
CIN8_ (Capacidad para construir y mantener bases de datos de forma robusta, segura y eficiente)
CIN12_ (Conocimiento y aplicación de las características, funcionalidades y estructura de las bases de datos)
CIN13_ (Conocimiento y aplicación de las herramientas necesarias para el almacenamiento, procesamiento y acceso a los sistemas de información)
EIS1_ (Desarrollar, mantener y evaluar bases de datos que satisfagan todos los requisitos del usuario y se comporten de forma fiable y eficiente)
EIS4_ (Identificar y analizar problemas y diseñar, desarrollar, implementar, verificar y documentar soluciones software en el campo de las bases de datos)
ESI3_ (Participar activamente en la especificación, diseño, implementación y mantenimiento de las bases de datos que necesitan los sistemas de información y comunicación)

evaluación: 15% de la nota de la asignatura. 5% por cada sesión.

 

Título de la Actividad 2:

Proyecto de diseño y generación de una base de datos a partir de un análisis de requerimientos
(MECES 2 descriptores a) b) c) d) e) yf))

Descripción:

Diseño de una base de datos paso a paso en las sesiones de prácticas 2 y 3 y como trabajo dirigido:

  • Análisis de requerimientos
  • diseño conceptual
  • diseño lógico
  • Generación del script de creación de la base de datos
  • Creación de la base de datos
Material de apoyo: Oracle Academy, herramienta de modelización y generación de bases de datos
entregables:
  • esquema conceptual
  • esquema lógico
  • Script de la base de datos
  • Base de datos
  • Evaluación individual, ejercicios y cuestiones resueltas individualmente
Resultados de aprendizaje  RA1, RA2 y RA5
Competencias a las que colabora

B2 (aplicar conocimientos de diseño de bases de datos a resolver problemas reales de uso de datos)
B4 (redactar y geneerar la documentación del proyecto)
B5 (descubrir técnicas avanzadas de diseño y generación de bases de datos que puedan ampliar la vida profesional o complementar su formación con cursos especializados)
T1 (leer documentación técnica en inglés y usar comandos y sentencias SQL con palabras clave en inglés)
T2 (actividad realizada en equipo de dos)
CIN1 (Diseñar y desarrollar bases de datos que sean fiables, seguras y de calidad)
CIN2 (Planificar y desarrollar un proyecto de diseño y desarrollo de base de datos)
CIN3 (Comprender la importancia del modelado conceptual de datos como herramienta de comunicación y discusión en el diseño de base de datos)
CIN4 (Elaborar diseños, esquemas y modelos conceptuales de datos como forma de definir requerimientos y los pliegos de condiciones técnicas en el desarrollo de bases de datos)
CIN8_ (Capacidad para analizar, diseñar, construir y mantener bases de datos de forma robusta, segura y eficiente)
CIN12_ (Conocimiento y aplicación de las características, funcionalidades y estructura de las bases de datos)
CIN13_ (Conocimiento y aplicación de las herramientas necesarias para el almacenamiento, procesamiento y acceso a los sistemas de información)
EIS1_ (Desarrollar, mantener y evaluar bases de datos que satisfagan todos los requisitos del usuario y se comporten de forma fiable y eficiente)
EIS2_ (Valorar las necesidades del cliente y especificar los requisitos de la base de datos para satisfacer estas necesidades)
EIS4_ (Identificar y analizar problemas y diseñar, desarrollar, implementar, verificar y documentar soluciones software en el campo de las bases de datos)
ESI3_ (Participar activamente en la especificación, diseño, implementación y mantenimiento de las bases de datos que necesitan los sistemas de información y comunicación)

evaluación 15% de la nota de la asignatura

 

Título de la Actividad 3:

Examen de Diseño de bases de datos

(MECES 2 descriptores a) b) c) d) ye))

Descripción: Prueba individual para evaluar los conocimientos adquiridos sobre diseño de bases de datos
entregables:
  • Ejercicio de modelado conceptual de datos
  • Preguntas y ejercicios de diseño de base de datos
Resultados de aprendizaje RA1, RA2 y RA5
Competencias a las que colabora

B2 (aplicar conocimientos de diseño de bases de datos a resolver problemas reales de uso de datos)
CIN1 (Diseñar y desarrollar bases de datos que sean fiables, seguras y de calidad)
CIN2 (Planificar y desarrollar un proyecto de diseño y desarrollo de base de datos)
CIN3 (Comprender la importancia del modelado conceptual de datos como herramienta de comunicación y discusión en el diseño de base de datos)
CIN4 (Elaborar diseños, esquemas y modelos conceptuales de datos como forma de definir requerimientos y los pliegos de condiciones técnicas en el desarrollo de bases de datos)
CIN8_ (Capacidad para analizar, diseñar, construir y mantener bases de datos de forma robusta, segura y eficiente)
CIN12_ (Conocimiento y aplicación de las características, funcionalidades y estructura de las bases de datos)
CIN13_ (Conocimiento y aplicación de las herramientas necesarias para el almacenamiento, procesamiento y acceso a los sistemas de información)
EIS1_ (Desarrollar, mantener y evaluar bases de datos que satisfagan todos los requisitos del usuario y se comporten de forma fiable y eficiente)
EIS2_ (Valorar las necesidades del cliente y especificar los requisitos de la base de datos para satisfacer estas necesidades)
EIS4_ (Identificar y analizar problemas y diseñar, desarrollar, implementar, verificar y documentar soluciones software en el campo de las bases de datos)
ESI3_ (Participar activamente en la especificación, diseño, implementación y mantenimiento de las bases de datos que necesitan los sistemas de información y comunicación)

evaluación: 35% de la nota de la asignatura

 

Título de la Actividad 4:

Examen de SQL avanzado
(MECES 2 descriptores a) b) c) yd))

Descripción: Prueba de evaluación individual para medir el nivel de experiencia en SQL
entregables:
  • Resolución de problemas de consulta a bases de datos con SQL
  • Resolución de necesidades de mantenimiento de bases de datos con DML de SQL
  • Resolución de necesidades de definición de bases de datos con DDL de SQL
  • Resolución de definiciones de acceso y de control de transacciones
Resultados de aprendizaje RA3, RA4 y RA5
Competencias a las que colabora

B2 (aplicar conocimientos de diseño de bases de datos a resolver problemas reales de uso de datos)
CIN1 (Diseñar y desarrollar bases de datos que sean fiables, seguras y de calidad)
CIN4 (Elaborar diseños, esquemas y modelos conceptuales de datos como forma de definir requerimientos y los pliegos de condiciones técnicas en el desarrollo de bases de datos)
CIN8_ (Capacidad para analizar, diseñar, construir y mantener bases de datos de forma robusta, segura y eficiente)
CIN12_ (Conocimiento y aplicación de las características, funcionalidades y estructura de las bases de datos)
CIN13_ (Conocimiento y aplicación de las herramientas necesarias para el almacenamiento, procesamiento y acceso a los sistemas de información)
EIS1_ (Desarrollar, mantener y evaluar bases de datos que satisfagan todos los requisitos del usuario y se comporten de forma fiable y eficiente)
EIS2_ (Valorar las necesidades del cliente y especificar los requisitos de la base de datos para satisfacer estas necesidades)
EIS4_ (Identificar y analizar problemas y diseñar, desarrollar, implementar, verificar y documentar soluciones software en el campo de las bases de datos)
ESI3_ (Participar activamente en la especificación, diseño, implementación y mantenimiento de las bases de datos que necesitan los sistemas de información y comunicación)

evaluación: 35% de la nota final de la asignatura

Sistema de evaluación


Sistema de calificación (evaluación)

Las actividades 1 y 2 se pueden trabajar en equis de dos, pero la evaluación de todas las actividades siempre es individual.

 

Actividad 1, Resolución de problemas de bases de datos con SQL avanzado: 15% (sesiones de prácticas 1, 3 y 5 y seminarios 4 y 5) NO ES RECUPERABLE

Actividad 2, Proyecto de diseño y generación de una base de datos a partir de un análisis de requerimientos: 15% (sesiones de prácticas 2 y 3 y seminarios 1,2 y 3) NO ES RECUPERABLE

Actividad 3, Examen de Diseño de Bases de Datos (Contenido 1): 35% 

Actividad 4, Examen de SQL (Contenido 2): 35% 

 

Todas las notas son obligatorias. Hay una nota superior a 3,5 en cada actividad para superar la asignatura y poder hacer la media.

 

Siguiendo la normativa general, la copia en las actividades de evaluación trae como consecuencia la evaluación con una nota SUSPENSO (0) de toda la asignatura.

 

Normas de realización de las actividades

 

En todas las actividades es obligada la asistencia para ser evaluadas. (Exámenes, seminarios y sesiones de prácticas)

Las actividades son obligatorias. Las actividades no realizadas -oa las que no se ha asistido- son evaluadas como 0.

Bibliografía


básico

Silberschatz, Abraham; Korth, Henry; Sudarshan, S. "Fundamentos de Bases de Datos". Sexta edición. Madrid-McGraw-Hill-Education, 2014. ISBN 978-84-481-9033-0.

Elmasri, R .; Navathe, SB "Fundamentals of Database Systems, Global Edition". Seventh Edition. Harlow, Essex: Pearson, 2017. ISBN 978-1-292-09761-9.

Complementario

Date, CJ "Introducción a los sistemas de bases de datos". Séptima edición. México-Pearson Educación, 2001. ISBN 9684444192

Price, Jason. "Oracle Database 12c SQL". Primera edición. Oracle Press-McGraw-Hill Education, 2013. ISBN-13: 9780071799355. ISBN-10: 0071799354.