Ministerio de Cultura y Educación
Universidad Nacional de San Luis
Facultad de Ciencias Físico-Matemáticas y Naturales
Departamento: Informatica
Área: Area IV: Pr. y Met. de Des. del Soft.
(Programa del año 2006)
(Programa en trámite de aprobación)
(Programa presentado el 14/12/2006 09:02:43)
I - Oferta Académica
Materia Carrera Plan Año Periodo
MATERIA OPTATIVA(ARQUITECTURA WEB) LIC. CS. COMP. 006/05 5 2c
II - Equipo Docente
Docente Función Cargo Dedicación
ROQUÉ FOURCADE, LUIS ERNESTO Prof. Responsable AD-HONOREM Hs
III - Características del Curso
Credito Horario Semanal Tipificación Duración
Teórico/Práctico Teóricas Prácticas de Aula Práct. de lab/ camp/ Resid/ PIP, etc. Total B - Teoria con prácticas de aula y laboratorio Desde Hasta Cantidad de Semanas Cantidad en Horas
Periodo
 Hs. 2 Hs. 2 Hs. 5 Hs. 9 Hs. 2 Cuatrimestre 07/08/2006 10/11/2006 14 126
IV - Fundamentación
Los avances tecnológicos recientes, impulsados por la tecnología orientada a objetos, la evolución arquitectural hacia múltiples capas y la irrupción de internet como un ambiente propicio para la ejecución de las aplicaciones a ubicado el diseño arquitectural en el centro de la escena del proceso de desarrollo de productos de software.
Además los requisitos de disponibilidad, flexibilidad, seguridad y escalabilidad impuestos por Internet asignan aún más un rol clave al diseño arquitectural.
La materia puede constituirse en una buena opción complementaria para aquellos egresados que opten por involucrarse en el desarrollo de productos de software con estas tecnologías.
V - Objetivos
Formar a los alumnos en desarrollos centrados en arquitectura para aplicaciones para Internet y en el uso de una de las tecnologías de punta para el tipo de aplicaciones.
VI - Contenidos
Unidad 1: Evolución Arquitectural de aplicaciones web
Historia y evolución de Modelos de Desarrollo de Software. Modelos de desarrollo centrados en la arquitectura.
El impacto de Internet en la Arquitectura de las aplicaciones
Internet como ambiente para la ejecución de aplicaciones distribuidas y orientadas a componentes: Componentes, Integración, Aplicaciones compuestas.
Arquitecturas Orientadas a Componentes. Arquitecturas Orientadas a Servicios. Patrones de Diseño. Patrones Arquitecturales. Patrones de Solución. Evolución tecnológica y patrones.

Unidad 2: Introducción a Java 2 Enterprise Edition (J2EE)
Introducción. Beneficios y principales características. J2EE y MVC. Patrones de Diseño. Vista, Controlador y Modelo. Diseño de Aplicaciones J2EE usando el Patrón Arquitectural MVC.

Unidad 3: Vista, Controlador y Contenedor Web
Introducción a la Vista. Contenedor Web. Servlets y JSP’s.
Servlets, principales características. Ciclo de Vida. Principales métodos. Parámetros HttpServletRequest y HttpServletResponse. Invocando un Servlet. Manejo de entrada y salida en Servlets. Mapping, Encabezados, Respuestas y Códigos de Estado. Desplegado. Acceso a Bases de Datos. JDBC. Datasources.
Técnicas avanzadas. Despacho y Filtros. Eventos de Ciclo de Vida. Sesiones
JavaServer Pages. Comparación con Servlets. Invocación. Elementos Básicos. Desarrollo centrado en componentes. JavaBeans. Custom Tags. Lenguaje de Expresiones

Unidad 4: Comunicaciones
Introducción. Remote Method Invocation (RMI). RMI y J2EE. Java Naming and Directory Interface (JNDI). Contenedor J2EE y JNDI. Contexto Inicial. Método lookup(). Obteniendo referencias a recursos locales y remotos. Propiedades de ambiente. Tunneling sobre http. Configuración de referencias a EJB’s y Datasources.

Unidad 5: Modelo, Enterprise JavaBeans y Contenedor de Negocio
Enterprise JavaBeans (EJB’s). Introducción. Tipos. Session, Entity y Message-Driven EJB’s. Arquitectura. Servidor y Contenedores EJB. Servicios provistos. Clientes de EJB’s. Clases e Interfaces de EJB’s. Interfase Componente y Home (Local y Remota). Objeto Componente y Home (Local y Remoto). Clase del Bean. Archivos de configuración. Desplegado y ejecución.
Enterprise JavaBeans. Session Bean (Stateful and Stateless). Entity Bean. Container Managed Persistence (CMP) y Bean Managed Persistence (BMP). Container Managed Relationship (CMR). Java Message Service (JMS). Message-Driven Bean (MDB). Desarrollo de MDB’s usando JMS. Asociación de Recursos JMS con MDB.
Integrando componentes J2EE en una Aplicación J2EE.

Unidad 6: Tópicos Avanzados
Web Services. Introducción. Arquitecturas SOA (Service Oriented Architecture). SOAP (Simple Object Access Protocol), WSDL (Web Service Description Language) y UDDI (Universal Description, Discovery and Integration). Desarrollo.
Seguridad. Introducción. Arquitectura de Seguridad. Java Authentication and Authorization Service (JAAS). Definición de Usuarios, Grupos y Roles.

VII - Plan de Trabajos Prácticos
Prácticos de cada tema a desarrollar durante clases teórico/prácticas
Desarrollo de un caso, por lo menos hasta nivel de diseño acompañado de una implementación parcial o total que pruebe las bondades y factibilidad del diseño
El caso para desarrollo puede ser tomado de algún caso sugerido o de alguno aportado por el propio alumno, previa revisión y autorización
VIII - Regimen de Aprobación
Condiciones de regularización
1. Presentación y aprobación de los proyectos de práctico de máquina
2. Aprobación de 2 exámenes parciales teórico/prácticos con nota mayor o igual a 6 (seis)

Condiciones de aprobación
1. Por promoción, para lo cual el alumno debe contar con las condiciones de regularización y con una nota de exámenes parciales mayor o igual a 8 (ocho), ó,
2. Examen final

Condiciones de alumnos libres
Los alumnos libres deberán aprobar un examen escrito sobre los aspectos prácticos de la materia y luego un examen escrito/oral sobre los aspectos teóricos de la materia
IX - Bibliografía Básica
[1] The J2EE(TM) 1.4 Tutorial - http://java.sun.com/j2ee/1.4/docs/tutorial/doc/
[2] Apuntes de la materia
X - Bibliografia Complementaria
[1] Unified Modeling Language User Guide - Grady Booch, James Rumbaugh and Ivar Jacobson
[2] Object-Oriented Software Engineering: A Use Case Driven Approach - Ivar Jacobson
[3] Unified Modeling Language - http://www.omg.org/technology/documents/formal/uml.htm
XI - Resumen de Objetivos
Formar a los alumnos en el uso de una de las tecnologías de punta para el desarrollo de aplicaciones web.
XII - Resumen del Programa
1. Evolución Arquitectural de aplicaciones web
2. Introducción a Java 2 Enterprise Edition (J2EE)
3. Vista, Controlador y Contenedor Web
4. Comunicaciones
5. Modelo, Enterprise JavaBeans y Contenedor de Negocio
6. Tópicos Avanzados
XIII - Imprevistos