Les exigences fonctionnelles décrivent ce que le système doit faire : opérations commerciales, processus, scénarios utilisateur - c'est-à-dire fonctionnalité.
Les exigences non fonctionnelles définissent comment le système doit fonctionner : restrictions, paramètres de qualité, performance, sécurité, convivialité, etc. Ces exigences influencent souvent le choix des technologies, l'évolutivité et la résilience de la solution.
Pourquoi est-il important de faire la distinction :
Caractéristiques clés :
L’« ergonomie de l'interface » entre-t-elle dans les exigences fonctionnelles ?
Non, c'est un paramètre non fonctionnel (usabilité). Une exigence fonctionnelle serait la présence, par exemple, d'un bouton « Enregistrer », une exigence non fonctionnelle serait la rapidité de sa réponse et sa simplicité d'utilisation.
Peut-on négliger les exigences non fonctionnelles si elles ne sont pas spécifiées par le client ?
Non. L'analyste doit discuter et formaliser même les exigences non fonctionnelles implicites, sinon le risque d'échec du lancement, de plaintes des utilisateurs et de coûts supplémentaires augmente.
« Le système doit être capable de traiter 1000 requêtes par minute ». Est-ce une exigence fonctionnelle ?
Non, c'est une exigence non fonctionnelle - une caractéristique de performance.
Cas négatif : Le système a entièrement réalisé la fonctionnalité commerciale déclarée, mais en cas de forte charge, il a commencé à "ralentir", car la performance n'a pas du tout été prise en compte. Avantages :
Cas positif : L'analyste, en collaboration avec l'architecte et le client, a documenté dans les exigences la charge maximale, les critères de réponse et a effectué des tests de charge. Avantages :