Competencias y objetivos
Contexto de la asignatura para el curso 2024-25
Asignatura de carácter básico y común, su objetivo es presentar conceptos y técnicas concretos de almacenamiento de datos que sean útiles para la realización del proyecto del máster. En particular, se centra en la programación en el servidor de base de datos y la gestión de grandes volúmenes de datos y con una gran cantidad de conexiones concurrentes.
La programación para bases de datos en el propio servidor permite aligerar las tareas del programa cliente al tiempo que refuerza los mecanismos de integridad y seguridad del motor de base de datos. Por otro lado, es básica para para mejorar la eficiencia y rendimiento de las consultas SQL.
Los problemas típicos de trabajar con bases de datos se agravan cuando son muchos los datos con los que trabajar o la cantidad de usuarios que acceden al mismo tiempo es muy alta. Todo motor de base de datos debe proporcionar herramientas, las que se van a ver en este curso, para gestionar eficazmente esas eventualidades.
Competencias de la asignatura (verificadas por ANECA en grados y másteres oficiales) para el curso 2024-25
Competencias Generales del Título (CG)
- B10 : Capacidad para identificar, seleccionar e implementar los distintas capas y componentes que configuran la arquitectura software de las aplicaciones Web y las aplicaciones distribuidas.
- B12 : Capacidad de conocer y aplicar el lenguaje de marcado XML y lenguajes de transformación relacionados con las aplicaciones Web, en los componentes y servicios software.
- B6 : Capacidad para diseñar y programar en las distintas plataformas y lenguajes de programación con los que implementar aplicaciones Web.
- B7 : Capacidad para diseñar y programar en las distintas plataformas y lenguajes de programación con los que implementar aplicaciones distribuidos.
- B8 : Capacidad para diseñar y programar en las distintas plataformas y lenguajes de programación con los que implementar dispositivos móviles.
- B9 : Capacidad para diseñar, consultar e integrar sistemas de base de datos buscando la optimización en su rendimiento.
Habilidades/ Destrezas
- A1 : Capacidad de análisis y síntesis.
- A10 : Habilidad de adaptación al ambiente cambiante propio de la disciplina, sabiendo aplicar los conocimientos adquiridos y resolver problemas en entornos nuevos o poco conocidos dentro de contextos más amplios (o multidisciplinares) relacionados con su área de estudio.
- A11 : Capacidad de creatividad.
- A12 : Motivación por la calidad.
- A13 : Capacidad para mostrar información de forma clara atendiendo a un amplio conjunto de discapacidades técnicas, físicas y psíquicas.
- A5 : Capacidad de trabajar en equipo con iniciativa y espíritu emprendedor.
- A7 : Capacidad de razonamiento y extracción de conclusiones.
- A8 : Compromiso ético y respeto por la propiedad intelectual.
- A9 : Habilidad de aprendizaje que les permitan continuar estudiando de un modo que habrá de ser en gran medida auto-dirigido o autónomo.
Competencias Específicas Obligatorias:>>De Tecnologías de Desarrollo Software
- C2.1 : Capacidad para aprender a utilizar una plataforma rica de desarrollo y a desarrollar mediante los lenguajes de programación de la plataforma .NET y Java.
- C2.10 : Capacidad para aprender y desarrollar arquitecturas software distribuidas basadas en sistemas orientados a servicios mediante la plataformas .NET y Java.
- C2.11 : Capacidad para desarrollar aplicaciones pesadas para un dispositivo móvil que requieren de una arquitectura orientada a servicios mediante la plataforma .NET y Java.
- C2.12 : Capacidad para desarrollar interfaces de usuario ligeras en las aplicaciones para el dispositivo móvil.
- C2.13 : Capacidad para aprender a definir, validar y utilizar el lenguaje de marcado XML en sus diferentes los diferentes escenarios de una aplicación.
- C2.14 : Explicar los posibles usos de las transformaciones basadas en XSLT. Describir la forma de aplicar XSLT y las construcciones más básicas de este lenguaje.
- C2.15 : Explicar los APIs básicos para analizar un documento XML. Describir las diferencias básicas entre los diferentes enfoques.
- C2.2 : Capacidad para desarrollar aplicaciones de escritorio con acceso a una base de datos relacional mediante la plataforma .NET y Java.
- C2.3 : Capacidad para conocer y utilizar las técnicas de desarrollo para aplicaciones Web, mediantes las herramientas de programación de la plataforma .NET y Java.
- C2.4 : Capacidad para desarrollar aplicaciones Web mediante peticiones síncronas y asíncronas y con acceso a una base de datos relacionar en las plataformas .NET y Java.
- C2.5 : Capacidad para aprender y aplicar diferentes soluciones de gestión de bases de datos para el acceso eficiente y para asegurar el acceso en entornos de alta concurrencia.
- C2.6 : Conocer diferentes sistemas de gestión de bases de datos apropiados para el manejo de grandes volúmenes de información y valorar su integración con las plataformas de desarrollo software.
- C2.7 : Conocer y saber aplicar las distintas opciones de indexación para mejorar el rendimiento de la base de datos relacional.
- C2.8 : Capacidad para aprender y desarrollar arquitecturas de computación distribuidas basadas en llamadas a procedimientos remotos con la plataforma .NET y Java.
- C2.9 : Capacidad para aprender y desarrollar arquitecturas de computación distribuida basadas en sistemas orientados a mensajes con la plataforma .NET y Java.
Resultados de aprendizaje (Objetivos formativos)
- Utilizar una plataforma de cliente rico para el desarrollo de aplicaciones.
- Utilizar herramientas que mejoren el desarrollo colaborativo como control de versiones, gestión documental, etc.
- Desarrollar el código necesario para validar los datos de entrada mediante el uso de expresiones regulares y controles de validación, y controlar posibles excepciones.
- Desarrollar aplicaciones que accedan a bases de datos mediante herramientas de mapeo objeto relacional.
- Desarrollar programas que utilicen documentos el lenguaje de marcas extensible (XML) como fuente o repositorio de datos.
- Estimular el conocimiento y la utilización de las nuevas tecnologías emergentes en el marco de las aplicaciones distribuidas.
- Aprovechar las ventajas funcionales aportadas por este tipo de tecnologías para el desarrollo de aplicaciones distribuidas.
- Perfeccionar la metodología de desarrollo de aplicaciones distribuidas.
- Estimular el conocimiento y la utilización de nuevas tecnologías emergentes en el marco de las aplicaciones Web.
- Desarrollar una aplicación Web siguiendo el proceso adecuado y con la utilización de nuevas tecnologías.
- Perfeccionar la metodología de desarrollo de las aplicaciones Web.
- Determinar la tecnología más adecuada para implementar una aplicación para dispositivos móviles.
- Diseñar interfaces de usuario que se adapten a las características de los dispositivos, optimizando su usabilidad.
- Desarrollar aplicaciones para dispositivos móviles que se comuniquen con aplicaciones Web y almacenen datos locales.
- Mantener réplicas locales de datos remotos, permitiendo a las aplicaciones trabajar en modo “offline”, y sincronizar ambas copias para mantener la consistencia.
- Utilizar los emuladores para el desarrollo de aplicaciones para dispositivos móviles.
- Especificar correctamente un nuevo lenguaje de marcado utilizando XML, mediante una gramática, permitiendo posteriormente su validación.
- Escribir analizadores mediante las interfaces de programación estándar de XML con Java y NET.
- Decidir dónde y cómo es apropiado el uso de XML en un escenario de aplicación dado, evaluando las posibles alternativas.
- Evaluar la indización de base de datos óptima para cada sistema software.
- Evaluar las consultas a base de datos y los procesos involucrados en función de su óptimo rendimiento.
- Integrar estándares de representación en la gestión de datos.
- Diferenciar la gestión de los datos de las plataformas que hacen uso de ellos.
Objetivos específicos indicados por el profesorado para el curso 2024-25
- Conocer la problemática de la gestión y manipulación de grandes volúmenes de datos
- Saber programar en un servidor de base datos
- Saber diseñar transacciones
- Poder decidir entre diferentes modelos de datos según las necesidades del sistema de información
- Saber integrar y utilizar bases de datos en aplicaciones cliente
- Saber abstraer esquemas de base de datos y servidores en aplicaciones cliente
Datos generales
Código:
38210
Profesor/a responsable:
Suarez Cueto, Armando
Crdts. ECTS:
4,00
Créditos teóricos:
0,80
Créditos prácticos:
0,80
Carga no presencial:
2,40
Departamentos con docencia
-
Dep.:
LENGUAJES Y SISTEMAS INFORMATICOS
Área: LENGUAJES Y SISTEMAS INFORMATICOS
Créditos teóricos: 0,8
Créditos prácticos: 0,8
Este dep. es responsable de la asignatura.
Este dep. es responsable del acta.
Estudios en los que se imparte
-
MÁSTER UNIVERSITARIO EN DESARROLLO DE APLICACIONES Y SERVICIOS WEB
Tipo de asignatura: OBLIGATORIA (Curso: 1)