Final del 09/06/2009 (Ingeniería I)
Requerimientos
1. Por que es tan o mas importante validar las presunciones del dominio que los requerimientos del sistema? Ejemplifique.
Rta. Porque al fallar en la validacion de las presunciones de dominio, se va a esperar un cierto comportamiento por parte del mundo que se presume necesario para el correcto funcionamiento del sistema. Ademas, uno esta suponiendo que los requerimientos entregados junto con el dominio va a cumplir con el objetivo esperado. Ej. Software para un cierto centro hospitalario, el cual no esta preparado para personas no videntes y en la presuncion nunca se aclaro las capacidades de los usuarios.
2. Suponga que un dominio ha sido descrito utilizando un modelo de objetivos y uno conceptual. Explique la o las relaciones que esperaria encontrar entre ellos.
Rta. Una de las relaciones que se pueden encontrar es el uso del modelo conceptual en las descripciones formales del modelo de objetivos para describir los mismos. Asi mismo, provee de una estructura sobre la cual podria ser mas facil tomar decisiones sobre los refinamientos o asignaciones de agentes a los objetivos.
Especificacion
3. Suponga que un dominio ha sido descrito utilizando una composicion de maquinas de estado y un diagrama de contexto. Que vinculos esperaria encontrar entre ellos?
Rta. Las maquinas de estado descriptas para este dominio introducen un relacion temporal entre los agentes descriptos en el diagrama de contexto. Ademas, en ciertas LTS se pueden utilizar conceptos como monitoreo y control, como en los diagramas de contexto.
4. Cual es el dominio semantico que se utiliza para definir casos de uso. Explique como utilizando dicho dominio se puede definir la relacion de extends entre dos casos de uso. Ejemplifique.
Rta. Un caso de uso describe un conjunto de escenarios
- Para toda elección de actores de acuerdo al tipado del caso de uso
- Para toda secuencia de interacciones que se ajusta a la descripción detallada.
Extends:
- Existe al menos un escenario s denotado por A, que contiene un escenario denotado por B
- Pueden existir escenarios denotados por B que no aparecen en escenarios dentoados por A
Testing:
5. Que es un test funcional?
Rta. El testing funcional debe testear que un programa p implementa una funcionalidad f correctamente, es decir, que para todo elemento del dominio el resultado de p coincide con el de f. También debe avisar que la entrada no pertenece al dominio, y en caso de errores no destruir el sistema (o colgarse) sino simplemente notificar del error. Se busca testear que haga lo que debe y no haga lo que no debe.
6. Suponga que se ha modelado una entidad utilizando una maquina de estados. Como puede ser utilizado esta en las actividades de testing?
Rta. La maquina de estados puede ser utilizada en testing para realizar, por ejemplo, el flowgraph, teniendo una ayuda para saber los posibles estado del programa. Tambien puede servir para entender como llegar a cierto punto del programa teniendo determinados inputs. Y para tambien para saber validar estados invalidos dentro del sistema.
Diseño
7. ¨Los lenguajes de programacion orientados a objetos proveen soporte directo para solo algunos de los tipos de relacion que pueden especificarse en un diagrama de clases.¨. Justifique la asercion anterior y ejemplifique.
Rta.