Les exigences non fonctionnelles (NFRs) sont des aspects critiques de conception du système that define how a system performs under various conditions, rather than what the system does. These requirements encompass a wide range of attributes, including usability, reliability, performance, security, and compliance with standards. Unlike functional requirements, which specify the specific functions or features of a system, NFRs focus on the quality and constraints of those functions.
Par exemple, une exigence fonctionnelle pourrait state that a user must be able to log in to a system, while a corresponding NFR could specify that the login process must occur within two seconds and must not exceed three failed attempts for security reasons. Other common NFRs include:
- Performance : La rapidité avec laquelle un système répond aux entrées de l’utilisateur ou traite des données.
- Scalabilité : The ability to handle growth in users or data volume without performance degradation.
- Sécurité : Measures and protocols pour protéger les données et maintenir la confidentialité des utilisateurs.
- Facilité d'utilisation : La facilité et l’intuitivité avec lesquelles le système peut être utilisé par les utilisateurs.
- Fiabilité : The system’s ability to operate consistently over time sans défaillance.
Comprendre et spécifier les NFRs est essentiel tout au long du développement logiciel lifecycle, as they can significantly impact user satisfaction and system success. They also play a crucial role in testing and validation processes, ensuring that a system not only meets its functional requirements but also provides a satisfactory user experience and complies with necessary standards and regulations.