FACULTAD DE CIENCIAS ESCUELA DE COMPUTACION INGENIERIA DE SOFTWARE NOMBRE:___________________________ CI:___________________________ SECCION: C1 ______ C2 _______ PARCIAL PRACTICO N. 2 Parte I. Verdadero/Falso (1pto c/u) 1) UML es un proceso de desarrollo de software que guía en la construcción de modelos. UML es el lenguaje de modelación unificado. Es un lenguaje de modelación no un proceso F de desarrollo. 2) El diagrama de estados de UML es una técnica válida para especificar requerimientos Los cambios de estados son causados por métodos y/o eventos. Y estos son determinados V de acuerdo a los requerimientos especificados por el cliente. Parte II. Selección Simple (1 pto c/u) 1. Seleccione la afirmación correcta: a) Un diagrama de estados pueden representar tanto el camino básico como los caminos alternativos de un caso de uso. b) Un flujo de eventos representa todos los diferentes caminos de un caso de uso c) Existe un único diagrama de colaboración por cada caso de uso. d) El diagrama de secuencia representa de forma conjunta a todo el sistema. La respuesta a. La justificación es parecida a la respuesta anterior. El diagrama de secuencia especifica el comportamiento de una sola operación. Existen n diagramas de colaboración por cada caso de uso. 2. En un diagrama de transición de estados, es posible: a) Tener múltiples estados finales b) Transiciones que se disparen condicionalmente c) Un estado pueda recordar cuál fue el último subestado del objeto d) Un objeto pueda estar simultáneamente en más de un estado e) Todas las anteriores Todas las anteriores son ciertas. El estado final es opcional. Pueden haber estados que no tengan relación entre si y un objetos este en un estado por un atributo y en otro estado por otro. Los objetos pueden tener memoria y saber cual fue su ultimo estado. Y hay cambios de estados propiciados por el factor tiempo 3. Cuál de las siguientes afirmaciones es cierta: a) Los actores de un sistema únicamente están representados por humanos y otros componentes de software. b) Los requerimientos no funcionales pueden ser modelados con los diagramas de casos de uso c) Cuand o un flujo de evento de un caso de uso A invoca a otro caso de uso B, en el caso de uso B no se puede colocar pre-condición d) Un actor abstracto puede ser extendido a uno ó más actores concretos. La opción d. El tiempo también es un actor. Los requisitos no funcionales son de valor agregado al software y poco tienen que ver con requerimientos funcionales. Cualquier caso de uso puede poner una precondición. Los actores abstractos definen comportamientos de alto nivel que es responsabilidad de los actores concretos definir. Parte III. Desarrollo (2 ptos) ¿Por qué es conveniente mantener la trazabilidad entre el diseño y los requisitos?. Sugiera cómo se podría hacer La trazabilidad de los requisitos nos permite saber qué modulos de diseño implementan cada requisito, y cada módulo o conjunto de módulos, qué requisitos implementan. Es conveniente mantenerla, por ejemplo, de cara a identificar si nuestro diseño cubre todos los requisitos. También de cara a las pruebas y mantenimiento, porque si la aplicación no cumple con algún requisito o se modifica alguno, sabemos qué módulos hay que revisar. Se suele utilizar una matriz de trazabilidad relacionando requisitos y módulos de diseño Parte IV. Modelacion 1) Especificar el diagrama de secuencia de la operación “crearLaberinto” (3 ptos) public class JuegoLaberinto { public Laberinto crearLaberinto () { Laberinto lab = new Laberinto(); Habitacion h1 = new Habitacion(); Habitacion h2 = new Habitacion(); Puerta puerta = new Puerta(h1, h2); lab.añadeHabitacion(h1); lab.añadeHabitacion(h2); h1.añadePuerta(puerta); return lab; } } 2) Modele con un diagrama de objetos lo que se indica en el siguiente enunciado: (5 ptos) Por aleación se entiende la unión homogénea de dos o más elementos. Generalmente, se dice que el acero es una aleación de hierro y carbono. Sin embargo, esta definición se restringe a los “aceros al carbono”, ya que existen otros tipos de acero con composiciones muy diversas que reciben denominaciones específicas en virtud: a) de los elementos que, además del hierro, predominan en su composición (por ejemplo, aceros al silicio). b) de su susceptibilidad a ciertos tratamientos (por ejemplo, aceros de cementación) c) de alguna característica potenciada (por ejemplo, aceros inoxidables) d) en función de su uso (por ejemplo, aceros estructurales). Usualmente, estas otras aleaciones de hierro se engloban bajo la denominación genérica de “aceros especiales”. Además del acero, otras aleaciones muy comunes son el bronce, formado por cobre y estaño, y el latón, compuesto por cobre y zinc. 3) Modelar el comportamiento de una cadena de música mediante un diagrama de transición de estados. Esta puede estar encendida (ON) o apagada (Standby). La cadena tiene reproductor de CD, Radio y Cinta. Se cambia de uno a otro con el botón “mode”. Cuando se enciende la cadena se recuerda el último estado en el que estuvo. (3 ptos)