Ingeniería Web Avanzada Dr. Ismael Figueroa ismael.figueroa@pucv.cl http://www.inf.ucv.cl/~ifigueroa IBC 3-23
Descripción General del Curso Esta asignatura: profundiza los aspectos teóricos y prácticos del diseño, desarrollo y testing de aplicaciones web modernas pone especial énfasis en la utilización de tecnologías, lenguajes de programación y frameworks de desarrollo modernos su propósito es capacitar al estudiante para el desarrollo y mantenimiento ta todo tipo de aplicaciones web, considerando diversas arquitecturas y tecnologías
Contenidos de la Asignatura - Unidad 1 Introducción 1.1 Arquitectura Básica Cliente/Servidor 1.2 Tecnologías Esenciales de la Web
Contenidos de la Asignatura - Unidad 2 Arquitectura y Patrones de Diseño para Aplicaciones Web 2.1 Protocolos de Comunicación 2.2 Introducción a las Arquitecturas de Software 2.3 Arquitecturas: Middleware, Modelos, Aspectos
Contenidos de la Asignatura - Unidad 3 Programación Web Avanzada en Javascript 3.1 Elementos de Programación Funcional 3.2 Programación con Objetos basados en Prototipos 3.3 Vistas Declarativas con React.js 3.4 Desarrollo avanzado con Angular.js
Contenidos de la Asignatura - Unidad 4 Programación Web en Java y Scala 4.1 Tecnologías Java: Servlets, JSP, Struts 4.2 El lenguaje de programación Scala 4.3 Play Framework: integrando Java y Scala para el Desarrollo Web
Contenidos de la Asignatura - Unidad 5 Testing de Aplicaciones Web 5.1 La Teoría del Testing Web 5.2 Criterios y Dimensiones para Testing 5.3 Desarrollo Orientado a Testing: Test-Driven Development Behavior-Driven Development
Contenidos de la Asignatura - Unidad 6 La Web como Fuente de Información 6.1 Conceptos de Recuperación de la Información 6.2 Web Scraping 6.3 Web Mining 6.4 Web Semántica
¿Cómo seré evaluado? Controles de Lectura (35%): artículos, capítulos de libros, etc. Individuales! Talleres (35%): desarrollo guiado de aplicaciones prácticas. En parejas. Incluye actividades en clases y “tareas chicas”. Exposición Tecnológica (30%): presentación magistral de una tecnología específica. Grupos de 4.
Cronograma/Planificación Semana/Fecha Bloque 1 Bloque 2 1 / Sábado 19 Agosto Presentación del Curso U1 Arq. Básica Cliente/Servidor 2 / Viernes 25 Agosto U1 Tecnologías Esenciales de la Web U1 Taller Unidad 1 3 / Sábado 2 Septiembre U2 Protocolos de Comunicación U2 Intro a las Arquitecturas de Software 4 / Sábado 9 Septiembre U2 Arquitecturas: Middleware, etc. U2 Taller Unidad 2 5 / Sin clases la semana de Fiestas Patrias (o sea Viernes 22 Septiembre)
Cronograma/Planificación Semana/Fecha Bloque 1 Bloque 2 6 / Sábado 30 Septiembre U3 Elementos de Programación Funcional en JS 7 / Sábado 7 Octubre U3 Objetos Basados en Prototipos U3 React.js y Angular.js 8 / Viernes 13 Octubre U3 Taller Unidad 3 U4 Tecnologías Java 9 / Sábado 21 Octubre U4 El Lenguaje de Programación Scala 10 / Sábado 5 Noviembre U4 Play Framework U4 Taller Unidad 4
Cronograma/Planificación Semana/Fecha Bloque 1 Bloque 2 11 / Viernes 10 Noviembre Exposiciones Tecnológicas U4 Teoría y Criterios de Testing 12 / Sábado 18 Noviembre U5 Desarrollo Orientado a Pruebas U5 Taller Unidad 5 13 / Sábado 15 Noviembre U6 Intro a Recuperación de la Información U6 Web Scraping / Mining 14 / Viernes 1 Diciembre U6 Web Semántica U6 Taller Unidad 6
Normas de Convivencia Canales oficiales de comunicación: Aula Virtual Grupo de Facebook: https://www.facebook.com/groups/291359077934542/ Entrega de Talleres en repositorios git en Bitbucket Controles de Lectura: Aula Virtual Asistencia: sobre 75% bonifica nota final con fórmula: y = (⅕)*(x-75)