Recopilación Finales IngSoft1

De Cuba-Wiki
La versión para imprimir ya no se admite y puede contener errores de representación. Actualiza los marcadores del navegador y utiliza en su lugar la función de impresión predeterminada del navegador.

(Esta recopilación se hizo por mail de manera informal)


Preguntas Febrero 2014

Todas las consignas están pensadas para mostrar que sabes usar las herramientas de la materia y a su vez entendés los temas. En general nunca terminé de hacer ninguna consigna entera.

-Hacer un Diagrama de Actividad de testing (como armarías los tests, etc). En medio de todo eso, hablar de testing, niveles, tipo, casos de test, etc.

-Elegir 5/6 temas de la materia y ordenarlos en orden de formalidad. Esto me llevó a hablar de cada uno de los temas que elegí, justificando.

-Que diferencia existe entre el formalismo de los testings y el de los modelos que se ven en la materia (uno apunta al código y el otro al mundo real).

-3 diferencia y 3 similitudes entre FSM y Diagrama de Actividad.



Fue oral.

  • Como le explicarias a tu vieja que es y para que sirve la Ingenieria del Software?
  • Lo principal fue hacer un Modelo Conceptual de Testing, inclui herencia de casos de test para caja negra caja blanca, test de usabilidad, test funcional, test por coberturas, etc etc. Asociar casos de uso a los tests, como se relacionan entre si los tipos de test. Me dijo de limitar con un poco de OCL el modelo.
  • En orden de formalidad, ordenar los diferentes tipos de modelos, Maquinas de estado > modelo conceptual con ocl > diagrama de secuencia > casos de uso > modelo de objetivos
  • Hacer un diagrama de secuencia del proceso de correr un test o algo asì
  • Un detalle de las diferentes tipos de asociaciones entre entidades en el Modelo conceptual, la del rombo, rombo pintado, etc



Preguntas Diciembre 2013

Examen oral. Primero de a una persona, luego de a dos por falta de tiempo, pero sólo con un docente.

Estudiante A:

1) Hacer una FSM de la materia Ingeniería 1, muy simple, donde ignorás la inscripción y sólo te importa la aprobación del primer (y único) parcial y luego, si corresponde, rendir final (no hay recuperatorio).

2) Hacer una FSM parecida pero de IS2 donde se validen las correlatividades tp-tp y final-final.

3) "¿Cómo le das semántica a esta y cualquier otra máquina de estados? ¿Qué son las trazas?"

4) Charla informal. "Tenés testing para un problema donde testeaste el 60% de branches y el 40% de especificación", donde especificación vendría a ser el alcance del problema, tipo funcional. Preguntó qué pensaba, si era suficiente, qué modificaría o trataría de mejorar, etc... medio general. Luego, "Ahora tenés 95% de branches y 45% de especificación", desarrollar a partir de esa nueva situación. Luego, "¿Qué relación hay entre guardas y branches, o el resto?" (ver Subsumir).

Estudiante B:

1) Hacer Modelo Conceptual de Testing Funcional.

2) Hacer Diagrama de Actividad sobre la construcción y realización de 1).

(Acá se va Estudiante A)


  • explicar caso de uso con modelo conceptual
  • a partir de lo anterior completar la relación entre casos de uso y objetivos (usando modelo conceptual también)
  • a partir de lo anterior completar el modelo conceptual explicando un poco cómo testearía los casos de uso.
  • orden de formalidad casos de uso, mc (con OCL incluído) y máquinas de estado



Haceme un diagrama de clases con los siguientes conceptos: Andariveles Casos de Uso Actores Y otros 2 conceptos mas que no recuerdo Despues me preguntaron que pensaba que era mas formal si Casos de Uso o Diagrama de Secuencia.



  • Un Modelo Conceptual de Diagrama de actividad.
  • Despues completar el MC con la parte de Objetivos/Requerimientos
  • Un Diagrama de Actividad sobre Modelo conceptual.
  • Preguntas sobre testing relacionadas con Calidad



- Hacer un diagrama de actividad sobre algo relacionado con la materia que no me acuerdo - Ordenar según su formalidad, FSM, diagrama de actividad y diagrama de clases (no hay necesariamente una respuesta correcta, vale la justificación) - Diferencia entre test de caja negra y caja blanca. Si hice test de caja blanca efectivo sobre 99% del codigo, hace falta hacer test de caja negra? Pequeñas variantes sobre esto



1) Me pidió dibujar un círculo y una flecha, y me dijo que le de tres semánticas distintas para cada uno dentro de lo que vimos en la materia. Yo le dije:

1.1) Para el círculo: 1.1.1) FSM: un nodo, que equivale a un estado 1.1.2) CFG: un nodo, que equivale a una sentencia 1.1.3) DA: un nodo, que equivale a una actividad

1.2) Para la flecha: 1.2.1) DO: cuando une dos objetivos, significa que uno CONTRIBUYE a que se logre el otro. 1.2.2) FSM: una transición entre estados. 1.2.3) CU: cuando une un actor con un caso de uso, significa que el actor PARTICIPA en el caso de uso.

2) Me pidió que haga un diagrama de actividad relacionado al modelo conceptual. Le dije primero para que sirve el diagrama de actividad (básicamente, para describir un proceso de manera global), y que el modelo conceptual no es un proceso, define estructura. Le dije que lo que podía hacer era hacer un DA de como construír un diagrama de clases... y que no hay una sola forma de hacerlo, pero bueno, como para hacer algo.

El diagrama terminó siendo bastante simple, quería ver que sabía la semántica y la sintaxis, que sabía hacer un fork, un join, una decisión con un diamante y giladas.

Entre medio terminamos hablando de validar y verificar el modelo conceptual. Quedamos en que el modelo conceptual era validable con la realidad, y por ejemplo, si no era válido, hacíamos una actividad de "corregir" y volvíamos al principio. Si no, dábamos por terminado el proceso de creación del diagrama.

3) Me pidió hacer un diagrama conceptual del diagrama conecptual. Fuimos haciendolo juntos, discutiendo cosas. Hablamos de agregación y composición, de clases de agregación, de multiplicidades, de herencia. Me hizo hacer un mínimo ocl y explicar por qué era necesario.



1) Un modelo conceptual de un supermercado: el supermercado tenia gondolas, productos y sectores tipo "Lacteos", "Verduras", etc.

Yo hice conceptos Gondola, Producto y Categoria, relacionados binariamente entre ellos. Y luego con OCL dije que para una gondola, todos sus productos tienen que ser de la categoría de esa gondola.

Luego me pidió agregarle algo de sectores de expocición, que dependia del producto y de la gondola. Se lo hice con una clase de asociacion en la relación entre Gondola y Producto. Me pregunto si podía haber más de un nivel de expocición para una gondola y un producto y dije que no.

2) Siguiendo con el supermercado, me dijo modelar con FSM una situacion donde entras al super, y tenes que ir a la parte de verduleria, hacer la cola, y que te den las cosas, lo mismo con la carniceria y luego ir a la caja. En algun orden. Hice una fsm para cada sector, y luego otra fsm que diga que primero hago una cosa y luego otra, y que, por ejemplo, no puedo estar haciendo la cola de ambos sectores.

3) Me dijo de hacer lo mismo con D.A. y las diferencias. Le dije que con el fork lo podemos hacer, pero que no explicitamos el orden, y además surgió que con D.A. si parecía permitir hacer la cola en ambos lugares al mismo tiempo.

4) Algunas preguntas sueltas, como hacer para no pasar mas de cierto tiempo haciendo la cola: con temporizadores. Luego diferencia entre validacion y verificacion. Relación entre Actor y Agente. Yo dije que seguro era de uno a muchos en el sentido de que un Actor es un Rol, y por ende ese rol puede ser interpretado por muchos agentes. Creo que el me dijo que era de muchos a muchos, pero no entendi bien, creo que tiene que ver con la granularidad de los objetivos y los casos de uso.