La gestion des exigences agiles : comment s'adapter aux changements tout en maintenant le cap ?

Rédigé par : Sélim Dahmani
Guide et modèle gratuits : gestion de projet

GUIDE ET MODÈLE GRATUITS : GESTION DE PROJET

Commencez à gérer efficacement vos projets pour atteindre vos objectifs et assurer la conformité des livrables.

Télécharger gratuitement
exigences agiles

Mis à jour :

Publié :

Tout projet comporte des risques à piloter, des demandes client à prendre en compte et des contraintes à manager. Les exigences d'un projet, notamment lors de la création de logiciels, doivent être définies et gérées pour éviter l'effet scope creep.

Téléchargement  >> Guide et modèles pour la gestion de projet

Quels types d'exigences existe-t-il ?

En émettant des exigences, les parties prenantes expriment soit des capacités soit des contraintes liées au projet. Elles décriront les volontés du client, mais également les nécessités liées au développement du produit. Il existe trois niveaux d'abstraction dans l'expression des exigences, elles sont relatives aux besoins, aux utilisateurs ou au système. Les exigences ne sont constituées ni par des besoins ni par des spécifications du logiciel, elles expriment des problèmes et non des solutions.

 

Exigences fonctionnelles

Les exigences fonctionnelles sont formulées sous forme de services rendus par le produit. Elles traitent d'un ou plusieurs éléments concernant l'objet, la fonction ou l'état du système. Elles définissent ce que doit faire le logiciel ou l'application à développer, ce que l'utilisateur peut attendre de son fonctionnement.

Les exigences fonctionnelles fixent donc le système de base, ce qu'il pourra faire et ne pas faire, la manière dont le système va réagir aux différentes interactions. Elles désignent la façon dont le système fonctionne d'une manière précise selon les attentes des utilisateurs et sont exprimées sous forme de processus opérationnels.

 

Exigences non fonctionnelles

Les exigences non fonctionnelles sont en rapport avec la manière dont le système s'exécute, mais n'ont pas de conséquences sur ce que fait concrètement le système. Par exemple, le fait de cliquer sur un onglet pour qu'il apparaisse est une exigence fonctionnelle et le fait que la page s'affiche en 1 seconde est une exigence non fonctionnelle.

Définies autour de l'expérience utilisateur, elles mettent ainsi l'accent sur la convivialité, la sécurité, la performance et la disponibilité du système. Les exigences non fonctionnelles sont axées sur la fiabilité du logiciel ou de l'application, son efficacité ainsi que les critères de maintenance et de ré-utilisabilité.

 

Comment formuler des exigences dans la gestion de projet ?

La formulation des exigences induit la rédaction d'un document de spécification des exigences, ou référentiel.

La rédaction des exigences doit suivre des règles précises pour être efficace et efficiente. Les exigences doivent exprimer un besoin utilisateur complet et être parfaitement comprises par toutes les parties prenantes du projet. Le langage utilisé doit donc être clair et courant, privilégier la formulation active et exclure toute ambiguïté. Comme lors de la rédaction de documents techniques, le concept de cohérence terminologique est ici impératif : toujours nommer les choses de la même manière. De même, les expressions utilisées doivent aller droit au but.

Ni contradictoires ni redondantes, les exigences sont compatibles entre elles, classées selon leur type et font l'objet d'une priorisation. Définies en entités distinctes, elles comportent toutes un critère de validation intrinsèque inscrit dès la phase de rédaction.

Comment optimiser votre gestion de projet ?

Le guide et les modèles pour découvrir les bons outils de gestion de projet.

  • Les différentes méthodes
  • Les étapes constitutives
  • Les meilleurs outils
  • Deux modèles G-Sheet

    Télécharger

    Tous les champs sont obligatoires.

    Merci d'avoir soumis le formulaire

    Cliquez sur le lien pour accéder au contenu en tout temps

    La démarche visant à gérer les exigences d'un projet passe par ces différentes phases tout au long desquelles les méthodes Agile sont applicables.

     

    Identifier les exigences

    Différentes sources sont utilisables pour recueillir les exigences : le cahier des charges, l'avant-projet ou les études marketing par exemple. De même, chaque contact avec le client est une occasion de récolter et d'affiner ses besoins. Il est néanmoins nécessaire d'être attentif lors de cette phase de consultation des sources. Certaines peuvent en effet être floues, peu compréhensibles ou ne pas prendre en compte toutes les parties prenantes. De plus, certaines exigences implicites peuvent ne pas y être exposées.

    Identifier les exigences signifie également de se détacher des contraintes imposées par les facteurs techniques. Il s'agit de toutes les lister, même celles qui paraissent irréalisables de prime abord. C'est là qu'entrent en compte les méthodes Agile qui se concentrent sur les interactions et la collaboration avec le client pour faire ressortir ses envies sans connaissance réelle des limites techniques.

     

    Examiner les exigences

    Pour une bonne gestion des exigences, il s'avère nécessaire de les comprendre dans leur intégralité et de vérifier leur cohérence. Une compréhension approximative impliquera des ambiguïtés qui à leur tour entraîneront souvent de mauvais choix. Il est alors nécessaire de remonter aux besoins réels en se concentrant sur la demande du client et de l'utilisateur final.

    Cet examen nécessite de vérifier si le critère de validation de l'exigence la rend testable. Ce principe de testabilité de l'exigence permet d'éviter tout manque de précision. Cette opération est particulièrement délicate pour les exigences non fonctionnelles. En effet, il n'est pas toujours simple de trouver des critères de validation de concept comme l'utilisabilité ou la performance d'un logiciel ou d'un produit. L'utilisation de méthodes Agile, axées sur la relation de communication bilatérale avec le client, s'avère alors fortement indiquée.

     

    Préciser les exigences

    Le but est ici de faire que chaque exigence soit comprise de toutes les parties prenantes au projet. Une exigence n'est pas une solution, mais elle doit répondre à un objectif. La question primordiale ici est le pourquoi de l'exigence. Est-elle vraiment opportune ? Une exigence adéquate est nécessaire, exprimée avec simplicité, faisable, testable et appropriée. Elle se réfère donc à un besoin exprimé par le client ou par les utilisateurs. L'exigence va identifier un seul aspect du système par des mots précis et explicites. Comme vu précédemment, la précision des exigences requiert également la définition de leur degré de priorité.

     

    Formaliser les exigences

    Le référentiel doit comporter en avant-propos l'objectif et une présentation succincte du projet pour contextualiser les exigences. Chacune des exigences exprimées doit ensuite contribuer à l'objectif initialement fixé.

    En méthodologie Agile, trois présentations différentes sont envisageables lors de la rédaction du document de spécification des exigences.

    • Le work breakdown structure (WBS) morcelle les exigences en éléments plus restreints avec la liste des tâches correspondantes.
    • Le témoignage utilisateur permet de rédiger la description des exigences du point de vue de l'utilisateur final.
    • La définition d'un cas d'utilisation expose les étapes du processus exécutif avec un but précis.

     

    Gérer les exigences durant la réalisation du projet

    Toute gestion de projet implique de multiples changements tout au long de son exécution. Une approche Agile évite toute dérive du périmètre, ou scope creep.

    L'approche Agile apporte une flexibilité plus importante que pour les projets gérés en cascades. La rapidité avec laquelle elle permet de répondre aux différentes demandes de changement en fait une excellente méthode de gestion des exigences. Lors de la réalisation du projet, les équipes sélectionnent les exigences qu'elles vont traiter dans une itération. En fin d'itération, elles vont fournir au client une version partielle, mais utilisable du produit et attendre les retours pour définir les suites à donner au projet. Ces informations remontées par le client et les utilisateurs serviront de base à l'évolution permanente des exigences et à la définition des prochaines itérations. De cette manière, la méthode Agile traite les exigences au fur et à mesure de leur évolution. Attention, il sera toutefois nécessaire de définir une première liste de ces exigences avant toute mise en production d'un projet !

     

    Pour aller plus loin, téléchargez ce guide gratuit et optimisez votre gestion de projet en adoptant la méthode et les outils qui correspondent le mieux à votre activité.Nouveau call-to-action

    Articles recommandés

    Modèles de planning et conseils pour gérer vos projets efficacement.