Hola entregada en el parcial con dudas de preguntas

Hola entregada en el parcial con dudas de preguntas

de Diego Vallespir -
Número de respuestas: 0

Hola, qué tal?

Ya revisamos las hojas escritas que entregaron en el parcial con comentarios sobre las preguntas.
Muchos comentarios eran acertados y coincidían con las respuestas correctas. Otras comentarios no eran acertados y está, claramente, explicada la respuesta en el teórico del curso.

Pero, tres preguntas vale la pena aclararlas. Dos las dejo por aquí y la tercera corresponde al hilo que hay sobre características de los requisitos y ya estamos por enviarles la respuesta.

Por favor, si tienen alguna otra duda. O si sienten que luego de volver al teórico sobre cierta pregunta no les queda clara una opción, lo pueden comentar en el foro sin ningún problema. Les aclaro que realmente no se necesitan mensajes de "Me pasó lo mismo" o "apoyo al compañero". Con un mensaje claro de cuál fue el problema nosotros revisamos la pregunta y no nos importa cuántos contestaron bien o mal, sino analizar el problema y actuar según entendemos que es mejor actuar. Por supuesto que quien quiera complementar algo de alguna visión o agregar otro problema en la misma pregunta está bien que lo haga.

Las preguntas que aquí se comentan son la 4 y la 17.

Pregunta 4

Seleccione la afirmación correcta:

a) Los procesos iterativos e incrementales logran liberar incrementos (versiones) al cliente al menos una vez por mes.

b) Los roles, en la especificación de un proceso de desarrollo, normalmente definen las habilidades y las responsabilidades que deben poder llevar adelante las personas de los equipos de desarrollo. Buscan definir quién (con qué rol) hace qué (actividades, tareas, etc.).

c) b) y el desarrollo incremental propone que cada incremento alcanzado (que surge de cada iteración) sea entregado al cliente para que pueda comenzar a utilizar el incremento construido.

d) Los métodos ágiles se basan fuertemente en el concepto de velocidad. Este concepto indica que el desarrollo de software no debe ser postergado o suspendido por actividades externas al equipo; es decir, mantener la velocidad siempre. Se busca registrar esta velocidad para luego poder planificar las iteraciones o Sprints.

La correcta es la b).

La respuesta c) dice que en el desarrollo incremental todo incremento alcanzado por iteración se entrega al cliente para su uso. Ese uso puede tener varias interpretaciones. La correcta es la que está atada a la entrega (delivery). Es decir, se entrega para su uso en producción (luego de aceptado). Pero, también podría interpretarse como "lo usa el cliente para testear el incremento pero no como incremento entregado para producción". Si bien es una interpretación posible (y no a la que estaba orientada la pregunta), incluso en ese caso es falsa. El desarrollo incremental no indica que todo incremento finalizado en una iteración deba ser usado (de alguna forma) por el cliente. Es decir, pueden existir incrementos de uso interno y que el cliente ni siquiera llega a "ver".

Pregunta 17

17. Respecto al nivel de detalle con que deben escribirse las historias de usuario:
a)   Una historia de usuario se escribe en alto nivel y los detalles los obtendrán el equipo de desarrollo y el de verificación de la conversación con el cliente y en ningún caso será necesario registrarlos por escrito.
 b)   Una historia debe ser escrita con todos los detalles necesarios para poder ser implementada y verificada adecuadamente.
 c) Una historia se escribe en alto nivel y luego los detalles necesarios para implementarla y probarla se especifican en los criterios de aceptación.
 d)   No es posible que los desarrolladores produzcan una estimación razonable del esfuerzo necesario para la implementación de una historia a menos que cuenten con criterios de aceptación detallados de ella.

Una historia de usuario describe en alto nivel el uso del sistema. Independientemente de que se consideren los criterios o las pruebas de aceptación como parte de la historia (como hace Cohn), los tres autores vistos (Sommerville, Wiegers y Cohn) coinciden en que en un primer momento, la historia se escribe en alto nivel —y se coloca en el product backlog—, con el nivel de detalles suficiente para que el cliente la pueda entender y priorizar y los desarrolladores la puedan estimar; luego se refina y posteriormente se relevan los detalles en la conversación, cuando se la seleccione para implementarla en la iteración siguiente.

Ciertamente, al momento de implementarla o probarla, el desarrollador o el verificador deberá saber qué desarrollar y qué probar. Pero no es verdad, como indica la opción b), que la historia *se deba escribir* con todos los detalles para poder ser implementada y verificada adecuadamente. Sommerville señala que los usuarios expertos suelen omitir algunas cosas al describir la funcionalidad (pág. 80). Cohn señala que no es necesario incluir todos los detalles importantes (pág. 18) y reiteradamente recomienda diferir hacerlo hasta que sea necesario. Además, incluso sugiere empezar escribiendo _goal stories_, que reflejen metas de alto nivel (pág. 75).
De la misma manera, la historia tiene que ser testeable, pero eso para poder ser confirmada, en el momento en que sea necesario hacerlo.


Saludos y espero les haya ido bien en el parcial,
Diego.