2 - Ingenieria y Gestion de Requerimientos

16
Ingeniería y Gestión de Requerimientos

description

Segunda Parte

Transcript of 2 - Ingenieria y Gestion de Requerimientos

Page 1: 2 - Ingenieria y Gestion de Requerimientos

Ingeniería y Gestión de Requerimientos

Page 2: 2 - Ingenieria y Gestion de Requerimientos

Técnicas de obtención de requerimientos.

obtención de requisitos consiste en obtener la lista de todos los requisitos que, idealmente, habría de satisfacer el sistema que se desea desarrollar.

Obtención de Requerimientos

Page 3: 2 - Ingenieria y Gestion de Requerimientos

Denominamos requisitos candidatos a los

requisitos obtenidos en esta primera etapa, ya que aún no hemos decidido si el sistema que se desea desarrollar los tiene que cumplir o no.

Obtención de Requerimientos

Page 4: 2 - Ingenieria y Gestion de Requerimientos

La técnica más básica para la obtención de requisitos es pedirlos a los stakeholders mediante el uso de algunas de las técnicas que comentaremos a continuación.

Obtención de Requerimientos

Page 5: 2 - Ingenieria y Gestion de Requerimientos

Brainstorming

Obtención de Requerimientos

El brainstorming es una técnica de creatividad para grupos que favorece la generación de ideas de manera colaborativa. La técnica original establece cuatro reglas:

 

1) Priorizar la cantidad por encima de la calidad de las ideas.   2) Retrasar las críticas y centrarse en extender las ideas presentadas o en presentar otras nuevas.

 

3) No rechazar ideas inusuales.   4) Combinar y mejorar ideas.

Page 6: 2 - Ingenieria y Gestion de Requerimientos

Brainstorming: el proceso de Brainstorming

consiste en cuatro pasos:1) Crear el grupo de trabajo (intentando que sea lo más diverso posible para tener el máximo de puntos de vista). 2) Brainstorming inicial, donde se proponen tantas ideas como sea posible.3) Organizar y consolidar el conjunto inicial identificando duplicidades.4) Refinar y documentar la lista definitiva.

Obtención de Requerimientos

Page 7: 2 - Ingenieria y Gestion de Requerimientos

Modelado de roles de usuario.

El modelado de roles de usuario es una técnica orientada a la identificación del tipo de usuario del sistema, que habitualmente se aplica en forma de brainstorming.

La idea básica de esta técnica es que, en lugar de buscar los requisitos de todos los usuarios individuales del sistema, los podemos agrupar según el rol y asumir que todos los usuarios individuales que tienen el mismo rol ante el sistema tendrán requisitos parecidos.

Obtención de Requerimientos

Page 8: 2 - Ingenieria y Gestion de Requerimientos

Entrevistas y cuestionarios.

Esta es una de las técnicas más utilizadas para la obtención de requisitos. Consiste, obviamente, en entrevistarse con los stakeholders para obtener directamente de ellos los requisitos que tienen sobre el sistema que hay que desarrollar

Obtención de Requerimientos

Page 9: 2 - Ingenieria y Gestion de Requerimientos

Las claves para que la entrevista sea

productiva son.1) Elegir correctamente a los entrevistados2) Evitar las respuestas condicionadas3) Evitar respuestas limitadas por el conocimiento actual4) Aportar información sobre el coste de las alternativas

Obtención de Requerimientos

Page 10: 2 - Ingenieria y Gestion de Requerimientos

Observación y prototipado.

El prototipado consiste en construir un software con un aspecto similar al del producto final, aunque en su construcción, el objetivo principal es obtener algo lo más pronto posible al mínimo coste. Por eso, a menudo se usan herramientas y lenguajes de programación específicos para la creación de prototipos.

Obtención de Requerimientos

Page 11: 2 - Ingenieria y Gestion de Requerimientos

Observación y prototipo.

Lo que distingue un prototipo del producto final es que el prototipo se usa para recoger información sobre el uso del producto pero nunca se aprovecha nada de la construcción del prototipo para la construcción del producto final.

Obtención de Requerimientos

Page 12: 2 - Ingenieria y Gestion de Requerimientos

Observación y prototipo.

El prototipado, sin embargo, presenta dos inconvenientes importantes: por un lado, el coste de construir un prototipo no es trivial y, por el otro, puede dar una falsa sensación de producto final (a veces es difícil justificar que se tardará seis meses en tener implementada una funcionalidad que el cliente “ha visto” funcionar).

Obtención de Requerimientos

Page 13: 2 - Ingenieria y Gestion de Requerimientos

Observación y prototipo.

Por todo lo cual, la experimentación se hace, a menudo, con modelos de la interfaz o maquetas.

La principal ventaja de las maquetas es que son más baratas de hacer que un prototipo, ya que no se detalla el aspecto visual de las pantallas (ya menudo, como en el ejemplo de la figura, se simulan estas pantallas con un dibujo a mano alzada).

Obtención de Requerimientos

Page 14: 2 - Ingenieria y Gestion de Requerimientos

Observación y prototipo.

Otra ventaja de las maquetas es que son un elemento de comunicación muy útil, ya que no hay que estudiar ninguna notación concreta y, por tanto, la pueden usar tanto los stakeholders y responsables de producto, como los diseñadores gráficos o los desarrolladores.

Obtención de Requerimientos

Page 15: 2 - Ingenieria y Gestion de Requerimientos

Observacion y prototipo.

En algunos entornos ágiles (por ejemplo, empresas “start-up” de Internet), incluso se utilizan las maquetas como elemento principal de comunicación de los requisitos en un ciclo de desarrollo similar a este:

Obtención de Requerimientos

1) Se crea una maqueta de la funcionalidad que se quiere implementar. 2) Se distribuye la maqueta a los stakeholders y se recoge su impresión. 3) Se implementa la funcionalidad y se añade al incremento del producto correspondiente a la iteración actual.

Page 16: 2 - Ingenieria y Gestion de Requerimientos

Listas predefinidas.

Otra técnica es la de utilizar listas predefinidas de requisitos que nos pueden ayudar a no pasar por alto algunos requisitos que son habituales en la mayoría de sistemas.

Esta técnica es especialmente útil para los requisitos no funcionales, ya que, como hemos visto anteriormente, estos son independientes del comportamiento del sistema.

El estándar IEEE-830 incluye una de estas listas. Otra plantilla con una lista predefinida de requisitos no funcionales es la plantilla Volere

Obtención de Requerimientos