Le Blog de Digitaleo - Une seule plateforme pour votre communication locale

L'agilité chez Digitaleo

Rédigé par Charline Enée | 27 juin 2018

Chez Digitaleo, l'équipe R&D est très agile. Il ne s'agit pas de capacités physiques, mais bien d’état d'esprit! Les méthodes de travail agiles ont été mises en place il y a environ 8 ans, et sont devenues l'ADN de la R&D. Nous travaillons principalement en scrum et suivant les principes du manifeste, cependant rien n'est figé, l'équipe adapte en permanence son organisation en fonction de ses besoins et envies. Ce cadre favorise l’acceptation au changement, la motivation des équipes, la communication.... 

 

1. Organisation en villages

Chez Digitaleo, vous pouvez croiser des célébrités : Ironman, Hulk, Homer Simpson, Bender (Futurama), ou encore les garnements de South Park… Tout simplement car au sein de la R&D, les développeurs sont regroupés en “villages”, auxquels il convient de trouver un nom ! Petit historique des villages en cours et passés : Futurama, Marvel, South Park, Springfield, le village des Schtroumpfs... Chaque membre d’un village se choisit un personnage, ce qui facilite le management visuel sur nos différents outils (numériques ou affichage papier dans l’open space).

3 rôles sont représentés dans chaque village :

  • Le Product Owner (PO) est le représentant du client, il définit les fonctionnalités du produit et maintient le Product Backlog (les fonctionnalités à venir priorisées).
  • Le Scrum Master (SM) est un facilitateur pour l’équipe (dont il fait partie) ; il s’assure du respect des processus agiles, planifie et anime les cérémonies, travaille en binôme avec le PO pour anticiper les besoins et obstacles à venir concernant les futures fonctionnalités.
  • Les membres de l’équipe sont responsables de la conception, de la réalisation, de la mise en production et de la maintenance des fonctionnalités.

Les membres de l’équipe opérations, qui ont en charge le maintien en conditions opérationnelles et l’évolution des différents environnements du développement à la production, ainsi que nos services d'envoi multicanaux, ne sont pas dans les villages. Ils sont cependant dans le même espace de travail, ce qui permet des échanges constants, dans une philosophie Devops.

 

2. Une approche itérative

Traditionnellement, en développement de projet informatique, on établit avec le client un cahier des charges, dont les développeurs seront en charge de la réalisation. À la fin de la réalisation (donc au bout de plusieurs mois), le projet est livré au client, qui se rend compte que certaines fonctionnalités décrites “sur le papier” nécessitent en fait de nombreux ajustements par rapport à son idée de départ. Il est en effet quasiment impossible d’imaginer de A à Z le produit qui correspond exactement à un besoin ! Il y a toujours des cas imprévus, une ergonomie à revoir, des fonctionnalités manquantes, etc... On repart alors pour plusieurs mois de développement (avec du dépassement de temps et de budget).

Pour éviter cet effet tunnel (pas de retour sur le produit pendant toute la phase de développement), les méthodes agiles proposent d’avancer par itération pour mener à bien le développement du produit. Pour cela, à la mise en place d’une nouvelle fonctionnalité, nous allons la diviser en plusieurs sous fonctionnalités que nous ajouterons l’une après l’autre. Nous pouvons ainsi régulièrement présenter l’avancée de ce travail et intégrer rapidement les retours. Cela permet également de se concentrer sur l’essentiel ; on commencera évidemment par développer les fonctionnalités principales du produit, permettant ainsi au client de le tester rapidement.

 

3. Les sprints

En scrum, une itération est appelée un “sprint”, dont la durée, définie par l’équipe, est toujours la même. La durée fixe permet d’anticiper et de prévoir, car au fil des sprints l’équipe peut évaluer facilement la charge de travail qu’elle est en capacité d’effectuer au cours d’un sprint.

Les fonctionnalités sont découpées en “user stories” (“US”) : une partie de la fonctionnalité principale indépendante, qui apporte de la valeur au client. Voici quelques exemples d’US réalisées récemment pour la plateforme Digitaleo. Si vous êtes client de Digitaleo, vous avez d’ailleurs peut-être déjà utilisé ces nouvelles fonctionnalités !

  • En tant qu'utilisateur, je souhaite connaitre la durée de validité d'une smartpage afin de ne pas être surpris de sa désactivation.
  • En tant que créateur de campagnes, je souhaite pouvoir exporter les désabonnés d'une campagne afin de mettre à jour mon CRM.
  • En tant que chargé d'opération marketing pour une grande enseigne, je souhaite visualiser mes KPIs de performance ratios de performance sur le tableau de bord afin de voir visualiser rapidement la qualité de la base de données de mes points de vente.

Un sprint est ponctué par différentes cérémonies :

  • La planification de sprintle Product Owner propose un ensemble d’US à réaliser dans les prochaines semaines; l’équipe en sélectionne un certain nombre, et s’engage à les réaliser au cours du sprint qui commence. Les US sélectionnées sont ajoutées au scrumboard du village : un tableau avec des colonnes “à faire”, “en cours” et “terminé”.
  • La découpe en tâches  : des US proposées et expliquées par le Product Owner sont divisées en tâches à accomplir par l’équipe; cela permet à chacun de comprendre la fonctionnalité, d’échanger avec le Product Owner si des points sont flous ou à améliorer, et enfin aux développeurs de discuter des aspects techniques à réaliser.
  • Le chiffragel’enjeu est de déterminer la complexité de chaque US, en leur attribuant des points de complexité; l’échelle est propre à chaque village, et le choix d’un montant de point se fait par comparaison avec des US déjà évaluées par le village. On discute jusqu’à obtenir un consensus !
  • La mêlée quotidiennetous les matins, l’équipe se réunit autour du scrumboard : tour à tour, chacun dit sur quoi il a travaillé la veille; ce qu’il va faire aujourd’hui; et s’il rencontre des problèmes, auquel cas l’équipe en discute pour trouver une solution. Si nécessaire, les tickets des tâches à réaliser sont déplacés d’une colonne à l’autre (de “en cours” à “terminé” par exemple). Ainsi, à la fin de la mêlée, tout le monde sait qui fait quoi, et si quelqu’un a besoin d’aide.
  • La revue de sprinten fin de sprint, le village reprend chaque US terminée et traque les derniers ajustements à apporter : libellé à revoir, ergonomie, bugs…
  • La démonstrationil est temps pour le village de montrer le résultat de son travail au reste de l’entreprise : les fonctionnalités réalisées sont présentées à tous, ce qui donne également lieu à des échanges. Si des remarques sont pertinentes, elles peuvent bien sûr se transformer en US pour les prochains sprints !
  • La rétrospective : le village fait le bilan sur le sprint qui vient de se terminer : ce qui s’est bien passé, ce qui aurait pu être mieux, ce qu’on souhaite mettre en place … Le but de ce moment est d’essayer d’améliorer le fonctionnement du village, pour améliorer sa productivité et que chacun s’y sente bien.

 

4. Conclusion

Chez Digitaleo, l’agilité fait partie de l’ADN de la R&D. Preuve en est, nous avons été labellisé AgileIndex par choosemycompany & Wemanity. Elle apporte de l’autonomie, de l’efficacité et du bien-être au quotidien. Certains principes ont même été adoptés par d’autres services ! Nous sommes effectivement convaincus que l’agilité peut s’étendre au-delà des équipes de développement. Peut-être que cette présentation rapide du fonctionnement de la R&D chez Digitaleo vous donnera envie de mettre en place un scrumboard ou des mêlées quotidiennes, voire de postuler au sein de notre équipe ?