Especificación de software
Cursada sugerida
Segundo cuatrimestre del tercer año, en paralelo con el curso “Laboratorio de construcción de software”.
Objetivos
Conocer y aplicar formalismos de especificación de software mediano a grande.
Correlatividades
Para cursar y aprobar el curso es necesario tener aprobado el curso “Lógica y teoría de números”.
Contenidos mínimos
- La especificación del software. Importancia y características. Ejemplos de problemas reales. Conceptos de especificación. Interacción entre el especificador y el resto del equipo de desarrollo.
- Formalismos de especificación de software. Lenguaje Z. Esquemas y cálculo de esquemas. Estados, restricciones y predicados. Operaciones de actualización y notación especial. Análisis de esquemas e introducción a demostraciones de validación.
- Técnicas de prototipado. Construcción de prototipos. Herramientas y conceptos. Validación de prototipos. Técnicas de interacción con los usuarios.
- El lenguaje de modelado UML. Diagramas de clase. Diagramas de estado. Restricciones y propiedades. Validación de modelos UML. Ejemplos sobre casos reales.
Carga horaria
Una clase teórica semanal y una clase práctica semanal, 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 de un sistema de software mediano.