Requerimientos

¿Qué es un requerimiento? 

Es una capacidad es decir una característica del software que necesita el usuario para solucionar un problema o alcanzar un objetivo.

Es una característica que debe poseer el sistema o un componente de éste para satisfacer el contrato, la especificación, el estándar, u otra documentación formalmente impuesta.

Niveles de requerimientos 


Dominio del problema 

Necesidades del negocio: Representa las necesidades de los usuarios y otros involucrados. Puede estar asociado a un problema operacional o una oportunidad del negocio.

Dominio de la solución

Características del sistema: Comunica la solución de alto nivel a los involucrados. Son los servicios que el sistema proporcionara para satisfacer las necesidades.

Requerimientos del software: Describe de manera más eficiente la solución. Canaliza las características en soluciones de software especificas.

Clasificación de requerimientos

Explícitos: Es un requerimiento que se expresa y se registra, que se entendió, se expreso ambas partes y se llego a un acuerdo.

Implícitos: Son requerimientos que no se dice, no se expresan y se toman como obvias.

Requerimientos de usuario: se van a declarar que se expresan de forma visual una característica o comportamiento que debe proporcionar el sistema.

Requerimientos de sistema: son requerimientos que se especifica y detalla de lo que va hacer el sistema y va orientado al personal técnico y a administradores del proyecto.

Tipos de requerimientos


Funcionales: Servicios que debe proporcionar el sistema. Su objetivo principal es describir la interacción entre el sistema y su ambiente es decir la funcionalidad de éste.

No Funcionales: Califican a los servicios que debe proporcionar el sistema, son llamados también requerimientos de restricción.

Tipos de requerimientos no funcionales


1. Requerimientos no funcionales de desempeño: Define restricciones de tiempo respecto a los servicios que debe proporcionar el sistema donde dichos servicios deben terminar dentro de los limites de tiempo especificado.

2. Requerimientos no funcionales de confiabilidad y disponibilidad:
-Confiabilidad: Este requerimiento especifican la confiabilidad en términos cuantificados. Este tipo de requerimiento reconoce que es un poco probable que las aplicaciones sean perfectas por lo que circunscribe su grado de imperfección.
-Disponibilidad: Cuantifica el grado en el que la aplicación debe estar disponible para los usuarios.

3. Requerimiento no funcionales de manejo de errores: Explica cómo debe responder la aplicación a los errores en su entorno.

4. Requerimientos no funcionales de interfaz: Especifica aquellas características de la interfaz de usuario que permiten que el software sea fácil de entender, aprender, y con el  cual el usuario pueda desempeñar su tarea eficientemente.
-Interfaz de software: Conecta el software con una interfaz.
-Interfaz de hardware: Dispositivo físico para conectar dos tipos de hardware.

5. Requerimientos no funcionales de restricción: Estos requerimientos "describen los limites o condiciones para diseñar o implementar la aplicación."Cabe aclarar que estos requerimientos, sólo especifican las condiciones que el cliente impone al proyecto, el entorno u otra circunstancia.

Estructura de un requerimiento

Cada requerimiento deberá ser una frase corta. Se construirá como una sentencia simple:

<Sujeto> + <Verbo en futuro> + <Complemento>
Ejemplo: El sistema deberá aplicar el articulo 33 del RGI a fin de no permitir que un alumno se inscriba más de dos veces en una misma asignatura en forma ordinaria.

Redacción de requerimientos

1.- Deberá mantener sentencias y párrafos cortos.
2.- Apropiada gramática, ortografía y puntuación.
3.- Hacer un glosario.
4.- Utilizar términos consistentes definidos en el glosario.
5.- El sistema debe, deberá... seguidas de una acción.
6.- Para evitar ambigüedades no usar: amigable, fácil, simple, rápido, fuerte, superior, aceptable, robusto.
7. Y si se encuentra "y", "o", "etc", esto puede representar varios requerimientos.

Comentarios