Salir

Bases de datos y programación orientada a objetos

Última modificación
Mar , 25/06/2024 - 11:14

Descripción y contextualización de la asignatura

En la actualidad el progreso del conocimiento y el desarrollo de la tecnología se soportan en gran medida en la explotación de grandes cantidades de datos empíricos recogidos de todo tipo de mediciones. Una selección adecuada y un diseño estructurado de los datos y el uso de gestores que faciliten el almacenamiento, actualización, ordenación y búsqueda de esos datos es fundamental para su posterior análisis mediante técnicas matemáticas. La teoría de bases de datos relacionales ofrece una metodología para crear estructuras operativas. Por otra parte, la programación orientada a objetos ofrece las herramientas necesarias para el acceso, el  procesamiento y la gestión del contenido de una base de datos. Estos lenguajes provistos de librerías para el cálculo matemático y la visualización de resultados pueden ser complementados con la programación de aplicaciones web para facilitar la operatividad al usuario.

Competencias

Competencias específicas de la asignatura:

9951-Instalar y administrar un gestor de bases de datos.

9952-Especificar, diseñar y crear una base de datos que responda a un problema de información real.

9953-Construir aplicaciones de acceso a datos.

9954-Definir la programación orientada a objetos.

9955-Definir los conceptos de la Ingeniería de Programación asociados a la programación orientada a objetos como: objetos, clases, mensajes, métodos, relaciones, herencia, polimorfismo.

9956-Programar en Java.

9957-Desarrollar aplicaciones de escritorio y web

Competencias básicas y generales: CB6, CB7, CB9, CB10, CG1857

Competencias transversales: CT1861, CT1862

Competencias específicas de la titulación: CE1865, CE1860, CE1841

Resultados de aprendizaje de la asignatura

  • Entender los conceptos de una base de datos relacional. Ser capaz de identificar los elementos fundamentales que describen una realidad cuantificable y plasmarlos en un esquema de base de datos que pueda ser escalable.
  • Ser capaz de definir y manipular las restricciones de integridad y de usuario.
  • Ser capaz de trasladar los elementos del esquema de bases de datos a un sistema de tablas y de reconstruir la información mediante operaciones de algebra de conjuntos.
  • Comprender el concepto de dependencia funcional y aplicar las tecnicas de depuración de tablas por normalización.
  • Entender los conceptos de objeto, clase y método en el contexto la programación orientada a objetos y las propiedades de la herencia, el polimorfismo y el encapsulamiento.
  • Ser capaz de utilizar librerías de clases enfocadas a la conectividad con bases de datos y al procesamiento de los datos mediante técnicas matemáticas.
  • Comprender la gestión de errores y excepciones y las clases de entrada/salida.
  • Programar en un gestor informático de bases de datos y en un lenguaje de programación orientada a objetos.
  • Asimilar la estructura de capas de una aplicación web.

Objetivos:

En esta asignatura se aborda un problema muy presente y actual en el ámbito de la investigación y el desarrollo y en el de las actividades industriales y comerciales: las grandes cantidades de datos que se recogen. Éstas demandan de métodos eficientes de almacenamiento, acceso y procesamiento para su posterior análisis mediante técnicas matemáticas. En primer lugar se proponen diseños de estructuras de datos que permiten guardar y recuperar la información de manera depurada, completa y rápida mediante herramientas de gestión de bases de datos. Posteriormente se muestran las posibilidades de filtrado, procesamiento y representación de datos de manera funcional. Para ello se plantean aplicaciones informáticas basadas en lenguajes de programación orientada a objetos que ofrezcan el acceso remoto y restringido a los datos por parte de los usuarios.

Contenidos:

  • Bases de datos:

    • Introducción a las bases de datos y sus aplicaciones prácticas.

    • El modelo relacional y las ventajas con respecto a los ficheros de datos.

    • Entidades y relaciones.

    • Claves primarias y restricciones de integridad.

    • Diseño conceptual y lógico de bases de datos. Diagramas.

    • Tipos de datos, creación y depuración de tablas.

    • El estándar SQL. Manipulación y consultas de datos.

    • Transacciones.  

  • Programación orientada a objetos:

    • Elementos básicos del lenguaje: tipos de datos, identificadores y literales; operadores; sentencias

    • Elementos relacionados con la orientación a objeto: objetos y clases; estructura de la definición de una clase; herencia; encapsulamiento (ámbitos de accesibilidad); el bloque static y los atributos static y final; instalación, inicialización y eliminación de objetos; clases y métodos abstractos; interfaces; polimorfismo; enumeraciones; clases dentro de clases y métodos; clases anónimas; arrays

    • Mecanismo de tratamiento de excepciones y errores: control de excepciones; generación de excepciones; definición de nuevas excepciones; aserciones

    • Biblioteca de clases: los paquetes java.lang y java.util, genéricos y colecciones; clases de entradas y salidas

    • Capas de aplicación y bases de datos: el navegador como capa de cliente (HTML, javascript) y la capa de presentación (JSPs); acceso a bases de datos

Metodología:

El contenido teórico se expondrá en clases magistrales siguiendo referencias básicas que figuran en la Bibliografía y el material de uso obligatorio. Estas clases magistrales se complementarán con clases de problemas (prácticas de aula) en los que se propondrá a los alumnos resolver cuestiones en las que se aplicarán los conocimientos adquiridos en las clases teóricas. En los seminarios se desarrollaran cuestiones y ejemplos representativos del contenido de la asignatura, que generalmente habrán sido facilitados con anterioridad a los alumnos para trabajarlos y motiven la posterior reflexión y discusión en la sesión dedicada a ello. Además, se realizarán prácticas de ordenador orientadas a la consecución de las competencias de la asignatura.

Se propondrán a los estudiantes trabajos individuales sobre teoría y problemas, para cuya realización dispondrán del apoyo del profesor en seminarios periódicos.

Parte importante del trabajo del alumno es de carácter personal. Los profesores orientarán en todo momento ese trabajo y estimularán que se haga con regularidad y dedicación. Se animará igualmente a que utilicen las tutorías personales donde pueden aclarar cualquier duda o dificultad que se les presente en las asignaturas.

Sistemas de evaluación

Se consideran los siguientes tipos de evaluacion:

  • SISTEMA DE EVALUACIÓN CONTINUA
  • SISTEMA DE EVALUACIÓN FINAL

Herramientas y porcentajes de calificación

SISTEMA DE EVALUACIÓN CONTINUA: trabajos individuales 100%

SISTEMA DE EVALUACIÓN FINAL: examen escrito o trabajos individuales 100%

Convocatoria ordinaria: orientaciones y renuncia

CRITERIOS DE LA EVALUACIÓN CONTINUA:

Realización de un trabajo individual consistente en una serie de ejercicios del apartado de bases de datos y otra del apartado de programación orientada a objetos: 50%

Examen individual de programación: 50%

Para aprobar la asignatura será necesario alcanzar una nota de 5 sobre 10 en el examen individual.

CRITERIOS DE LA EVALUACIÓN FINAL:

Los estudiantes que lo soliciten, podrán someterse a una evaluación final, que podrá consistir en una prueba única, o en un conjunto de pruebas y trabajos.

Se podrá establecer de manera excepcional la asistencia a determinadas sesiones presenciales, y la superación, en su caso, de las pruebas que en ellas se establezcan.

Los estudiantes deberán solicitar la evaluación diferenciada mediante escrito razonado dirigido al Coordinador del Máster, desde el momento de la matrícula hasta transcurridos, como máximo, cinco días desde el inicio del curso. La solicitud se acompañará de todos los documentos que acrediten la imposibilidad de seguir con normalidad el desarrollo del curso. La Comisión Académica del Máster, resolverá en el plazo máximo de veinte días.

RENUNCIA:

El alumnado que haya realizado las actividades a lo largo del curso, pero no se presente a la convocatoria ordinaria, será calificado como No presentado/a.

Convocatoria extraordinaria: orientaciones

Los criterios de evaluación serán los mismos que en la convocatoria ordinaria. La evaluación de las actividades realizadas a lo largo del curso (prácticas de ordenador, ejercicios, seminarios) será válida para las dos convocatorias del curso. En consecuencia, el alumnado que haya superado estas actividades a lo largo del curso, en la convocatoria extraordinaria solo tendrá que presentarse al trabajo individual. En el caso del alumnado que no haya superado la evaluación de dichas actividades o haya elegido la modalidad de evaluación final, en la convocatoria extraordinaria deberá realizar, también, una prueba complementaria diseñada para la evaluación de las actividades realizadas a lo largo del curso. Dicha prueba puede consistir en una exposición oral, una demostración ante un ordenador o una descripción escrita de los conocimientos prácticos abordados en las actividades planteadas a lo largo del curso.

Materiales de uso obligatorio

Apuntes y prácticas de la asignatura "Bases de Datos y Programación Orientada a Objetos " publicados en la plataforma virtual de apoyo a la docencia de la Universidad

Bibliografía de profundización

  • R. Elmasri, S. Navathe. Fundamentos de Sistemas de Bases de Datos. Addison-Wesley, 2002.

  • A. Silberchatz, H. F. Korth. Fundamentos de bases de datos. Mc. Graw Hill, 2011.

  • U. Widom. Introducción a los Sistemas de Bases de Datos. Prentice Hall, 1999.

Revistas

Direcciones de internet de interés

Profesores del curso 2024-2025:

German Bordel García (german.bordel  at  ehu.es)
Carlos Gorria Corres (carlos.gorria  at  ehu.es) (Coordinador)