Le DSDM (dynamic systems development method)

Ecrit par << Paquet Judicaël >>

Le DSDM (dynamic systems Development method) est une méthode Agile très peu connue en France apparue en 1994 en Grande Bretagne pour dispenser au RAD d’une certaine discipline. Le DSDM est une méthode agile qui a évoluée avec le temps et qui se concentre plutôt sur une approche de gestion de projet et de livraison que sur une façon de faire du code.

Méthode agile mais pas forcément IT

Si on en lit les 12 principes du manifeste agile, on est clairement en présence de projet IT ; pourtant le DSDM se veut être une méthode agile mais également une méthode applicable pour d’autres projets que des projets IT.

Par contre le DSDM est sans conteste Agile avec son aspect incrémental et itératif ; le client est également au centre de cette méthodologie de travail.

La DSDM fixe le coût, la qualité et les délais ce qui vous rappellera sans doute l’agile iron triangle (voir article : Qu’est-ce que l’agile iron triangle ?) et utilise le modèle MoSCoW pour prioriser les items du projet (voir article : Prioriser avec la méthode MoSCoW).

Le DSDM remis à jour en 2014

Même si cette méthodologie est inconnue sur le territoire français, il faut savoir que la dernière version de cette méthode agile ne remonte qu’à 3 ans. Etant tout à fait agile, cette méthode n’hésite pas à se remettre au goût du jour.

D’ailleurs, la méthode n’hésite pas à proposer aujourd’hui de la travailler avec d’autres approches comme PRINCE2, Managing Successful Programmes, PMI-BOK ou Extreme Programming (une autre méthode agile).

Les 9 principes fondateurs

Voici la liste des 9 principes fondateurs du DSMS :

Implication des utilisateurs -> ils doivent être présent tout au long du développement du projet

Autonomie -> L’équipe est autonome sur le développement et doit avoir un droit de décision imparable sur l’évolution des besoins.

Visibilité du résultat -> Livraison fréquente de l’application afin d’obtenir des feedback fréquents.

Adéquation -> L’application livrée doit être en adéquation avec le besoin des utilisateurs.

Développement itératif et incrémental -> Le produit doit constamment s’améliorer avec le feedback des utilisateurs.

Réversibilité ->En cas de besoin, tout développement doit pouvoir revenir en arrière.

Synthèse -> Un schéma directeur fixe le projet dans son ensemble que ce soit au niveau vision ou au niveau objectifs

Tests -> Automatisation de tests fréquent afin de garantir une non regression au sein de l’application.

Coopération -> L’ensemble de l’équipe ou parties prenantes sur le projet doivent accepter d’éventuelles modifications des fonctionnalités demandées.

Processus du DSDM

Voici un schéma simple du processus du DSDM que nous allons expliquer plus concrètement à la suite :

DSDM processus
DSDM processus

Détails de chaque étape du DSDM

Étude de faisabilité : déterminer s’il est opportun de faire le projet en question. -> Evaluation des coûts et de la valeur ajoutée attendue. Dans cette étape, on produit un Rapport de Faisabilité ainsi qu’un Plan Global de Développement. On développe parfois un prototype afin de démontrer la faisabilité technique.

Étude business (ou analyse fonctionnelle) : définition des spécifications
-> fonctionnalités que l’application doit apporter, priorisation de celles-ci, dans un document appelé Définition du Domaine Industriel, mais aussi quels types d’utilisateurs sont concernés par l’application, de manière à pouvoir les impliquer. On définit également l’architecture du système, dans un document appelé Définition de l’Architecture Système. Enfin, à partir du Plan Global de Développement, on définit un Plan Global de Prototypage.

Modèle fonctionnel itératif et Conception et réalisation itératives : nous travaillons techniquement de façon itérative.

Mise en œuvre : mise en production de l’application afin de mettre notre application à disposition des utilisateurs types ; ceci permettra d’avoir des feedback rapides de ceux-ci et d’incrémenter le produit d’améliorations.

Des points à savoir

Timeboxe : Le DSDM est une méthode agile où on fonctionne avec des timeboxe. Rien n’empêcherait cependant un agiliste d’utiliser d’autres méthodes comme l’utilisation de points d’effort.

Workshop : Il est essentiel dans le DSDM de faire des worshop avec les parties prenantes pour amener le projet à maturité.

Les rôles en DSDM

Contrairement au Scrum que vous connaissez probablement beaucoup mieux, le DSDM est beaucoup plus précis sur les rôles qui doivent exister au sein des projets.

Comme toute méthode agile, il faut bien comprendre que chaque rôle se voit  être intégralement responsable de son domaine fonctionnel.

  • Executive Sponsor / Project Champion :  Cette personne est habilité à prendre des décisions et à engager des fonds et des ressources.
  • Le visionnaire : Cette personne a la responsabilité d’initier un projet en assurant que les exigences essentielles sont présentes dès le début du projet. Il a la vision la plus précise des objectifs business du projet ; il devra également bien vérifier que les développements vont toujours dans le bon sens de la vision.
  • L’ambassadeur : Cette personne apporte les connaissances nécessaires venant des utilisateurs de l’application pendant le projet et assure un maximum de feedback de ceux-ci tout au long du projet.
  • Un conseiller : cette personne est un utilisateur qui peut apporter de bonnes connaissances quotidiennes au projet..
  • Project Manager : cette personne vient de l’équipe IT et a pour but de manager le projet dans ses grandes lignes.
  • Technical Co-ordinator : Cette personne est responsable dans la définition de l’architecture technique et le contrôle de la qualité technique.
  • Team Leader : cette personne est un leadeur d’équipe qui assurera que le travail de l’équipe est efficace dans son ensemble.
  • Solution Developer : cette personne interprète les exigences du système et de modélisation, y compris le développement des codes livrables et la construction des prototypes..
  • Solution Tester : cette personne testera l’application en tentant de trouver des bugs et documentera l’ensemble de ses trouvailles.
  • Scribe : cette personne sera responsable de rassembler et d’enregistrer les exigences, les accords et les décisions prises au cours des workshop.
  • Facilitateur : cette personne sera là pour animer les workshop et s’assurer de leur bon déroulement.
  • Rôles spécialisés :  Business Architect, Quality Manager, System Integrator, etc.

Conclusion DSDM (dynamic systems development method)

J’espère que ce petit article vous aura un peu éclairé sur une méthode agile beaucoup moins connue que le Scrum. Cependant, elle nous permet de voir qu’il existe des méthodes bien différentes du Scrum.

Cependant la présence de rôles comme le Product Manager en fait une  méthode moins appréciée par les coachs agiles français. En effet, aujourd’hui on préfère en général travailler avec des manager 3.0

4 réponses sur “Le DSDM (dynamic systems development method)”

    1. Bonjour Liza.
      Je vais faire un article complet sur l’implémentation du DSDM qui permettra sûrement de mieux comprendre l’ensemble du framework. Le DSDM est un complément au Scrum qu’il intègre parfaitement bien d’ailleurs. Il propose un cadre autour de l’exécution du projet (ce que le Scrum ne fait pas). C’est plus contraignant mais aussi un cadre supplémentaire intéressant. Ce framework reste 100% agile et se veut vraiment user-centric.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.