Institución Facultad de Cs. Físicas y Matemáticas Facultad de Cs. Físicas y Matemáticas
Disponible desde Otoño 2004
Cursos Asociados Otras realizaciones de este Curso
Objetivos El término “Enterprise Computing” se refiere al desarrollo de sistemas computacionales de misión crítica, cuyos requerimientos están asociados a aspectos de rendimiento, concurrencia, integridad transaccional, escalabilidad, disponibilidad e integración con otros sistemas.

Al finalizar este taller, el alumno será capaz de:
- Diseñar y construir sistemas informáticos con las características recién descritas.
- Evaluar de manera crítica y utilizar diversos productos, estándares y frameworks presentes en la industria, con énfasis en la plataforma Java 2 Enterprise Edition.
Metodología Programa del Curso
-----------------------
1- Introducción a Enterprise Computing. Características de estos sistemas. Historia y estado actual de la industria.
2- Procesamiento transaccional. Conceptos básicos. Transacciones distribuidas.
3- Introducción a la plataforma Java 2 Enterprise Edition.
4- Aplicaciones Web. Servlets y páginas JSP (Java Server Pages). Patrón Model-View-Controller. Struts framework.
5- Introducción a Enterprise Java Beans.
6- Mecanismos de persistencia. JDBC. Entity Beans. Mapeo objectos – modelo relacional (O/R mapping).
7- Servicios transaccionales. Session Beans.
8- Servicios y procesamiento asincrónicos. Java Message Service (JMS). Message Driven Beans.
9- Introducción a Microsoft .NET.
10- Web Services.
11- Revisión de nuevas tecnologías en la industria.
Evaluación El curso será evaluado a través del desarrollo de un proyecto (40%), presentaciones individuales (30%) y un examen (30%). Para aprobar el curso el alumno debe obtener una calificación mayor o igual a 4.0 en las tres instancias.
La asistencia a las exposiciones de los compañeros es obligatoria. Si un alumno falta sin justificación previa su nota (en el trabajo grupal o presentación individual, según corresponda) será penalizada con 0.2.

Proyecto (40%)
--------------
El proyecto será realizado en grupos y consistirá en el desarrollo de un sistema, una evaluación detallada y comparativa de productos, u otras actividades de complejidad similar que sean pertinentes al taller y que impliquen actividades de desarrollo (i.e. programación).
Algunos ejemplos de proyectos posibles:
- Desarrollo de una enterprise application de interés para el grupo, utilizando las tecnologías relacionadas al curso.
- Desarrollo y análisis comparativo de una aplicación usando tecnologías competitivas entre ellas.
- Realizar un benchmark, programando el sistema de acuerdo a alguna especificación existente, y medir y analizar los resultados obtenidos.
- Extender un framework (open source) o desarrollar uno nuevo, orientado a facilitar el desarrollo de enterprise applications.

El grupo deberá exponer acerca de los resultados de su trabajo en una presentación inicial (30%) y una presentación final (70%).

Presentación individual (30%)
-----------------------------
Cada alumno deberá realizar una presentación individual donde describa y analice algún producto, framework, o práctica de ingeniería de software relacionada con el tema del taller.
Algunos ejemplos de presentaciones:
- Revisión de frameworks o tecnologías específicas, como Spring, Tapestry, Java Server Faces, iBatis, JMX, Middlegen + XDoclet, y otros.
- Revisión de una práctica de desarrollo en el contexto del tema del curso, como “pruebas unitarias de EJB usando la herramienta xxx”.
- Revisión de un producto (o comparativamente, de varios productos), como BEA WebLogic, IBM WebSphere, Oracle 9iAS, BEA Tuxedo, IBM MQSeries, Integración y uso de J2EE y una base de datos orientada al objeto, etc.
- Estudio de caso de un proyecto en el que el alumno haya participado.

Examen (30%)
------------
El examen final abarcará las clases presenciales del profesor y todas las presentaciones de los alumnos.
Horario 1.4 - 3.4
Comentarios Carga Académica
--------------------
10 UD (3, 0, 7).

Requisitos
------------
CC42A.
Programa del Curso Aún no ha subido el programa
Compartir