La materia tiene por objetivo introducir a les estudiantes en la construcción completa de una aplicación mediana, partiendo desde una versión preliminar de los requerimientos, y llegando a una aplicación que pueda ponerse en producción. Además se busca que les estudiantes comprendan los beneficios de respetar buenos principios y prácticas adquiridos en las materias anteriores, poniéndolos en práctica mediante la experiencia concreta en la utilización e integración de los mismos.
Modos de Cursada: Cuatrimestral Presencial
Horas Semanales: 6 horas
Demanda de tiempo en casa semanal: 6 horas
Sitio web:
- Aún no disponible
Programa de la materia:
Contenidos Mínimos:
- Herramientas metodológicas y conceptuales para trabajo en grupo.
- División de tareas planeando reunión de los resultados.
- Aprovechamiento de conceptos de objetos, citamos como posibles ejemplos: interfaces como forma de coordinar la tarea de distintas personas o grupos, mock objetos para simular los objetos de otros grupos, etc.
- Herramientas tecnológicas para trabajo en grupo: repositorios de código y de biblioteca, automatización de procesos involucrados en el desarrollo y despliegue.
- Aplicación concreta de las ideas de desarrollo iterativo.
- Nociones de arquitectura de software: que es una decisión de arquitectura, impacto en el desarrollo de trabajar dentro de cierta arquitectura. Diversidad de variantes en arquitecturas de software.
- Arquitectura de sistema. Variantes: stand-alone, servidor Web dinámico, servidor de aplicaciones, cliente-servidor. Soporte de ejecución concurrente. Implicancias en el diseño de software y en las tareas habituales de desarrollo, pertinencia de prácticas que agilicen el desarrollo bajo distintas arquitecturas de sistemas.
- Problemas de performance: instancias adecuadas para su análisis, posibilidad de problemas asociados a configuraciones defectuosas.
- Despliegue de una aplicación en distintos entornos: tareas que conlleva.