Monday, September 12, 2011

SCRUM ET LA COMPLEXITÉ: L’EXPLICATION PAR CYNEFIN!


“Scrum (nm): Un cadre dans lequel les gens peuvent répondre à des problèmes complexes et adaptatifs, tandis que productivement et créativement ils délivrent des produits de la valeur la plus élevée possible” (Scrum Guide 2011).

Un grand nombre de discussions tournent autour de l’approche complexe et adaptative. Cette terminologie fait appel une analyse de l’Institut Interdisciplinaire de Santa Fe mettant en avant les systèmes complexes auto-adaptatifs (CAS) qui sont des systèmes complexes évoluant en fonction de leurs environnements et aux interactions des acteurs de ce système.

Hormis cette définition « complexe », savoir faire la différence entre un environnement de développement et un environnement de production est primordial pour optimiser la mise en place de Scrum où toute autre démarche agile.

Lors de l’Agile Coach Camp Germany 2010, Pierluigi Pugliese et Joseph Pelrine m’ont fait découvrir une approche permettant de mieux comprendre comment fonctionne ces systèmes. Cette approche s’appelle Cynefin.  Après avoir analysé cette démarche et surtout avoir découvert qu’une grande partie de mes maîtres à penser (J. Sutherland, K. Schwaber, C. Mathis, etc.…) l’utilise et s’en réfère, j’ai eu le plaisir de suivre la formation de Dave Snowden à Francfort après le Scrum Day l’an dernier.

La partie orgueilleuse étant passée, allons voir cela de près.

Cynefin

Représentation graphique de Cynefin


Voici en gros le schéma de Cynefin que vous pourrez trouver sur Wikipedia ou que vous auriez déjà pu apercevoir dans de nombreuses présentations ou formations.

Selon Dave Snowden, toute chose interagit avec une autre et son contexte. Cynefin cherche à dessiner un chemin pour rendre la recherche de sens plus naturelle. L’objectif est clair :
·         Donner du sens permet de réduire les risques et met en lumière les évidences
·         Donner du sens est une motivation que tous nous recherchons
·         Dans notre contexte, donner du sens permet également de connecter l’intelligence humaine avec une technologie omniprésente

3 Principes de base (D.Snowden):

1.     Des petits éléments bien définis évitent la désintégration
2.     Une connaissance distribuée : délivre la sagesse et pas « la folie des foules »
3.     La Désintermédiation : connecte les décideurs avec les données brutes

Explication

Le fonctionnement d’un groupe d’individus peut être modélisé en fonction de l’inter-opérabilitité ou la manière dont la communication entre ses individus se forme :



Pour mieux comprendre c’est différents « environnements », voici des tableaux reprenant les caractéristiques de chaque état, le rôle du leader (sommet de la pyramide de communication), les signaux d’alertes et les contre-mesures. 
Ce qu’il faut savoir, c’est que chaque état n’est pas figé, et qu’une organisation évolue/régresse tout au long de sa vie, de son projet, de la journée.
L’environnement « Désordre » ne sera pas abordé. Cet environnement est considéré comme une zone de non-existence de relation, un trou noir en quelque sorte. Comme le zéro absolu, elle est indiquée au titre de point de référence.
Entrons dans le vif du sujet.

1.   COMPLIQUE


2.   SIMPLE


3.   CHAOTIQUE


4.   COMPLEXE


Et Scrum dans tout cela ?


En reprenant le schéma de Cynefin, Scrum pourrait se définir de la sorte :

1.   Le SPRINT

·         Le ScrumMaster maintient le Sprint dans une phase complexe où l’équipe interagit et s’interroge sur les solutions de développement à apporter.
·         Le Daily Scrum est une phase complexe où l’équipe coordonne ses efforts et fait le point sur les émergences en-cours
·         Le Product Owner est compliqué avec l’équipe pendant le Sprint. Son expertise du Product Backlog permet de recadrer les items ou la concentration de l’équipe sur la qualité de son engagement.

2.   La Revue de SPRINT (Sprint Review)

·         La démonstration des items développés est un évènement « complexe » où l’équipe de développement co-crée (inspect-and-adapt) avec les participants au projet (utilisateurs, clients). Le Product Owner et le ScrumMaster travaillent de concert pour maintenir cet environnement en phase complexe.
·         La validation des stories ou du Sprint est une phase compliquée où le Product Owner agit en tant qu’expert du Produit. L’acceptation ou le rejet répond au besoin que le résultat du Sprint est « simple ».
·         L’approche idéale, voire naturelle, est une revue en 2 parties : une complexe, une compliquée.
·         La conclusion de la revue de Sprint est un compromis simple: « Done » ou « not Done » ; acté en présence de tous les participants. Ce compromis permettra de revoir le cadre de projet (avec les utilisateurs et les clients), d’affiner les process de développement (rétrospective).

3.   La Rétrospective

·         La rétrospective est en théorie une « célébration » pour faire le point sur ce qui va et ce qui ne va pas. Celle-ci a clairement une vocation « complexe ». Cependant, le ScrumMaster, dans sa qualité de coach (spécialiste Scrum), vérifie la bonne exécution du process. De ce fait, le ScrumMaster est l’élément compliqué tirant une information complexe (retour de l’équipe) pour l’acter. Cet acte est quant à lui un indicateur simple, ex : formations supplémentaires, points de blocages, lead time, communication entre les membres, gestion des ressources, etc.…
·         L’objectif de la rétrospective est d’identifier ce qui ne va pas. Pas dans un esprit négatif, mais plutôt pour identifier les points d’amélioration.

4.   Le Sprint Planning Meeting

        •  Cet évènement reprend toutes les phases du modèle Cynefin :
          • Le Product Backlog, la Product Roadmap, le Release Plan sont des éléments simples
          • La Définition of Done (DOD) et le Level of Done (LOD) sont des éléments complexes
          • La priorisation et l’estimation sont des éléments complexes
          • Etc.
        • La complexité doit cependant être préservée pour créer un compromis juste et nécessaire entre la vision produit, la capacité de le développer et la qualité souhaitée.

5.   Le Release Planning

·         Il s’agit de la discussion entre le Product Owner, les clients et les utilisateurs afin de définir les points d’étapes du développement, de cadrer le projet.
·         Dans la 1e phase où la vélocité de l’équipe n’est pas encore connue, le Product Owner maintient un environnement complexe pour collecter les idées émergentes venant des participants.
·         Dans la 2e phase où le Product Owner est capable de donner une date de livraison, celui-ci maintien l’environnement complexe pour identifier les risques et améliorer les items de la 1e release. Cependant, celui-ci est compliqué en repoussant à une prochaine livraison toutes nouvelles fonctionnalités.

Conclusion

Ce n’est pas simple mais compliqué d’expliquer cette chose complexe…. (blague).
Si vous deviez retenir qu’une chose de cette information, c’est que Scrum est un travail d’équipe basé sur le compromis. Le compromis par essence réduit les possibilités de création mais induit un résultat. Apporter un résultat est un vecteur majeur de motivation de l’équipe (achievement) et des participants aux projets (retour sur investissement, réduction des risques).

Cynefin est un des nombreux outils RH permettant aux coachs, ScrumMasters, acteurs de changement, de mieux comprendre comment intégrer une approche agile dans un système différent, de mieux comprendre les synergies de groupe.

De mon côté, Cynefin est mon garde-fou. De part mon passé, je suis très « compliqué », en utilisant cette analyse, cela me permet de mieux comprendre où je suis et mieux comprendre où je vais.

Bonne lecture

Pierre

No comments:

Post a Comment