2. Especificación de requisitos

Especificación de requisitos del sistema
Imagen en Wikimedia de ebnz bajo licencia Creative Commons

La primera fase o etapa de cualquier ciclo de vida de una aplicación informática es la denominada especificación de requisitos. El objetivo de la misma es doble:

  • Por un lado, se intentan identificar las necesidades del cliente para definir el problema a resolver.
  • Además, se realiza un estudio de viabilidad económico y técnico para decidir si son factibles las posibilidades de realización.

.

A) Definición del problema

Para intentar resolver el problema planteado en nuestra aplicación previamente es necesario definirlo detalladamente. Así tendremos que:

  1. Definir el ámbito y alcance del proyecto: de acuerdo con el cliente, debe quedar claro qué se debe resolver y qué queda fuera del alcance de dicho proyecto. Además, se deberán identificar los potenciales tipos de usuarios del sistema.
  2. Identificar y definir requisitos: descomponiendo el problema principal en subproblemas que deben detallarse completamente. Para conseguir esto, se emplearán las técnicas que se especifican a continuación.

.

B) Técnicas de definición del problema

Las principales técnicas que se usan en la práctica son dos: entrevistas y cuestionarios.

.

1. Entrevistas

La entrevista es la técnica principal para identificar las necesidades del cliente y, por tanto, poder definir el problema. Consiste en realizar de forma presencial una serie de preguntas al cliente con el fin de recoger la máxima información. En ocasiones, el cliente puede necesitar asesoramiento nuestro a modo de guía para ayudarle a "sacar" dicha información. Previamente a "sentarse con el cliente", se debe preparar qué preguntas hacer y qué tipo de preguntas emplear (abiertas, cerradas). Tras finalizar la entrevista, se analizarán las respuestas y se extraerán las conclusiones oportunas.

2. Cuestionarios

En ocasiones, no es posible preguntar físicamente de forma directa al cliente, en estos casos el cuestionario suele ser la técnica empleada para recabar la información. El hecho de no poder asesorar o no estar de forma presencial con el cliente para aclarar posibles dudas en las cuestiones a preguntar, se hace necesario emplear un estilo de redacción directo y con un lenguaje claro, que no de lugar a especulaciones o malentendidos en las preguntas. En ocasiones, los cuestionarios se usan como complementos a las entrevistas.

.

C) Productos de la especificación de requisitos

El Catálogo de Requisitos es el producto generado en esta primera etapa, en él se recogen de una forma organizada dos tipos de requisitos:

  • Requisitos funcionales: contienen aspectos relativos al comportamiento del sistema.
  • Requisitos no funcionales: contienen propiedades del sistema organizados en tres tipos:

- Restricciones: describen los límites del sistema.

- De funcionamiento: especifican el hardware y software necesarios.

- Manejo de excepciones: recogen los comportamientos anormales del sistema y sus tratamientos correspondientes.

.

D) Estudio de viabilidad

En este punto se trata de dar respuesta a la pregunta ¿es viable nuestro proyecto?, es decir, ¿podremos realizarlo?

Los pasos que se seguirán irán en función de la envergadura concreta del proyecto, sin embargo, en líneas generales:

  1. Se considerarán las posibles alternativas que solucionen el problema.
  2. Se evaluarán desde los puntos de vista técnico, económico y legal las diferentes alternativas consideradas.
  3. Se realizará una toma de decisión para seleccionar la alternativa más adecuada.

Objetivos

Documentación de la especificación de requisitos

La especificación de requisitos deberá tener la siguiente estructura formal:

1. Índice

2. Descripción del ámbito y alcance del proyecto.

3. Lista de usuarios participantes.

4. Descripción del sistema actual.

4.1. Modelo físico.

4.2. Lista de problemas y necesidades.

4.3. Diagrama de flujo de datos.

5. Catálogo (priorizado) de requisitos del sistema.

5.1. Funcionales.

5.2. No funcionales.

5.2.1. Restricciones.

5.2.2. De funcionamiento.

5.2.3. Manejo de excepciones.

6. Análisis de alternativas.

6.1. Descripción de la alternativa 1.

6.2. Descripción de la alternativa 2.

...

6.n. Descripción detallada de la alternativa seleccionada.

6.n.1. Modelo lógico de procesos.

6.n.2. Análisis coste-beneficio.

6.n.3. Diferencias con las demás alternativas.

7. Apéndices (si procede).