Exigences

Les exigences définissent ce qu’un produit doit faire — une attente documentée du résultat de la mise en œuvre d’un projet. Ce document consigne les attentes du client ainsi que celles du développeur concernant le programme, ses fonctions et le projet dans son ensemble. Les exigences englobent les caractéristiques, le coût, le calendrier et les risques. Ainsi, les exigences représentent un énoncé de ce que vous devez développer, ou une description quantitative précise de ce que vous attendez d’obtenir à l’issue de la mise en œuvre du projet. Une mauvaise définition des exigences est la principale cause de problèmes lors de l’exécution du projet.

Les exigences précisent ce qui doit être fait, à quel niveau de qualité, et sous quelles contraintes. Si les exigences sont erronées, le projet et le produit seront défectueux. Les exigences, les contraintes et les hypothèses décomposent le problème en parties. Cela déterminera le succès global du projet.

Types d’exigences :

  • Les exigences fonctionnelles définissent ce qu’un élément donné du système doit faire.
  • Les exigences de performance définissent les paramètres quantitatifs des fonctions correspondantes exécutées par le système.
  • Les exigences de contrainte découlent des limitations des modes de fonctionnement, des conditions environnementales, des considérations de sécurité ou de la conformité réglementaire.
  • Les exigences de vérification apportent la confiance que le système possède les caractéristiques spécifiées dans son environnement opérationnel réel.
  • Les exigences d’interface définissent les fonctions, caractéristiques, tolérances et contraintes de toutes les interfaces.
  • Les exigences opérationnelles précisent l’état de préparation opérationnelle du système, en mettant l’accent sur ses performances, tout en définissant la manière dont le système interagit avec les utilisateurs.

Dans la littérature anglophone, l’acronyme SMART est utilisé pour retenir les caractéristiques d’une bonne exigence.

  • Spécifique — une exigence ne doit porter que sur une seule caractéristique du projet ou du système. Elle doit être formulée en termes de ce qui doit être fait et à quel niveau de qualité, mais jamais en termes de solution possible — comment le faire.
  • Mesurable — un paramètre mesurable s’exprime de manière objective et quantitative.
  • Réalisable — une exigence doit être techniquement réalisable à un coût raisonnable.
  • Pertinente — une exigence doit correspondre au niveau choisi du système.
  • Traçable — les exigences de niveau inférieur doivent découler explicitement des exigences de niveau supérieur et/ou être justifiées par elles. Les exigences sans exigence « parente » sont considérées comme des « orphelines » et leur nécessité doit être évaluée.

Nécessité. En cas de doute sur la nécessité d’une exigence, il suffit de se demander : « Quel préjudice subirait le système si cette exigence n’était pas incluse dans la liste ? » Si vous n’avez pas de réponse, l’exigence est probablement inutile.

Vérifiabilité. Dès qu’une exigence est formulée, il est nécessaire de déterminer comment elle peut être vérifiée. Pour cela, un critère de conformité approprié doit être choisi.

Faisabilité. Pour être réalisable, une exigence doit être techniquement faisable dans le calendrier et le budget donnés, sous réserve de contraintes supplémentaires. En cas d’incertitude quant à la faisabilité technique d’une exigence, une étude appropriée ou des investigations complémentaires doivent être menées. Si l’incertitude persiste malgré cela, il convient de formuler un objectif plutôt qu’une exigence. Il est clair que même si une exigence est techniquement faisable, elle peut être irréalisable en raison du coût, du calendrier ou d’autres contraintes telles que le poids. Il est inutile de formuler une exigence pour quelque chose qu’il est impossible d’accomplir ; il faut être pragmatique.

Clarté. Chaque exigence doit exprimer une seule idée et être concise et simple. Il est important que l’exigence soit claire et sans ambiguïté. De bonnes exigences ne nécessitent souvent rien de plus que des phrases simples.

Une exigence doit être formulée de manière positive et ne doit jamais commencer par une négation. Elle doit être grammaticalement correcte, sans fautes de frappe ni omissions. Une terminologie cohérente doit être utilisée à tous les niveaux du système.