Guía docente de Sistemas Software Basados en Web (M50/56/3/16)
Máster
Módulo
Rama
Centro en el que se imparte la docencia
Centro Responsable del título
Semestre
Créditos
Tipo
Tipo de enseñanza
Profesorado
- José María Guirao Miras
Tutorías
José María Guirao Miras
Email- Tutorías 1º semestre
- Lunes 9:00 a 11:00 (Etsiit 3ª Planta Despacho 28)
- Miercoles 9:00 a 11:00 (Etsiit 3ª Planta Despacho 28)
- Tutorías 2º semestre
- Lunes 9:00 a 11:00 (Etsiit 3ª Planta Despacho 28)
- Miercoles 9:00 a 11:00 (Etsiit 3ª Planta Despacho 28)
Breve descripción de contenidos (Según memoria de verificación del Máster)
- Métodos de desarrollo para WEB: Ingeniería Web
- Marcos de desarrollo de software (Software frameworks)
- Tecnologías de desarrollo para WEB
- Servicios Web (Web services)
- Lenguajes de descripción de interfaces (Interface description languages)
- Integración con la Computación en la nube (Cloud computing): software como servicio ("Software as a service")
Prerrequisitos y/o Recomendaciones
Se recomienda a los alumnos haber cursado alguna asignatura de desarrollo web. Se presuponen conocimientos de HTTP, HTML, CSS, Javascript.
Competencias
Competencias Básicas
- CB6. Poseer y comprender conocimientos que aporten una base u oportunidad de ser originales en desarrollo y/o aplicación de ideas, a menudo en un contexto de investigación.
- CB7. Que los estudiantes sepan aplicar los conocimientos adquiridos y su capacidad de resolución de problemas en entornos nuevos o poco conocidos dentro de contextos más amplios (o multidisciplinares) relacionados con su área de estudio.
- CB8. Que los estudiantes sean capaces de integrar conocimientos y enfrentarse a la complejidad de formular juicios a partir de una información que, siendo incompleta o limitada, incluya reflexiones sobre las responsabilidades sociales y éticas vinculadas a la aplicación de sus conocimientos y juicios.
- CB9. Que los estudiantes sepan comunicar sus conclusiones y los conocimientos y razones últimas que las sustentan a públicos especializados y no especializados de un modo claro y sin ambigüedades.
- CB10. Que los estudiantes posean las habilidades de aprendizaje que les permitan continuar estudiando de un modo que habrá de ser en gran medida autodirigido o autónomo.
Resultados de aprendizaje (Objetivos)
Conocer y aplicar métodos de desarrollo de software para la realización de sistemas software basados en Web.
Comprender, conocer y aplicar tecnologías concretas de desarrollo para sistemas software basados en Web.
Conocer los principales frameworks de desarrollo para web y diseñar software basado en ellos.
Conocer y aplicar lenguajes de descripción de interfaces y servicios web.
Conocer las características específicas del desarrollo web distribuido basado en la nube y en la utilización de servicios y diseñar sistemas software basados en ellos.
Programa de contenidos Teóricos y Prácticos
Teórico
- Tema 1. Ingeniería Web: Características de un aplicación web, tecnologías implicadas. Generación HTML.
- Tema 2. Back-end, Componentes: plantillas, formularios, middleware, autentificación, loggging, frameworks MVC.
- Tema 3. Persistencia: ORMs con Bases de Datos SQL y No-SQL.
- Tema 4. Servicios REST Ful.
- Tema 5. Front-end: Aplicaciones single-page. Frameworks de Front End.
- Tema 6. Despliegue, internacionalización y pruebas End to End.
Práctico
Práctica 0. Preparación del entorno de desarrollo con docker-compose y Makefile
Práctica 1. Landing page con plantillas.
Práctica 2. Uso de Bases de Datos no-SQL, ORMs
Práctica 3. Web scrapping. Testing.
Práctica 4: Formularios, incorporación de Tailwind.
Práctica 5: Autentificación de usuarios, autorización.
Práctica 6: Front-end: Mejorando la UX.
Práctica 7: Añadiendo servicios REST Ful.
Práctica 8: Single Page App con React.
Práctica 9: Generación en el servidor (SSR, SSG)
Práctica 10: Despliegue en contenedores
Bibliografía
Bibliografía fundamental
Bibliografía complementaria
- Learning React: Functional Web Development with React and Redux, Alex Banks. O'Reilly. 2017
Enlaces recomendados
Metodología docente
Evaluación (instrumentos de evaluación, criterios de evaluación y porcentaje sobre la calificación final.)
Evaluación Ordinaria
La asignatura tiene un carácter eminentemente práctico. Por tanto, la evaluación se llevará a cabo mediante una media ponderada entre las prácticas que se tendrán que entregar a lo largo del semestre, ninguna de las cuales superará el 70% del total de la nota.
Evaluación Extraordinaria
1.- Examen teórico sobre los contenidos de la asignatura, 50% de la nota final.
2.- Examen práctico, con algún ejercicio similar a los efectuados durante el curso, 50% de la nota final.
Evaluación única final
1.- Examen teórico sobre los contenidos de la asignatura, 50% de la nota fina y
2.- Examen práctico, con algún ejercicio similar a los efectuados durante el curso, 50% de la nota final.