Sie sind auf Seite 1von 3

Requerimientos No Funcionales: Porque son

importantes

Todos los Servicios de Tecnologa de Informacin (TI) en algn punto de su ciclo de vida, necesitan
considerar los requerimientos no funcionales y las pruebas asociadas a los mismos. Para algunos
proyectos, estos requerimientos implican una cantidad considerable de trabajo y esfuerzos,
mientras que para otros no.
Con frecuencia, los requerimientos no funcionales son ignorados o subestimados en la fase de
anlisis. El error, termina identificndose en la fase de implementacin cuando remediarlos implica
ms trabajo y costo, pudiendo ocasionar que no sean adoptados por los usuarios y clientes.
En este artculo se presenta una definicin de que son los requerimientos no funcionales de un
servicio de tecnologa de informacin o un sistema, se describen las categoras en las que pueden
clasificarse, las posibles consecuencias de no definirlos en la fase de Diseo y algunos ejemplos
de requerimientos no funcionales.
Que son los Requerimientos No Funcionales
Los requerimientos no funcionales son los que especifican criterios para evaluar la operacin de un
servicio de tecnologa de informacin, en contraste con los requerimientos funcionales que
especifican los comportamientos especficos. Por lo general, el Plan para implementarlos
requerimientos no funcionales se detalla en la Arquitectura del Sistema, mientras que el de los
requerimientos funcionales se especifica en el Diseo.
Los Requerimientos funcionales definen los criterios que este debe cumplir para que este sea
adecuado para su propsito (Fitness-for-purpose), mientras que los requerimientos no funcionales
especifican los criterios que debe cumplir para que sea adecuado para su uso (Fitness-for-use).
Otros trminos usados para los requerimientos no funcionales pueden ser: Restricciones, Atributos
de calidad, objetivos de calidad, requerimientos de calidad de servicio.
Categoras en las que pueden clasificarse
Se pueden clasificar en dos categoras:

Cualidades observables en tiempo de ejecucin, como por ejemplo la usabilidad y la


seguridad.

Cualidades relacionadas con la evolucin del sistema, como por ejemplo Mantenibilidad,
Comprobabilidad, Extensibilidad y Escalabilidad, las cuales estn inmersas en la estructura
del sistema de software.

Algunos Requerimientos No Funcionales


Algunos ejemplos de requerimientos no funcionales son:

Comprobabilidad: Grado en que un sistema, software o servicio de TI permite y facilita


que sea probado en un determinado contexto.

Disponibilidad: Corresponde al tiempo total en que un sistema puede ser usado en un


perodo determinado. Tambin puede definirse el grado en que un sistema est en un
estado operable definido cada vez que se necesite.

Extensibilidad: Grado en que la implementacin del sistema toma en consideracin y


facilita su crecimiento en el futuro.

Escalabilidad: Capacidad de un sistema o servicio de TI de manejar una creciente carga


de trabajo, por ejemplo mayor nmero de conexiones o usuarios. No debe confundirse con
extensibilidad, que mide la capacidad del sistema de crecer en funcionalidades.

Mantenibilidad: Mide la facilidad con que puede darse mantenimiento al producto (en este
caso al software o servicio de TI), con la finalidad de: Desarrollar nuevos requerimientos,
Aislar los defectos y sus causas, corregir estos defectos y atender las demandas del
entorno cambiante.

Seguridad: Grado de proteccin de los datos, software y plataforma de tecnologa de


posibles prdidas, actividades no permitidas o uso para propsitos no establecidos
previamente.

Usabilidad: Definido como la facilidad de uso y aprendizaje de un Sistema, Software o


Servicio de Tecnologa de Informacin.

Necesidad de definir los requerimientos no funcionales en trminos precisos y que puedan


medirse
Para todo proyecto de TI, es crtico que los requerimientos no funcionales sean definidos con los
usuarios, clientes y otros interesados en trminos precisos y medibles en la etapa de anlisis del
proyecto. No hacerlo puede poner en riesgo el xito de un proyecto.
Por ejemplo, tomando el caso de los tiempos de respuesta de un sistema, lo cual podra
clasificarse en disponibilidad, que sucedera si no se definiera el tiempo de respuesta deseado en
la fase de anlisis?, o si se definiera en trminos imprecisos, como por ejemplo indicado, "Se
necesita un tiempo de respuesta aceptable".
Al llegar a la fase de implementacin, quizs en sistema tendra un tiempo de respuesta, digamos
de 15 segundos(debido a muchas plataformas remotas y bases de datos involucradas), pero el
usuario lo necesitaba en menos de 5 segundos, para por ejemplo, evitar que se forme una fila muy
larga para atender a clientes.
Errores como esto pudieran ocasionar inclusive que el usuario final decidiera no usar el nuevo
sistema, haciendo fracasar el proyecto.
Por ende, es importante definir los requerimientos con mtricas que puedan establecer sin lugar a

duda que el sistema o servicio de TI desarrollado cumple los parmetros no funcionales solicitados.
Otros requerimientos no funcionales:
Otros requerimientos no funcionales pueden ser: Accesibilidad, Capacidad, Cumplimiento,
Documentacin, Requerimientos de despliegue, Efectividad, Eficiencia, Tolerancia a fallos,
Modificabilidad, Operabilidad, Portabilidad, Confiabilidad, entre otros.