Final del 27/12/2007 (Ingeniería I)
Testing
Ejercicio 1
Cuál es la diferencia entre falla, defecto y error?
- Falla (failure): Diferencia entre los resultados esperados y reales
- Defecto (defect o fault): Está en el texto del programa, una especificación, un diseño, y desde allí se hace visible una falla
- Error: Equivocación humana
- Un error lleva a uno o más defectos, que están presentes en un producto de software
- Un defecto lleva a cero, una o más fallas: la manifestación del defecto
Ejercicio 2
Explique qué es y para qué sirve el Def-use graph.
Diseño
Ejercicio 3
Explique y ejemplifique qué es el esquema de diseño por capas y su relación con las nociones de cohesión y acoplamiento.
Ejercicio 4
Explique qué es la ley de demeter.
Ley de Demeter: No hablar con extraños, se basa en que un método de un objeto sólo puede llamar métodos del propio objeto, sus parámetros o aquellos objetos que constituyen el objeto de manera directa o fueron creados por él. Se evita llamar métodos de objetos remotos retornados por otros métodos. Facilita la mantenibilidad y adaptabilidad pero tiende a generar wrappers molestos y poco cohesivos.
Especificación
Ejercicio 5
LTS vs Redes de Petri.
Ejercicio 6
Diferencias del diagrama de clases en etapa de diseño y de requerimientos.
Ingeniería de requerimientos
Ejercicio 7
Según Jackson, cuál es la relación entre monitoreabilidad, controlabilidad y la noción de requerimiento?
Ejercicio 8
En el modelo de objetivos, qué es el refinamiento por casos. Ejemplifique.