Detalle de Asignatura
Arquitectura de Software
IN-4007 | 4º año | 2º Cuatr.
Horas Semanales
4
Horas Sincrónicas
60
Trabajo Independiente
120
Horas Totales
180
Información General
Código
IN-4007
Año
4º
Régimen
2º Cuatr.
Coef. Trabajo Independiente
2
Horas Formación Práctica
30
Objetivos
Comprender el rol de la arquitectura en el éxito de sistemas de software.
Conocer estilos y patrones arquitectónicos comunes.
Evaluar decisiones arquitectónicas considerando calidad, rendimiento y mantenibilidad.
Documentar y comunicar arquitecturas de software.
Contenidos Mínimos
Conceptos básicos de arquitectura de software. Estilos arquitectónicos (en capas, cliente-servidor, microservicios, event-driven, etc.). Patrones arquitectónicos y de integración. Calidad arquitectónica: performance, escalabilidad, disponibilidad, mantenibilidad, seguridad. Tácticas de arquitectura para distintos atributos de calidad. Documentación arquitectónica (vistas, diagramas, decisiones de arquitectura). Evaluación de arquitecturas y trade-offs entre alternativas.
Formación Práctica
Elaboración de propuestas de arquitectura para sistemas de distinta escala. Definición de vistas arquitectónicas y documentación asociada. Análisis de casos reales de arquitectura (existente o propuesta) identificando fortalezas y debilidades. Presentación y defensa de decisiones de diseño arquitectónico.
Competencias Específicas
- 1.3. - Especificar, proyectar y desarrollar software.
- 1.1. - Especificar, proyectar y desarrollar sistemas de información.
- 2.1. - Proyectar y dirigir lo referido a seguridad informática.
- 3.1. - Establecer métricas y normas de calidad de software.
Competencias Genéricas
- Concebir, diseñar y desarrollar proyectos de ingeniería.
- Identificar, formular y resolver problemas de ingeniería.
- Utilizar de manera efectiva las técnicas y herramientas de aplicación en la ingeniería.
- Gestionar, planificar, ejecutar y controlar proyectos de ingeniería.
- Contribuir a la generación de desarrollos tecnológicos y/o innovaciones tecnológicas.
- Desempeñarse de manera efectiva en equipos de trabajo.
- Comunicarse con efectividad.
- Actuar con ética, responsabilidad profesional y compromiso social, considerando el impacto económico, social y ambiental de su actividad en el contexto local y global.
- Aprender en forma continua y autónoma.
Ejes Transversales
- Concepción, diseño y desarrollo de proyectos de ingeniería en sistemas de información/informática
- Fundamentos para el aprendizaje continuo
- Fundamentos para el desarrollo de una actitud profesional emprendedora
- Fundamentos para el desempeño en equipos de trabajo
- Fundamentos para evaluar y actuar en relación con el impacto social de su actividad profesional en el contexto global y local
- Fundamentos para una actuación profesional ética y responsable
- Fundamentos para una comunicación efectiva
- Generación de desarrollos tecnológicos y/o innovaciones tecnológicas
- Gestión, planificación, ejecución y control de proyectos de ingeniería en sistemas de información/informática
- Identificación, formulación y resolución de problemas de ingeniería en sistemas de información/informática
- Utilización de técnicas y herramientas de aplicación en la ingeniería en sistemas de información/informática
Descriptores
- Especificación, proyecto y desarrollo de sistemas de comunicación de datos
- Especificación, proyecto y desarrollo de sistemas de información
- Especificación, proyecto y desarrollo de software
Correlativas Regularizadas para Cursar
- IN-3008 - Desarrollo de Software I
- IN-3001 - Ingeniería de Software II
- IN-3007 - Autómatas y Gramáticas
- IN-3010 - Redes de Computadoras
Correlativas Aprobadas para Cursar
- IN-2006 - Idioma Extranjero I
- IN-2001 - Ingeniería de Software I
- IN-2002 - Paradigmas de Programación
- IN-2005 - Física II
- IN-2009 - Organización y Arquitectura de Computadoras
- IN-2008 - Estructuras de Datos y Algoritmos
- IN-2007 - Matemática Discreta
- IN-2003 - Análisis Matemático II
- IN-2010 - Probabilidad y Estadística
Correlativas Aprobadas para Aprobar
- IN-3008 - Desarrollo de Software I
- IN-3001 - Ingeniería de Software II
- IN-3007 - Autómatas y Gramáticas
- IN-3010 - Redes de Computadoras