Introduction
Selon le Manifeste Agile, l’agilité favorise les individus et les interactions plutôt que les processus et les outils.
Les utilisateurs ou leurs représentants et les développeurs doivent travailler ensemble quotidiennement tout au long du projet.
Si le Product Owner et la Scrum Team ne peuvent absolument pas travailler sur le même espace de travail, par exemple dans le cas d’un projet offshore, alors il faut aménager la démarche Agile et renforcer les processus et les outils de communication à l’oral comme à l’écrit.
Point Clès
Cet article présente des préconisations par activité et par événement de projet dont certaines s’appliquent à tout projet multi-sites et d’autres sont spécifiques aux méthodes agiles.
On dévoilera aussi tous les pièges à éviter dans un projet agile à distance.
Organisation de l’Equipe
Répartition des rôles sur plusieurs sites
- Nommer un Scrum Master dans la Dev Team pour faciliter la réussite opérationnelle du projet.
- Nommer un Tech Leader dans la Dev Team pour garantir une architecture technique et applicative fiable. Si besoin, faire intervenir un Architecte Technique front pour challenger les choix et faire des revues.
- Nommer un Quality Analyst dans la Dev Team pour faciliter la vérification au cours du sprint : Il est important que le Business Analyst (la personne ayant écrit les spécifications) participe à la vérification en cours de sprint, idéalement il fera la mise au point avec les développeures, même s’il est à distance.
- Nommer le Business Analyst en proximité du Product Owner pour faciliter la compréhension du besoin. Lorsque cela n’est pas possible (Business Analyse offshore), prévoir un déplacement du Business Analyst sur les jalons clefs (phase de cadrage, fin de conception).
- Identifier le responsable de l’engagement des ressources du site distant (Project Manager Offshore).
- Si la Dev Team agile est répartie sur plusieurs sites, décomposer la responsabilité du produit entre chaque site.
- Créer des listes de diffusion pour favoriser la transparence : Dev Team + équipe pilotage.
Le Piège
Dédoubler par site les rôles à responsabilité ce qui ne favorise pas la proximité.
KICK OFF
RÉUNIR TOUS LES CONTRIBUTEURS SUR LE MÊME SITE EN FIN DE SPRINT 0
- Apprendre à se connaître pour créer une synergie :
- Inviter le Product Owner et le Business Owner client sur le site de la Dev Team.
- Comprendre le rôle de chacun dans le projet.
- Prendre conscience des différences culturelles.
- Organiser un évènement festif : jeu agile, visite de la ville, restaurant, soirée, photo équipe.
- Présenter les enjeux du projet :
- Vision du produit et sa roadmap (par le Product Owner)
- Organisation du projet (par le Scrum Master)
- Partager les choix du sprint0 :
- Product Backlog (par le Product Owner)
- Architecture technique et applicative (par le Tech Leader)
- Environnements techniques iso sur tous les sites (par le Tech Leader)
- Charte graphique (par l’Art Director)
- User Experience map (par l’Ux)
Le Piège
Organiser un Kickoff à distance pour réduire les coûts.
CONCEPTION
IMPLIQUER LA DEV TEAM DISTANTE DANS LA CONCEPTION
- Organiser des ateliers métiers en présence, si possible physique, d’au moins une personne de la Dev Team distante (Tech Leader)
- Impliquer au moins une personne de la Dev Team distante (Tech Leader) lors des Product Backlog Review en remote.
- Organiser une revue de pair systématique sur les documents de conception par la Dev Team (avant envoi au client)
- Impliquer le Quality Analyst dans la conception (idéalement, il contribue à la rédaction des specs ou fait la revue de pair)
- Détailler de manière plus formelle les documents de conception technique et fonctionnelle et les passer en revue avec la Dev Team.
Le Piège
« Coller à la spécification » plutôt que de contacter le Product Owner lors du développement.
SPRINT PLANNING / REVIEW / RETROSPECTIVE
ORGANISER LE MAXIMUM DE RITUELS AGILES DES SPRINTS SUR LE MÊME SITE
- Planifier des sprints plus longs de 3 à 4 semaines, par rapport à une organisation mono-site.
- Réunir toute l’équipe Scrum (y compris le Product Owner client) 2 jours sur le site de la Dev Team, au moins 1 sprint sur 2 :
- J1 : Sprint Review N,
- J1 : Sprint Retrospective N,
- J2 : Sprint Planning N+1.
- En cas de démonstration à distance, vérifier le bon fonctionnement de la connexion et prévoir des vidéos en backup (si possible avec les commentaires sur la bande son).
- En cas de Sprint Review sur un site distant, proposer au Product Owner de présenter lui-même le produit aux parties prenantes (qui ne sont pas sur site) après la Sprint Review plutôt que de les faire participer en remote.
- En présence du Sponsor (ou autres parties prenantes) en confcall, éviter de demander aux développeurs offshore de présenter à tour de rôle le produit (risque sur la qualité du son et sur le langage technique)
Le Piège
Croire que les techniques de communication digitales sont aussi efficaces que des échanges physiques.
INTÉGRATION
SUIVRE L’AVANCEMENT DU PRODUIT SUR L’ENVIRONNEMENT D’INTÉGRATION
- Multiplier les sessions « one 2 one » de partage d’écran entre Product Owner et Développeur pour les mises au point.
- Découper finement les User Story (à découper en sous tâches de moins d’une journée).
- Partager le workflow des demandes (User Story et anomalies).
- Convenir d’une vérification des user story au cours du sprint sans attendre le Sprint Review, afin de réduire le risque d’incompréhension.
- Tester les User Story sur la plateforme d’intégration et non pas de développement.
- Définir et partager la notion de Done en insistant sur les tests unitaires et sur l’intégration continue.
- Mettre en place une bonne gestion de configuration.
Le Piège
Attendre le dernier moment pour intégrer d’autres composants.
DAILY SCRUM
ORGANISER UN POINT ÉQUIPE MULTI-SITES
- Définir l’heure ensemble selon le décalage horaire.
- Mettre en place un point équipe quotidien par skype avec tous les participants.
- Etre rigoureux dans le respect des horaires.
- Afficher de manière partagé le Scrum Board (radiateur d’information) et le mettre à jour avant le Daily Scrum.
Le Piège
Organiser un Daily Scrum par site.
TESTS
METTRE EN PLACE UNE VÉRIFICATION CONCERTÉE
- Elaborer la stratégie de tests de manière concertée.
- Formaliser de manière plus détaillée les scénarios de tests.
- Se répartir l’effort de tests entre les sites.
- Etre exigent sur la qualité dès les premiers sprints.
- Faire participer le Product Owner (ou le Business Analyst) dès la mise au point.
Le Piège
Déléguer les tests système au site distant.
STEERING COMMITTEE (Comité de Pilotage)
IMPLIQUER LES RESPONSABLES DES SITES EN STEERING COMMITEE
- Faire participer le Scrum Master distant au Steering Committee avec le client.
- Sur les gros projets ou les projets en difficulté, organiser un Comité de pilotage interne avec le responsable de l’engagement des ressources du site distant pour :
- Rendre compte de l’avancement du projet.
- Partager les règles de répartition budgétaire.
- Prendre toute décision stratégique.
Le Piège
Ne pas impliquer de responsable du site distant au Comité de Pilotage
PILOTAGE
PRENDRE LES DÉCISIONS DE MANIÈRE COLLÉGIALE “ONE PROJECT & ONE TEAM”
- Augmenter délibérément l’effort et la qualité de communication.
- Se doter d’outils de communication performants (salle de visio, réseau, téléphone, …).
- Dégager une vision commune de la situation et des risques opérationnels du projet.
- Associer le management des agences aux décisions stratégiques.
- Prévoir une charge supplémentaire liée à l’effet distance (pilotage, conception, tests, rework).
- Provisionner un budget de déplacement.
- Ne pas considérer le site distant (offshore) comme un sous-traitant en partageant les mêmes objectifs pour tous les sites.
Le Piège
Perdre le contact opérationnel en déléguant sans aucun contrôle.
CÉRÉMONIES
FÊTER ENSEMBLE LE SUCCÈS
- Si possible réunir les équipes pour fêter un événement tel que :
- Signature du contrat
- Mise en place pilote
- Recette de release
- Sinon, organiser une fête à distance par skype ou Teams et partager la célébration par visio conférence si possible.
- Inciter le client à envoyer un mail ou une vidéo de remerciements.
Le Piège
Fêter un événement sans le site distant.
CONCLUSION
- La distance est un frein à la communication et peut introduire différentes contraintes :
- Le décalage horaire.
- Les jours fériés.
- La langue.
- La culture.
- Mais la plus grande distance est celle que nous mettons entre nous (parfois à quelques mètres)
- Faire l’effort d’échanges physiques surtout au début du projet.
- Augmenter l’effort de formalisation.
- L’outillage aidera à mieux communiquer quelle que soit la distance.
- Prendre en considération l’autre est tout aussi important.
- La distance ne se mesure pas ici en kilomètres mais en qualité de communication.
0 commentaires