La obtención de requisitos es uno de los pasos más importantes para poder generar un software que le guste a tus clientes, que se adecúe a lo que los stakeholders esperan que haga ese software.
Para esto presentamos las técnicas más comunes que se utilizan para obtener todos los requisitos candidatos, que serán los requisitos que todos los implicados querrán que tenga tu aplicación.
Qué después serán debatidos y descartados y generalmente solo se podrán desarrollan una parte de esos requisitos, que antes habrán sido modelados.
Técnicas de obtención de requisitos
En esta fase vamos a obtener el mayor número de requisitos, que denominaremos requisitos candidatos, estos serán todos los requisitos que hayamos conseguido de los stakeholders.
A continuación veremos las técnicas que se pueden usar para obtener los requisitos candidatos.
Brainstorming
Esta técnica parte de la creatividad de los integrantes de un grupo de usuarios. Se trata de aportar ideas teniendo en cuenta varías pautas:
- – Aportar más cantidad que calidad.
- – Pasar la critica a un segundo plano.
- – No eliminar ideas raras.
- – Combinación de las ideas.
Modelado de roles
Esta técnica consiste en distinguir los distintos roles de los implicados o stakeholders de la aplicación, primero distinguimos cada grupo de stakeholders y después describimos cada requisito candidato que quiere cada grupo de usuarios.
Conseguiremos así agrupar todos los requisitos candidatos de todos los tipos de usuarios.
Entrevistas y cuestionarios
Esta es una de las técnicas más utilizadas por los desarrolladores, se trata de hacer entrevistas y en base a esas entrevistas crear formularios en los que puedan seleccionar lo que realmente quieren.
Estos formularios se pasan entre los entrevistados y mediante la elección de las respuestas de los implicados elaboraremos los requisitos candidatos.
Observación y prototipos
Esta técnica consiste en crear un prototipo en base a los requisitos candidatos que los distintos stakeholders hayan mencionado, este prototipo tiene que ser realmente fácil de hacer y que tenga el coste mínimo ya que solo servirá para selecionar los requisitos del producto final.
Por todo esto los prototipos tienen que ser de rápida construcción ya que generalmente no se puede aprovechar ninguna pieza de software que se ha utilizado para el prototipo.
Listas predefinidas
Estas listas predefinidas generalmente valen no pasar por alto alguno de los requisitos que se han incluido en la mayoria de los proyectos similares.
Nuevos requisitos
En esta etapa es cuando los stakeholders ven requisitos de la aplicación que son complicados de identificar antes de que estuviese hecha la aplicación.
Debemos de estudiar que requisitos o mejoras puede tener la aplicación después de que este hecha para poder identificar estos requisitos.
Podemos distinguir distintos tipos de requisitos:
- De innovación en el servicio
- Ofrecer más información
- Ofrecer más participación
- Ofrecer más alternativas
Soluciones pre-existentes
En la actualidad se integran muchas soluciones preexistentes de software como parte de la solución al producto que quiere realizar el cliente.
Hay muchas piezas de software o servicios que ya están hechas y que solo necesitan integrarse en el producto final.
Podemos encontrarnos diferentes tipos de software COST, entre ellos:
- Platform as a Service (PaaS)
- Infrastructure as a Service (IaaS)
- Software as a Service (SaaS)
Es en esta etapa es dónde debemos de pensar que software COST podemos añadir que cubra parte o la totalidad de los requisitos.
Objetivos
Los objetivos son aquellas funcionalidades que quiere conseguir un stakeholder, y los requisitos se definen como los requirimientos que necesitamos para conseguir los objetivos.
La relación es muy fina, muchas veces necesitamos muchos requisitos para cumplir un objetivo.
Podemos distinguir tres tipos de objetivos, que podemos descomponer de mayor a menor:
- Objetivos generales
- Objetivos de usuario
- Objetivos de tarea
Para descomponer objetivos podemos utilizar la técnica de los cinco porqués, que trata de hacer preguntas desde el objetivo general para ir mostrando cada vez más objetivos y tareas pequeñas.