Le b.a.-ba de la gestion des exigences

Portrait du contributeur – Caeleigh MacNeilCaeleigh MacNeil8 avril 202210 min de lecture
facebooktwitterlinkedin
Le b.a.-ba de la gestion des exigences - Image bannière de l’article
Modèles

Résumé

La gestion des exigences est primordiale pour s’assurer que votre livrable définitif répond aux besoins des parties prenantes. En bref, une exigence désigne une attente ou un besoin formulé par les parties prenantes, et la gestion des exigences est le processus qui vous aide à y répondre. Lisez cet article pour découvrir son fonctionnement, puis lancez-vous en six étapes simples.

Le week-end est enfin là ! En ce vendredi soir, vous êtes à deux doigts de commander une pizza. Le téléphone dans une main et la liste des ingrédients souhaités par vos amis dans l’autre, vous devez tout d’abord faire le tri entre ces préférences et décider de la pizza à commander. Plutôt pepperoni, fromage ou option végétarienne ?

Cela ressemble étrangement au processus de gestion des exigences dans le cadre du lancement d’un produit. Comme pour votre commande, gérer les exigences suppose d’écouter les besoins des parties prenantes et de déterminer comment y répondre au mieux.

Qu’est-ce que la gestion des exigences ?

La gestion des exigences est un moyen de veiller à ce que vos livrables de projet définitifs répondent aux besoins des clients et à ceux des parties prenantes internes. Dans ce cadre, une exigence désigne une attente ou un besoin formulé par les parties prenantes vis-à-vis de votre produit. Ces dernières peuvent être internes (les partenaires interfonctionnels, par exemple) ou externes (en premier lieu les clients).

Le plus souvent, la gestion des exigences est mise en œuvre par les équipes de développement qui conçoivent des logiciels et leurs fonctionnalités. De manière plus générale, il est aussi possible de l’appliquer à la gestion de projet. Par exemple, créer une fonctionnalité qui permettra aux clients d’utiliser aisément votre produit ou développer un aspect de ce dernier pour aider vos partenaires transversaux à atteindre leurs objectifs commerciaux constituent des exigences.

Avant de commencer à travailler sur un produit, demandez aux parties prenantes quelles sont leurs exigences précises pour le projet, il s’agira de votre point de départ pour satisfaire pleinement leurs attentes. La gestion des exigences vous aide à documenter et à hiérarchiser ces dernières, à suivre les modifications apportées et à tenir les parties prenantes informées tout au long du cycle de vie du projet. En outre, vous parviendrez à mieux gérer les éventuels changements de ces besoins et éviterez que votre projet ne dépasse la portée initialement prévue.

Modèles gratuits pour les équipes produit

Qu’est-ce qu’une exigence ?

Une exigence est un critère à respecter ou un élément à intégrer à votre fonctionnalité ou produit. En d’autres termes, il s’agit d’une composante indispensable à votre produit final pour répondre pleinement aux besoins des parties prenantes. Lors de la création d’un logiciel, des centaines d’exigences sont parfois formulées. Mais quel que soit leur nombre, elles doivent toutes être :

  • Nécessaires : ces exigences doivent absolument être respectées pour atteindre vos objectifs commerciaux ou ceux du produit.

  • Spécifiques : les attentes sont détaillées et ont un objectif clair.

  • Compréhensibles : les attentes sont rédigées clairement et faciles à comprendre.

  • Précises : des informations détaillées sont fournies sur le défi à relever ou le besoin auquel répondre. En bref, il ne s’agit pas d’une simple description de ce qui doit être accompli ; vous devez également préciser en quoi ces exigences sont importantes.

  • Réalisables : faites des recherches et assurez-vous que votre pile technologique et votre infrastructure informatique seront à la hauteur.

  • Testables : vous devez être en mesure d’effectuer des tests d’utilisabilité, des tests A/B ou d’employer toute autre méthode similaire.

Un exemple nous permettra d’y voir plus clair. Vous créez une application et des exigences sont formulées. Parmi elles, le besoin que l’ensemble de l’application soit traduit en anglais, chinois, japonais et français. En effet, ces langues correspondent aux principaux marchés sur lesquels vous menez vos activités.

  • Cette exigence est nécessaire pour lancer votre application sur les principaux marchés cibles de votre entreprise et atteindre vos objectifs commerciaux.

  • Elle est spécifique, puisque que vous indiquez que l’ensemble de l’application doit être traduite et dans quelles langues.

  • Elle est compréhensible, car vous ne vous perdez pas dans les détails techniques. Au contraire, l’exigence est formulée de manière à ce que les membres d’équipe et les parties prenantes interfonctionnelles n’aient aucun doute sur sa signification.

  • Elle est précise, puisque vous avez clairement expliqué pourquoi cette exigence est importante : l’anglais, le chinois, le japonais et le français sont les langues parlées sur les principaux marchés cibles de votre entreprise.

  • Elle est réalisable parce que vous avez déjà développé des prototypes et mené des essais de fiabilité dans des langues étrangères. Vous savez donc que la localisation est possible et que tout fonctionnera comme prévu.

  • Elle est testable ; vous avez mis en place un système pour tester et confirmer l’exactitude de chaque version traduite.

En quoi la gestion des exigences est-elle importante ?

Pour créer un produit hors pair, vous devrez impérativement gérer toutes les exigences formulées. Quelques explications s’imposent :

  • Lancez les fonctionnalités appropriées. Le processus de gestion des exigences permet d’identifier les attentes des utilisateurs et de comprendre leurs interactions avec le produit. Ainsi, vous êtes en mesure de produire des livrables qui répondent aux besoins clés de vos clients.

  • Alignez-vous sur vos objectifs commerciaux. Lorsque vous documentez et hiérarchisez les exigences, assurez-vous que chacune d’entre elles est reliée à vos principaux objectifs commerciaux. Par exemple, la traduction de votre application en 12 langues soutiendrait une stratégie commerciale d’expansion internationale. Si une exigence n’est pas cohérente avec les objectifs de l’entreprise, vous devriez sans doute investir des ressources ailleurs ou bien avoir une très bonne raison de répondre à ce besoin en particulier.

  • Évitez toute dérive des objectifs. Les exigences fonctionnent comme la portée de projet : une fois exposées, elles permettent de fixer des limites, mais aussi de définir précisément les objectifs à atteindre et les livrables à produire. Déterminer ces exigences en amont simplifie l’identification des obstacles potentiels et permet de les contourner, notamment lorsque les parties prenantes souhaitent formuler des exigences supplémentaires.

  • Contournez les obstacles. La création d’un logiciel est une entreprise complexe : il vous faut développer, concevoir et tester ce dernier, sans parler du code ou des systèmes d’ingénierie, eux aussi délicats. La gestion des exigences vous aide à planifier le développement d’un produit en tenant compte des contraintes de votre arsenal informatique. En outre, vous êtes en mesure de suivre ce que vous devez accomplir à chaque étape du processus de développement produit.

Qui est responsable de la gestion des exigences ?

Le responsable de la gestion des exigences varie selon le projet ou l’équipe. Au sein des équipes de développement, ce sont bien souvent les Product Owners ou les chefs de produit qui s’en chargent. Ces deux rôles sont assez similaires ; le Product Owner occupe un poste clé au sein des équipes Scrum, tandis que le rôle de chef de produit se retrouve dans tout type d’équipe, que cette dernière adopte ou non une méthodologie Agile. Votre équipe ne développe pas un produit, mais travaille sur un projet plus général ? Le cas échéant, c’est le chef de projet qui assure la gestion des exigences.

La gestion des exigences implique une collaboration interfonctionnelle entre votre équipe et les parties prenantes du projet. Vous devez recueillir les retours de ces collaborateurs, tenter de comprendre ensemble chaque exigence, et aider votre équipe à élaborer une stratégie pour répondre à chaque besoin. En clair, le responsable des exigences de projet doit démontrer une forte aptitude à la collaboration et exceller dans la communication interfonctionnelle, car cette dernière sera la clé pour mener à bien l’initiative entreprise.

[À lire] 25 compétences en gestion de projet essentielles pour réussir

Les différents types d’exigences

Il existe trois principaux types d’exigences : les exigences métiers, utilisateurs et systèmes. Il est important de les identifier avant de commencer à travailler pour ensuite déterminer plus facilement les parties prenantes avec lesquelles vous devrez collaborer.

Petit tour d’horizon des différents types d’exigences :

Exigences métiers

Il s’agit des principaux objectifs et indicateurs commerciaux auxquels votre produit répond : pas forcément une fonctionnalité ou une composante que votre produit devrait inclure, mais plutôt des actions à mener par votre entreprise pour satisfaire les parties prenantes internes et externes.

Prenons un exemple. Vous travaillez pour une entreprise de vente au détail en ligne ; votre équipe commerciale utilise un système de gestion de contenu pour créer et mettre à jour les pages produits sur votre site Web. Pour accompagner l’augmentation des stocks, votre équipe produit déploie une fonctionnalité de recherche optimisée sur votre CMS. Cette initiative est cohérente avec l’exigence métier formulée, à savoir doubler les stocks de produits au premier trimestre.

[À lire] Modèle de document d’exigences métiers (BRD) : les 7 éléments clés, exemples inclus

Exigences utilisateurs

Elles permettent de définir ce que les utilisateurs attendent de votre produit et comment ils vont interagir avec ce dernier. Elles pointent une difficulté ou indiquent une action que le client souhaite accomplir, mais précisent également de quelle manière le produit devrait remédier à cette difficulté ou aider le client à atteindre son objectif.

Les équipes Agile présentent souvent les exigences utilisateurs sous forme de user stories, c’est-à-dire des récits utilisateurs informels qui décrivent une fonctionnalité logicielle en se plaçant du point de vue de l’utilisateur final. Il s’agit souvent d’une phrase simple, du type : « En tant que [persona], je souhaiterais [objectif du logiciel], afin de [résultat]. »

Reprenons l’exemple précédemment évoqué. Voici une user story rédigée du point de vue de l’utilisateur final, dans ce cas précis, un vendeur qui utilise le CMS pour accomplir ses tâches.

« En tant que vendeur, je souhaiterais rechercher aisément des listes de produits spécifiques dans notre CMS afin de mettre à jour et gérer en ligne nos stocks grandissants. »

Modèle gratuit de recherche utilisateur

Exigences systèmes

Les exigences systèmes définissent la finalité du produit. Considérez l’ensemble ainsi : s’agissant des fonctionnalités produit, les exigences utilisateurs répondent aux questions « quoi » et « pourquoi », et ce, du point de vue de l’utilisateur. S’agissant du développement de ces fonctionnalités, les exigences systèmes précisent « comment » les concevoir, du point de vue de l’équipe d’ingénierie.

Les exigences systèmes regroupent souvent des exigences fonctionnelles et non fonctionnelles. Les premières définissent la finalité du produit, tandis que les secondes renseignent sur le bon fonctionnement du produit et sur ses failles éventuelles. Ainsi, les exigences non fonctionnelles sont davantage liées à la sécurité, à la performance et à la fiabilité.

Voici comment une équipe d’ingénierie pourrait décomposer les exigences utilisateurs liées au développement d’une nouvelle fonctionnalité sur son CMS et formuler des exigences systèmes :

Exigences fonctionnelles

  • Chaque liste de produits contient les informations suivantes : type de produit, date de création, auteur, URL et statut de publication.

  • Pour créer un nouveau produit, les initiateurs du projet doivent préalablement sélectionner un type de produit dans un menu déroulant.

  • La barre de recherche comprend une option qui permet d’appliquer davantage de filtres : type de produit, date de création, auteur, URL et statut de publication.

  • Il est possible de sélectionner plusieurs filtres à la fois.

Exigences non fonctionnelles

  • Les résultats de recherche sont obtenus en moins de cinq secondes.

  • Les résultats de recherche sont de la plus grande pertinence.

Les 6 étapes du processus de gestion des exigences

La gestion des exigences ne doit pas devenir une tâche fastidieuse. Créez un processus standardisé afin que votre équipe puisse suivre les mêmes étapes à chaque fois, sans vous inquiéter systématiquement de quelles parties prenantes impliquer et à quel moment.

Pour commencer sereinement, nous vous présentons un processus simplifié en six étapes. Après quelques essais, vous aurez identifié ce qui fonctionne pour votre équipe et vous pourrez personnaliser votre processus de gestion des exigences en conséquence.

1. Recueillir les exigences

Avant de pouvoir définir les exigences de votre projet, vous devez prendre le temps de les recueillir. À ce stade, réunir les exigences ne signifie pas forcément les intégrer ultérieurement à votre projet. Il s’agit plutôt d’une occasion de prendre contact avec les parties prenantes et les clients afin d’en savoir un peu plus sur leurs besoins.

Vous pouvez rencontrer les parties prenantes en personne pour leur fournir des informations sur le produit ou la fonctionnalité à créer. Interrogez-les ensuite sur leurs besoins ou attentes dans le cadre du projet, afin d’aider les clients ou d’atteindre les objectifs commerciaux. Parallèlement, vous pouvez définir les exigences avec vos interlocuteurs pour qu’aucun doute ne subsiste quant à leurs besoins. N’hésitez pas à communiquer avec les intéressés de manière asynchrone (en différé) pour limiter le temps passé en réunion. En outre, si vous souhaitez en apprendre davantage à propos des exigences des utilisateurs finaux, songez à effectuer des tests d’utilisabilité ou faites appel à votre équipe dédiée à la recherche utilisateur.

Ces discussions doivent vous permettre de gérer les attentes des parties prenantes, mais précisez-leur que ces exigences ne seront pas forcément intégrées au livrable définitif. En fin de compte, c’est à votre équipe d’établir des priorités et de sélectionner les principales exigences à satisfaire.

[À lire] Recueillir les exigences en 6 étapes pour un projet réussi

2. Analyser les exigences

Il est temps de trier tous ces retours et de retenir les exigences qui soutiennent vos objectifs commerciaux et ceux de votre produit. Chaque exigence doit être reliée à un objectif commercial clé, par exemple la hausse du chiffre d’affaires, la conquête de nouveaux marchés ou l’amélioration de la satisfaction client.

3. Définir les exigences

Maintenant que vous avez analysé les exigences et sélectionné celles qui correspondent à vos objectifs, définissez-les clairement pour que votre équipe dispose de toutes les informations dont elle a besoin. Par la suite, vous pourrez décrire à loisir toutes les tâches que votre équipe de développement doit accomplir en vue d’obtenir le livrable espéré.

Pour ce faire, vous pouvez notamment créer des user stories pour chaque exigence afin de relier les besoins utilisateurs aux futures interactions des clients avec votre produit. Dans un second temps, fractionnez ces besoins en exigences systèmes plus spécifiques. Au fil du processus, vous devrez peut-être recueillir des informations supplémentaires auprès des parties prenantes afin de disposer de suffisamment de contexte pour répondre à chaque élément.

4. Constituer une documentation autour des exigences

Il existe plusieurs méthodes pour documenter et suivre les exigences. Votre équipe produit a peut-être déjà rédigé un document de spécification des exigences logicielles (« Software requirements specification » ou SRS), un document d’exigences produit (« Product requirements document » ou PRD), voire même élaboré une matrice de traçabilité des exigences (« Requirements traceability matrix » ou RTM).

Vous aimeriez que votre équipe bénéficie d’un aperçu en temps réel de l’ensemble des exigences du projet ? Adoptez un outil de gestion de projet comme Asana. Dites adieu aux feuilles de calcul obsolètes : grâce à une plateforme de ce type, votre équipe et les parties prenantes peuvent consulter la description la plus récente de chaque exigence. Il est également possible de suivre l’état d’avancement de chaque exigence au fil de votre travail. Mieux encore, vous pouvez définir des processus automatisés pour tenir les parties prenantes informées du chemin parcouru.

Vous pouvez également intégrer Asana à des applications plus spécialisées et à des outils de gestion des exigences comme Jira ou Github. Si vous travaillez avec des parties prenantes qui ne disposent pas des autorisations nécessaires pour accéder aux outils de développement, des compléments de ce type s’avéreront bien utiles.

Associer Asana à vos applications favorites

5. Hiérarchiser les exigences

Maintenant que vous avez rédigé votre ensemble d’exigences, travaillez en équipe pour établir des priorités et vous organiser pour les satisfaire. La hiérarchisation des exigences permet de vous concentrer en premier lieu sur les tâches clés, surtout si d’autres activités sont en attente et dépendent de ces tâches.

Si votre équipe emploie une méthode Agile, ajoutez les exigences à votre backlog produit, puis organisez une réunion de planification de sprint pour décider quelles tâches inclure dans votre prochain sprint. Si vous ne fonctionnez pas en mode Agile, créez une chronologie de projet pour préciser l’échéance de chaque exigence et ses éventuelles dépendances.

6. Anticiper les changements

La gestion des exigences ne se limite pas à leur planification avant le lancement du projet. Il convient également de gérer leur évolution au fil du temps. Vous devez donc anticiper l’intégration éventuelle de tâches supplémentaires qui pourraient avoir des répercussions sur la portée de votre projet.

Il est possible de créer un processus de contrôle du changement. Ce dernier permet aux parties prenantes de soumettre de nouvelles exigences qui pourraient influer sur la portée de votre projet ; en ce qui vous concerne, vous pouvez déterminer qui doit approuver ou refuser ces demandes. Un processus de contrôle du changement aide aussi à documenter les exigences et à suivre leur évolution tout au long du projet. Ainsi, vous évaluez aisément les conséquences de ces modifications à plus long terme.

Gestion des exigences : adoptez les bons outils et simplifiez-vous la vie

La gestion des exigences comporte de nombreuses variables, mais elle ne doit pas pour autant échapper à votre contrôle. Adoptez des outils qui vous permettront de mettre en œuvre un processus reproductible, puis définissez les tiers à contacter, à quel moment, mais aussi comment documenter et organiser les exigences formulées tout au long du cycle de vie du projet.

Gérez et suivez les exigences sur Asana à l’aide d’un modèle standardisé. Plutôt que de perdre du temps à repartir de zéro à chaque fois, Asana vous permet de réutiliser un processus prédéfini. Dormez sur vos deux oreilles, car plus aucun élément clé ne pourra vous échapper !

Modèles gratuits pour les équipes produit

Ressources associées

Webinaire

How Asana uses Asana for IT and technical program management