Los rquerimientos no funcionales son por lo general exigencias de los clientes o usuarios que no tienen que ver con la información o procesos que va a contener el sistema. Si afectan al sistema, pero más bien a la percepcion de calidad de este. En algunos si afectan el funcionamiento del software cuando estos no se cumplen.
Ejemplos serían:
- rendimiento
- disponibilidad
- seguridad
- accesibilidad
- usabilidad
- estabilidad
- portabilidad
- costo
- operatividad
- interoperabilidad
- escalabilidad
- concurrencia
- mantenibilidad
Que un requerimiento funcional no se cumpla, implica que no se cumplen los requisitos del sistema, y afecta al sistema en distinto grado, pero sigue siendo un requerimiento no funcional.
Hay que tener cuidado eso si en definir bien si es un requerimeinto funcional o no funcional. Cuando tiene que ver con una salida de datos y presentacion de información eso es un requerimiento funcional.
Ejemplo:
Concurrencia: El sistema debe proveer la capacidad de 2000 usuarios concurrentes el mismo minuto.
Disponibilidad: 24×7 es para sistemas online que debiese estar el 100% del tiempo disponible para el usuario, 9×5 serían por ejemplo sistemas transaccionales ocupados en horarios laborales de lunes a viernes.
Rendimiento: El software debe consumir sòlo hasta un 60% de CPU