Dirección General de Educación Superior Tecnológica 1. Datos Generales de la asignatura Nombre de la asignatura: Clave de la asignatura: Créditos (Ht-Hp_ créditos): Carrera: Aplicaciones Web DEM-1203 2-4-6 Ingeniería En Sistemas Computacionales. 2. Presentación Caracterización de la asignatura Esta asignatura aporta al perfil del egresado la capacidad para desarrollar y administrar software para apoyar la productividad y competitividad de las organizaciones cumpliendo con estándares de calidad, mediante el desarrollo de aplicaciones en web utilizando lenguajes de programación o de marcas. Para el logro de los objetivos es necesario que el estudiante tenga competencias previas en cuanto a la aplicación de programación orientada a objetos, creación y manipulación de bases de datos, así como la aplicación de metodologías de ingeniería de software. Para adquirir la competencia planteada en esta asignatura es necesario que el estudiante haya acreditado la asignatura de Programación Orientada a Objetos, Tópicos Avanzados de Programación, Taller de Bases de Datos e Ingeniería de Software, Redes de Computadoras y Programación Web. Intención didáctica La asignatura está organizada en cinco temas: El primer tema, se centra en la introducción a la arquitectura del framework, y sus recursos, como lo son: Arquitectura multicapa, arquitectura del framework, cómo obtener e instalar el framework, componentes del framework y arquitectura mvc (modelo, vista y controlador). El segundo, se refiere a lo que es inyección de dependencias, abordando los temas de Inyección de dependencias, contenedores, beans, autowiring anotaciones, vistas, librerías para formularios, tipos de controllers y handler mappings. En el tercer tema, manejo de interfaces como: formularios y validación, interceptando un requests con handlerinterceptor interface manejo de sesiones http (sessionutility). El cuarto tema aborda el tema de soporte para base de datos, relacionado con: Soporte a DAO, ORM hibernate, configuración sessionfactory, hibernate mapping, el hibernate template, el hibernate dao support y transaction management. Por último, el quinto aborda temas de seguridad, relacionado tecnologías de seguridad, Web Services REST, AOP Aspectos, Patrón Open session in View y Controlador Basado en anotaciones Autowiring. 3. Participantes en el diseño y seguimiento curricular del programa
Lugar y fecha de elaboración o revisión Instituto Tecnológico de Tlaxiaco Oaxaca, 18 de Octubre 2012. 4. Competencias a desarrollar Participantes Ing. Noé Gutiérrez Osorno Observaciones Reunión de integración de especialidad para la carrera de Ingeniería en Sistemas Computacionales. Competencia general de la asignatura Desarrolla aplicaciones web para apoyar en la productividad y competitividad de las organizaciones utilizando frameworks. Competencias específicas Utiliza un lenguaje de programación, para conocer las herramientas básicas de una aplicación web. Integra el almacenamiento de datos en una aplicación web (haciendo uso de componentes de frameworks). Construye aplicaciones web, para conocer las herramientas interactivas de una app s. Controla la seguridad y permisos de una aplicación web, para mejorar el rendimiento. Competencias instrumentales: o Capacidad de análisis y síntesis. o Capacidad de organizar y planificar. o Comunicación oral y escrita. Competencias genéricas o Habilidad para buscar, analizar, clasificar y sintetizar información proveniente de fuentes o Solución de problemas. o Toma de decisiones. Competencias interpersonales: o Capacidad crítica y autocrítica o Capacidad de trabajar en equipo o Capacidad de comunicar sus ideas o Capacidad de liderazgo o Habilidades interpersonales. Competencias sistémicas: o Capacidad de aplicar los conocimientos en la práctica o Habilidades de investigación o Capacidad de aprender o Capacidad de adaptarse a nuevas situaciones o Capacidad de generar nuevas ideas (creatividad)
o Habilidad para trabajar en forma autónoma o Búsqueda del logro 5. Competencias previas de otras asignaturas 6. Temario No. Competencias previas Aplica un lenguaje orientado a objetos para la solución de problemas. Crea y manipula bases de datos para el tratamiento de la información en distintas plataformas, considerando elementos de integridad y seguridad. Desarrolla soluciones de software para resolver problemas en diversos contextos utilizando programación concurrente, acceso a datos y uso de interfaces web. Aplica metodologías de ingeniería software para la elaboración de un proyecto web. Implementa redes de computadoras. Temas Nombre 1. Arquitectura de Framework 2. Inyección de dependencias 3. Manejo de interfaces 4. Soporte para base de datos 5. Seguridad Subtemas 1.1. Arquitectura Multicapa 1.2. Arquitectura del Framework 1.3. Cómo obtener e instalar el Framework 1.4. Componentes del Framework 1.5. Arquitectura MVC (Modelo, Vista y Controlador) 2.1 Inyección de dependencias 2.2 Contenedores 2.3 Autowiring anotaciones 2.4 Vistas 2.5 Librerías para Formularios 2.6 Tipos de Controllers 2.7 Handler mappings 3.1 Formularios y Validación 3.2 Interceptando un requests con HandlerInterceptor interface 3.3 Manejo de Sesiones HTTP 4.1 Soporte a DAO 4.2 ORM Hibernate. 4.3 Configurando SessionFactory 4.4 El Hibernate Mapping 4.5 El HibernateTemplate 4.6 El Hibernate Dao Support 4.7 Transaction management 5.1 Trabajar tecnologías de seguridad Web Services 5.2 AOP Aspectos 5.3 Security 5.4 Patrón Open session in View 5.5 Controlador Basado en anotaciones Autowiring
7. Competencias específicas y genéricas (a desarrollar y fortalecer por tema) Utiliza un framework, para crear aplicaciones web dirigidas al ambiente cliente servidor. Competencias genéricas Comunicación oral y escrita. Habilidad para buscar, analizar, clasificar y sintetizar información proveniente de fuentes Toma de decisiones. Capacidad crítica y autocrítica Capacidad de trabajar en equipo Capacidad de comunicar sus ideas Capacidad de aplicar los conocimientos en la práctica Habilidades de investigación Tema Arquitectura de Framework Investiga la arquitectura multicapa y elabora un mapa conceptual, realizando una exposición frente a grupo. Investiga de la arquitectura del framework y elaborar un mapa conceptual, realizando una exposición frente a grupo. Obtiene e instala el framework. Analiza los componentes del framework, elaborar una exposición y analizarla en el grupo con una presentación multimedia. Investiga la arquitectura mvc (modelo, vista y controlador) elaborar una exposición y analizarla en el grupo con una presentación multimedia. y genéricas (a desarrollar y fortalecer por tema) Implementa vistas con funciones específicas, para que el usuario pueda interactuar con la información. Competencias genéricas Comunicación oral y escrita. Habilidad para buscar, analizar, clasificar y sintetizar información proveniente de fuentes Capacidad de trabajar en equipo Capacidad de comunicar sus ideas Capacidad de aplicar los conocimientos en la práctica Habilidades de investigación
Tema Inyección de dependencias Desarrolla aplicaciones de inyección de dependencias. Desarrolla ejemplos de contenedores. Desarrolla ejemplos Autowiring anotaciones. Implementa vitas. Hace uso de bibliotecas para Formularios. Implementa tipos de Controllers. Handler mappings. y genéricas (a desarrollar y fortalecer por tema) Implementa interfaces haciendo uso de sesiones y validaciones de los formularios. Competencias genéricas Comunicación oral y escrita. Habilidad para buscar, analizar, clasificar y sintetizar información proveniente de fuentes Capacidad de trabajar en equipo Capacidad de comunicar sus ideas Capacidad de aplicar los conocimientos en la práctica Habilidades de investigación Tema Manejo de interfaces Desarrolla formularios y validaciones. Realiza ejemplos interceptando un requests con HandlerInterceptor interface. Implementa sesiones HTTP (SessionUtility). y genéricas (a desarrollar y fortalecer por tema) Implementa el uso de archivos y conexiones con base de datos para la implementación de aplicaciones web dinámicas. Competencias genérica Comunicación oral y escrita. Habilidad para buscar, analizar, clasificar y sintetizar información proveniente de fuentes Capacidad de trabajar en equipo Capacidad de comunicar sus ideas Capacidad de aplicar los conocimientos en la práctica Habilidades de investigación Tema
Soporte para base de datos Realiza conexiones de con Soporte a DAO Implemente ORM Hibernate. Configura SessionFactory. Desarrolla aplicaciones con hibernate mapping. Desarrolla aplicaciones con hibernatetemplate. Desarrolla aplicaciones con hibernate DAO support. Desarrolla aplicaciones con transaction management. y genéricas (a desarrollar y fortalecer por tema). Implementación de seguridad en el sistema web. Competencias genérica Comunicación oral y escrita. Habilidad para buscar, analizar, clasificar y sintetizar información proveniente de fuentes Capacidad de trabajar en equipo Capacidad de comunicar sus ideas Capacidad de aplicar los conocimientos en la práctica Habilidades de investigación Tema Seguridad Utiliza tecnologías de seguridad haciendo ejemplos de aplicaciones. Realiza la conexión de servicio de Web Services REST. Desarrollar aplicaciones AOP Aspectos. Implementar un ejemplo de Patrón Open session in View. Utiliza un controlador Basado en anotaciones Autowiring. 8. Prácticas (para fortalecer las competencias de los temas y de la asignatura) Es recomendable la realización de prácticas en todos los temas que consistan en el modelado y resolución de problemas utilizando un lenguaje de programación orientado a Objetos y orientado al desarrollo de aplicaciones web; la entrega final de cada tema puede ser de una app s que refuerce los temas vistos en clase y la entrega de un proyecto integrador que contemple los conocimientos, habilidades y aptitudes adquiridas en la asignatura, este debe ser definido al final del primer tema. Desarrollo de aplicaciones haciendo uso de mapeo. Desarrollo de aplicaciones con formularios empleando validaciones y en diferentes idiomas. Desarrollo de aplicaciones con manejo de sesiones. Desarrollo de aplicaciones con manejo de interfaces empleando operaciones alta de datos, consulta, actualización y eliminación. Desarrollo de aplicaciones web para comercio electrónico. Desarrollo de aplicaciones web para sistemas administrativos. 9. Proyecto integrador (Para fortalecer las competencias de la asignatura con otras asignaturas)
El proyecto integrador debe contener las siguientes fases: Contextualización y/o Diagnostico Fundamentación Planeación Ejecución Evaluación Socialización Debe integrar las competencias de las asignaturas que los estudiantes estén cursando en el periodo semestral y tomar como base las competencias de asignaturas señaladas como previas. El proyecto integrador debe tener un criterio de evaluación. 10. Evaluación por competencias (específicas y genéricas de la asignatura) La evaluación debe ser permanente y continua. Se debe hacer una evaluación diagnóstica, formativa y sumativa. Se debe aplicar la autoevaluación, coevaluación y heteroevaluación. Se debe generar un portafolio de evidencias, de preferencia en formato digital. Instrumentos Guía de problemas de programación Examen(teóricos y prácticos) Reportes de prácticas Resúmenes Preguntas guiadas Plenaria Cuadro comparativo Herramientas Rúbrica Lista de cotejo Matriz de valoración Guía de observación 11. Fuentes de información (actualizadas considerando los lineamientos de la APA*) SPRING. CRAIG WALLS. ANAYA MULTIMEDIA 2009. ARNAUD COGOLUÈGNES, T. T. (2010). SPRING DYNAMIC MODULES IN ACTION. FOREWORD BY PETER KRIENS. ARNAUD COGOLUEGNES, T. T. (S.F.). SPRING BATCH IN ACTION. 2011. DIERK KÖNIG, G. L. (2009). GROOVY IN ACTION, SECOND EDITION. EARLY ACCESS EDITION. MARK FISHER, J. P. (2012). SPRING INTEGRATION IN ACTION. FOREWORD BY ROD
JOHNSON. PENCHIKALA, K. R. (2012). SPRING ROO IN ACTION. FOREWORD BY BEN ALEX. WALL, C. (2011). SPRING IN ACTION. THIRD EDITION. WILLIE WHEELER, J. W. (2008). SPRING IN PRACTICE. EARLY ACCESS EDITION. HTTP://REFCARDZ.DZONE.COM/ HTTP://WWW.SPRINGSOURCE.ORG/