Ingeniería de software
Cursada sugerida
Primer cuatrimestre del tercer año, en paralelo con el curso “Sistemas operativos y redes”.
Objetivos
Brindar una introducción a las técnicas de ingeniería de software sobre el ciclo de vida del software.
Correlatividades
Para cursar y aprobar el curso es necesario tener aprobado el curso “Programación orientada a objetos”.
Contenidos mínimos
- Introducción a la ingeniería del software. Proceso de desarrollo de software. Modelos de ciclo de vida del software: modelo en cascada, modelo evolutivo y modelo en espiral.
- Análisis de requerimientos. Extracción de requerimientos. Actores y casos de uso. Tipos de casos de uso. Diagramas. Validación de requerimientos.
- Técnicas de especificación. Modelos conceptuales. Diagramas de flujo de datos. Diagramas de secuencia.
- Diseño y arquitectura de software. Objetivos del diseño. Arquitectura y estilos arquitectónicos. Técnicas de diseño. Modularidad y abstracción. Técnicas de encapsulamiento. Conceptos de information hiding. Desacoplamiento.
- Testing. Tareas del proceso de testing. Niveles y técnicas de testing. Testing funcional, testing estructural y testing de integración.
Carga horaria
Dos clases teórico-prácticas semanales, una clase es de 4 horas y la otra es de 2 horas cada una durante 16 semanas, totalizando 96 horas de clase.
Régimen de aprobación
Para aprobar el curso, se deben aprobar un trabajo práctico y un examen final, o sus respectivos recuperatorios. El trabajo práctico consta de la especificación y diseño de un sistema de software mediano.