Aucune de mes inventions ne sont venues par accident. Je vois un besoin digne d’être rencontré et je fais procès après procès jusqu’à ce qu’il vienne.

—Thomas Edison

Itérations

Les itérations sont la pierre angulaire du développement Agile. Chaque itération est une boîte de temps standard de longueur fixe, dans laquelle les équipes agiles fournissent une valeur incrémentielle sous la forme de logiciels et de systèmes testés et fonctionnels. La durée recommandée de la timebox est de deux semaines. Cependant, une à quatre semaines est acceptable, selon le contexte commercial.

Les itérations fournissent aux équipes une cadence régulière et prévisible leur permettant d’accroître leur valeur et d’affiner celles déjà développées. Ces brefs délais aident l’équipe, les Products Owners, les Product Managers et d’autres parties prenantes à tester les hypothèses techniques et commerciales dans un système opérationnel. Chaque itération ancre un point d’intégration, un «événement tiré» qui associe divers aspects du système – fonctionnalité, qualité, alignement et aptitude à l’utilisation – parmi toutes les contributions des équipes.

Détails

Comme le délai d’exécution durable le plus court est un objectif important des cycles d’apprentissage SAFe, les équipes Agiles exécutent un cycle complet de planification-exécution-vérification-ajustement (PDCA) aussi rapidement que possible. Le cycle d’apprentissage PDCA (illustré à la figure 1) représente les événements d’itération suivants:

Figure 1. Cycle de planification, de vérification et d’ajustement d’une itération

Les itérations constituent un cycle de développement unique dans lequel chaque équipe Agile définit, construit, intègre et teste les Stories à partir de leur backlog d’itérations. Chaque itération se termine par une inspection de l’incrément de l’équipe afin d’évaluer les progrès ainsi que du backlog mis à jour pour la prochaine itération. Ensuite, l’équipe prépare et participe à la System Demo, qui offre une vue intégrée des nouvelles Features de la dernière itération proposée par toutes les équipes du train Agile Release Train (ART).

Planifier l’itération

La réunion de planification des itérations est l’étape de «planification» du cycle PDCA. Il aligne tous les membres de l’équipe sur les objectifs communs décrits par les objectifs de l’équipe PI et sur le résultat à présenter lors de l’Iteration Review et des system demos.

Au cours de cet événement, tous les membres de l’équipe collaborent pour déterminer le volume de backlog d’équipe qu’ils peuvent s’engager à fournir lors de la prochaine itération. L’équipe résume le travail sous la forme d’un ensemble d’objectifs d’itération déterminés.

Toutefois, les détails de la planification diffèrent selon que l’équipe travaille sous ScrumXP ou Kanban.

Exécuter l’itération

L’Iteration Exécution est le processus de la manière dont le travail est effectué. Au cours de l’itération, l’équipe termine la partie «faire» du cycle PDCA en construisant et en testant la nouvelle fonctionnalité. Les équipes livrent les Stories de manière incrémentielle, en présentant leur travail au responsable du produit dès qu’ils sont terminés, ce qui permet aux équipes de se rendre à la revue des itérations prêtes à montrer leur travail. Le relevé quotidien quotidien (DSU) représente un cycle PDCA plus petit au sein de l’itération. Chaque jour, les membres de l’équipe se rencontrent pour coordonner leurs activités, échanger des informations sur les progrès accomplis dans la réalisation des objectifs d’itération et soulever des problèmes de blocage et des dépendances. La cadence d’itération se produit dans un cycle PDCA d’incrémentation de programme (PI) plus important. L’IP agrège la valeur développée par chaque équipe Agile en un jalon significatif pour mesurer objectivement la solution en développement.

Revue des itérations

La revue des itérations est l’étape de «vérification» du cycle PDCA. Cet examen permet aux équipes de montrer une augmentation testée de la valeur au responsable du produit et de recevoir des commentaires sur ce qu’elles ont produit. Certaines histoires seront acceptées. d’autres seront affinés par les connaissances acquises au cours de l’itération. L’équipe rédigera ensuite l’arriéré final pour la planification de la prochaine itération. À la suite de l’examen des itérations, les membres de l’équipe participent à une démonstration du système intégré. Cette démo est le premier point d’intégration formel des équipes sur ART et sert d’événement «pull» pour assurer une intégration et une validation rapides au niveau du programme. Au sein de l’itération, l’incrément du système est continuellement intégré et évalué en fonction du contexte système.

Améliorer le processus

La rétrospective d’itérations est l’étape de «réglage» pour l’itération globale. Ici, l’équipe évalue son processus et toutes les histoires d’amélioration de la précédente itération. Ils identifient les nouveaux problèmes et leurs causes – ainsi que les points positifs – et créent des histoires d’amélioration qui entrent dans l’arriéré de l’équipe pour la prochaine itération. Cette réflexion régulière est l’un des moyens de garantir que des améliorations incessantes (l’un des piliers de la mentalité SAFe Lean-Agile) se produisent au niveau de l’équipe. Les rétrospectives d’itération induisent également les modifications au niveau du programme à traiter immédiatement ou lors de l’événement Inspecter et adapter (I & A). Avant que le prochain cycle de planification ne commence, l’arriéré est ajusté pour inclure les décisions de la révision et de la rétrospective des itérations. Le responsable de produit procède à la refactorisation et redéfinit les priorités en fonction des besoins.


Apprendre encore plus

[1] Cockburn, Alistair. “Using Both Incremental and Iterative Development.” STSC CrossTalk 21, 2008.

[2] Maurya, Ash. Running Lean: Iterate from Plan A to a Plan That Works. O’Reilly Media, 2012.


© Scaled Agile, Inc.