Qu'est-ce que la gestion des exigences ?

La « gestion des exigences » (Requirements Engineering - RE) est le processus systématique de collecte, de documentation et de gestion des exigences relatives à un système ou à un produit à développer. Ce processus constitue la base de l'ensemble du développement. Il garantit, d'une part, que toutes les parties prenantes ont une compréhension claire des objectifs et des exigences du projet et, d'autre part, que la solution est alignée sur les besoins des parties prenantes. L'objectif de la gestion des exigences est d'apporter de la clarté et de la structure avant le début du développement. 

Pour de nombreux projets, une collecte et une documentation de qualité des exigences sont centrales – et pas seulement dans le développement de logiciels. 

Que sont les exigences, également appelées « requirements » ?

Une exigence est une propriété ou un comportement souhaité du système à développer. Les exigences constituent la « source unique de vérité » (Single Source of Truth) et forment ainsi la base de l'estimation, du développement, des tests et de la réception d'un produit.

Nous distinguons ici différents types d'exigences, en particulier les « functional » et « non-functional requirements », c'est-à-dire les exigences fonctionnelles et non fonctionnelles.
Une exigence fonctionnelle (sous forme d'une user story) peut être formulée comme suit :
« En tant qu'utilisateur ou utilisatrice, je peux saisir mon adresse e-mail dans un champ de texte afin de recevoir un lien pour récupérer mon mot de passe ».

Il s'agit d'une description (simplifiée) d'une fonction dans une application ou tout autre produit numérique. À l'inverse, les exigences non fonctionnelles concernent par exemple l'hébergement, l'analyse, la migration des données, les spécifications de performance et bien d'autres aspects. Tous ces thèmes n'ont aucun rapport direct avec les fonctions et les caractéristiques d'une application, mais ils sont tout aussi importants.

Pourquoi la gestion des exigences est-elle si importante ?

Clarté et transparence : Grâce à des définitions précises, les équipes de design et de développement savent exactement ce qui doit être mis en œuvre. Cela évite les malentendus et réduit le risque d'erreurs et de surcoûts à un stade ultérieur. Les exigences constituent le fondement de toute la réalisation.

Planification efficace et estimation des coûts : Des exigences claires permettent une estimation réaliste de l'envergure du projet et des ressources nécessaires. Plus les exigences sont détaillées, plus nous pouvons estimer avec précision l'ampleur du travail de mise en œuvre. Ainsi, les calendriers et les budgets peuvent être planifiés et respectés rigoureusement.

Assurance qualité : Une gestion des exigences bien menée garantit que le produit final correspond aux attentes des parties prenantes et présente les fonctions et caractéristiques souhaitées. Les critères d'acceptation font également partie des exigences. Ils définissent les conditions dans lesquelles une exigence est considérée comme remplie et sont essentiels pour l'assurance qualité.

Minimisation des risques : L'identification et la clarification précoces des exigences permettent de détecter les risques et problèmes potentiels dès la phase de planification et de les traiter en conséquence.

Comment les exigences sont-elles documentées et traitées ?

Les exigences sont documentées sous forme de ce que l'on appelle des epics, des features und des user stories. Celles-ci suivent un modèle clairement défini :

Un epic est une unité de travail plus large qui décrit une exigence globale pour un produit. Par exemple : « Les personnes utilisant le système peuvent créer un profil. » En règle générale, plusieurs features composent un epic.

Les features sont un peu plus détaillées que les Epics, mais décrivent encore à un niveau assez général ce qu'un produit doit pouvoir faire. L'Epic « Créer un profil » pourrait par exemple se composer des features « Saisir un nom d'utilisateur ou d'utilisatrice » et « Télécharger une photo de profil ».

Les features sont ensuite subdivisées en user stories et décrites de manière encore plus détaillée. Les user stories décrivent le résultat final souhaité du point de vue de l'utilisateur ou de l'utilisatrice final. Pour la feature « Télécharger une photo de profil », on pourrait par exemple formuler les user stories suivantes :

« En tant qu'utilisateur ou utilisatrice, je souhaite pouvoir sélectionner et télécharger une image depuis ma galerie photo, afin que mon profil soit plus personnel. »

« En tant qu'utilisateur ou utilisatrice, je souhaite pouvoir recadrer l'image sélectionnée avant de la télécharger, afin de pouvoir utiliser la zone de l'image souhaitée. »

La manière dont la documentation est effectuée dépend souvent de ce qui doit être fait ensuite avec les exigences. Si l'objectif est par exemple une première estimation des coûts, une liste dans un Google Sheet ou un fichier Excel est souvent le plus simple. Lorsque les exigences sont mises en œuvre, elles sont transférées dans un outil de suivi des tickets qui aide à la planification et offre des fonctions pour répartir les exigences sur les différentes phases du projet (sprints). Nous utilisons pour cela ClickUp ou les systèmes que nos clients emploient, tels que Jira ou Azure DevOps – nous sommes expérimentés et flexibles à cet égard.

Voici comment nous procédons chez Apps with love en matière de la gestion des exigences

Nous attachons une grande importance à ce que la gestion des exigences soit un processus collaboratif et compréhensible, même pour les personnes qui ne sont pas familières avec le développement de logiciels. Selon le point de départ, nous t'aidons de A à Z ou nous analysons, challengeons et validons les exigences existantes. Pour cela, nous utilisons différents outils : une grande partie du travail se fait en ateliers et, pour la validation, nous misons sur la recherche documentaire et la recherche d'utilisation (User Research). Une fois les exigences définies, les étapes suivantes sont planifiées : selon la méthodologie du projet, il s'agit ensuite de visualiser les exigences ou, dans une approche agile, de les répartir sur des sprints, souvent à l'aide du Story Mapping.

Digital User Story Mapping
Nina Wehrli Nina Wehrli

"Grâce à l'utilisation du User Story Mapping au début du projet, nous savions exactement quelles fonctionnalités notre plateforme devait contenir. Cette méthode permet de se mettre plus facilement à la place d'un utilisateur et d'imaginer les exigences posées à notre plateforme FELFEL. De plus, la visualisation des User Stories a aidé à donner une vue d'ensemble des processus complexes et à prioriser ensuite les étapes de développement."

Nina Wehrli
Gestion de projet chez FELFEL
Thomas Berger Thomas Berger

"L'atelier de gestion des exigences nous a enthousiasmés et nous a aidés, grâce à des techniques créatives et aux bonnes questions, à concrétiser nos besoins et ceux des utilisateurs finaux, et ainsi à prioriser les fonctions de l'application en accord avec nos objectifs et les besoins des utilisateurs finaux. L'atelier n'a pas seulement été amusant, il a aussi apporté une réelle valeur ajoutée en se concentrant sur les utilisateurs finaux et a également permis d'éviter à temps d'éventuelles dérives".

Thomas Berger
Directeur du département de psychologie clinique et de psychothérapie, Université de Berne
Dominic Lüthy Dominic Lüthy

"L'approche d'Apps with love, avec une phase intensive d'ateliers, de relevé des exigences et de discussion, a effectivement conduit à une compréhension commune de nos défis. Cela nous a permis de mettre en ligne le premier site réalisé avec le nouveau système pour le Swiss Economic Forum dans les délais impartis. Nous avons pu intégrer petit à petit les sites web de tous nos événements dans le CMS et ainsi profiter des synergies. Objectif atteint!"

Dominic Lüthy
Directeur du marketing et de la communication

Notre expertise pour une gestion des exigences réussie

Nous avons déjà réalisé plusieurs centaines de projets et savons donc à quel point il est crucial de définir clairement tout ce qu'une solution numérique doit pouvoir faire.

Pour cela, nous misons sur des méthodes et des outils éprouvés afin de saisir et de documenter les exigences avec précision. Nous connaissons les « pièges » les plus fréquents lors de l'élaboration des exigences et savons comment les éviter.

Que tu repartes de zéro ou que tu aies déjà élaboré des exigences que tu souhaites valider, nous trouverons la meilleure manière de t'accompagner dans le processus de la gestion des exigences. Le jeu en vaut la chandelle !

Autres services