dimanche 23 novembre 2008

CMMI ET AGILE

Je viens enfin de finir de lire CMMI© or Agile: Why not Embrace Both! publié et mis en ligne par le SEI.
Il s'agit d'une étude montrant que les démarches CMMi et Agile seraient en fait compatibles et même complémentaires. Ainsi, il serait bénéfique de combiner les deux.

Malgré tout, je reste sceptique sur cette compatibilité, comme je j'avais dit dans un précédant billet. Ce nouvel article confirme certains de mes doutes.

Dans les chapitres 4 The Truth About CMMI et 5 The Truth About Agile, les auteurs essayent de rétablir des descriptions correctes des deux paradigmes en rectifiant certaines mauvaises interprétations.

Les trois et demi pages dédiées à l'Agilité m'ont semblé en donner une description claire et assez exhaustive. Ce chapitre est une synthèse réussie. Après sa lecture, un néophyte peut se construire une vision quasi concrète de ce qu'est un développement agile.
Par contre, les cinq pages dédiées au CMMI m'ont que peu aidé à clarifier ma vision du CMMI alors que je développe dans une organisation CMMI niveau 3 et que j'ai déjà été interviewé lors d'une évaluation officielle.

Je ne pense absolument pas que les auteurs de l'article ont failli à parler clairement du CMMI. Je pense simplement que le CMMI est un modèle abstrait, volumineux, très compliqué et difficile à appréhender. Il est donc difficile à décrire, d'où un premier rejet. Pourquoi faire compliqué alors qu'on peut faire simple et pragmatique? Ceci dit, l'agilité est simple à décrire mais compliquée à pratiquer ...

Le SEI rappelle que l'objectif de l'application du CMMI n'est pas l'obtention d'un niveau. C'est vrai, pourtant le CMMI a l'originalité et la particularité de proposer une évaluation payante aboutissant à l'obtention d'un niveau de maturité. J'espère que Scrum saura ne pas tomber dans la même démarche (je dis cela, mais je suis "certifié" ScrumMaster).

Je suis particulièrement sensible à un des arguments utilisés. Le CMMI pourrait renforcer l'efficacité de l'agilité dans le cadre de projets de logiciels critiques. C'est probablement une des raisons pour lesquels mon organisation a adopté le CMMI. Pourtant, certains de nos projets récents montrent que la démarche Agile est tout à fait pertinente dans de tels cadres pourvu qu'on l'adapte en tenant compte des normes incontournables de ces domaines, telle la DO178B pour l'avionique. Ainsi, on peut se passer de l'apport du CMMI car ces normes traitent justement des aspects critiques non abordés par les démarches agiles.

Aussi, les auteurs affirment que le CMMI peut étendre le rayon d'action de l'Agile aux processus de l'entreprise tout en réduisant les gaspillages. C'est un peu comme si le SEI s'inquiétait pour son CMMI du rapprochement enamouré entre le Lean et l'Agile.

Bref, je suis convaincu que les organisations qui ont pratiqué le CMMI ont progressé. De même pour celles qui ont appliqué l'agilité. Il est possible de mener conjointement les deux démarches. Il faut simplement être bien sûr que cela vaut l'effort investi.

5 commentaires:

  1. Heureux de voir une certaine neutralité dans ton article, ce qui reflète l'idée du document.
    Pour ce qui est de la DO178B, si mes souvenirs sont bons, elle ne traite pas l'aspect entreprise (organisation, diffusion des pratiques ...) mais uniquement du développement de produit critique, à l'image des méthodes agiles. Pour moi, le Lean (que tu pratiques également) répond à ce besoin plus général ce qui fait son intérêt.

    RépondreSupprimer
  2. En effet la DO178B ne traite que très peu des aspects organisation (à part l'organisation d'équipes indépendantes si besoin est). Par contre, elle donne des recommandations pour gérer les projets à haut risque et à impact critique sur la vie. Tout cela pour dire que l'argument qui consiste à dire que le CMMI peut apporter cette dimension à l'Agile ne me semble pas très pertinent.

    Pour ce que tu dis sur le Lean, je suis entièrement d'accord avec toi. D'ailleurs, il me semble que le SEI s'inquiète pour son CMMI du rapprochement enamouré entre Lean et Agile. Cette proposition de rapprochement CMMI + Lean ne serait-elle pas une alternative à l'option Lean + Agile qui prend de l'importance?

    D'ailleurs, as-ti remarqué que les auteurs disent qu'une implémentation réussie de CMMi+Agile permet dedéfinir des processus d'entreprise "maigres", sans gaspillages.

    RépondreSupprimer
  3. Un papier intéressant sur le mix Scrum / CMMI:

    jeffsutherland.com/scrum/Sutherland-ScrumCMMI6pages.pdf

    RépondreSupprimer
  4. Je ne peux m'empêcher de citer Mary Poppendieck à propos de Lean et CMMi:
    Be wary of CMMI. CMMI is slated to replace CMM by the end of 2003. Unfortunately, it is designed to cover many areas beyond software development, and thus it is based on a more general set of underlying fears, mostly ones that have arisen in the course of military procurement.

    If you are faced with CMMI, we suggest you learn about the struggles of the U.S. military acquisition organization to become more agile. Over the past decade, a series of directives and regulations have attempted to bring the same lean thinking to DoD acquisition, which makes U.S. military logistics among the best in the world. In late 2002 Deputy Secretary of Defense Paul Wolfowitz canceled earlier attempts and tried again to "…create an acquisition policy environment that fosters efficiency, flexibility, creativity, and innovation."[6] He lists 30 principles and policies behind the new defense acquisition system. At the top of the list are many of the principles and tools found in this book: decentralized responsibility, processes tailored to each program, learning and innovation, reduced cycle time, collaboration, a total systems approach.

    [6] See http://dod5000.dau.mil for more information. Quote is from DEPSESDEF Memo issued October 30, 2002. Downloaded January 26, 2003.

    Incorporating lean principles into the military procurement system practices has proven to be a daunting task. However, by tracking the efforts, you can come up with a good set of justifications for adopting lean principles in your organization.

    Même si je trouve que la vie est bien ironique de me faire citer un néoconservateur comme Paul Wolfowitz pour défendre mes idées agiles ;o)
    Emmanuel

    RépondreSupprimer
  5. Heureux de lire un article avec une ligne éditoriale neutre de jugement à priori.

    Voici un autre article décrivant les synergies entre CMMI et Méthodes Agiles avec en particulier 5 références très intéressantes: http://blog.octo.com/synergies-entre-cmmi-et-les-methodes-agiles/

    RépondreSupprimer