Une équipe, chez Hunter Industries, qui ne fournit aucune estimation à personne et décide de travailler sur un seul ordinateur…et leur management en redemande !
Présentation faite dans le cadre de l'Agile Tour Lille 2016.
Mob Programming et #NoEstimates : contre-intuitif et efficace
1. Mob Programming et #NoEstimates
Une équipe qui ne fournit aucune estimation à personne et décide de
travailler sur un seul ordinateur…
…et leur management en redemande !
Nicolas Umiastowski
Coach Agile
@n_umiastowski
Vendredi 14 octobre 2016
2. Le Mob Programming en une phrase
Tous les brillants esprits travaillant
Sur la même chose
En même temps
Au même endroit
Sur le même ordinateur
Woody Zuill
Trad. n_umiastowski
3. Strong-style pairing
"For an idea to go from your head into the computer it MUST
go through someone else's hands“
“Pour qu’une idée puisse aller de votre tête jusque dans
l’ordinateur, elle DOIT passer par les mains de quelqu’un
d’autre.”
Traduction n_umiastowski
Llewellyn Falco
7. Hunter Industries
Hunter Industries, communément appelée Hunter, est une
entreprise parmi les plus importants fabricants mondiaux de
produits d'arrosage automatique pour espaces verts, terrains
de sport et golfs.
fr.wikipedia.org
8. Le Mob Programming au quotidien
Tous les brillants esprits travaillant
Sur la même chose
En même temps
Au même endroit
Sur le même ordinateur
Woody Zuill
Trad. n_umiastowski
Tout au long de la journée, tous les jours
9. Hunter Industries : transformation agile
2011 2016
Une équipe :
Agile : Agile Manifesto
#NoEstimates
Mob Programming
Waterfall
8 équipes
travaillent
sur ce
mode
Recrutement d’un
development
manager / agile
coach
pour une équipe
Woody Zuill
20. Le Mob Programming au delà de la programmation
Tous les brillants esprits travaillant
Sur la même chose
En même temps
Au même endroit
Sur le même ordinateur
Une seule adresse Email
Un seul téléphone
Toutes les communications se font en commun
Tout se fait en commun
22. Le Mob Programming au delà de la programmation
Concevoir
Coder
Tester
Intégration continue
Déploiement continu
Recrutement
Apprentissage
…
23. Une équipe… des succès… qui ont essaimé
Quasiment aucun bug pendant 4 ans
Code robuste et testé
Aucune heure supplémentaire…
…8h – 17h (étude tous les matin de 8h à 9h)
Les managers ont demandé à étendre le Mob Programming à plusieurs
équipes
27. Comment commencer?
1/ Présenter le concept
2/ Commencer… avec une équipe motivée… et qui s’entend bien
3/ Ne pas demander l’autorisation
4/ 1 heure… par jour... par semaine…
Comment on interagit ensemble ?
Fizz Buzz ? Foo Bar ? Roman to Numerals?
Code d’une fonctionnalité produit? (c’est le code de quelqu’un )
5/ Faire des rétrospectives fréquentes
6/ Et plus si affinités
Et voilà ! That’s it ?
28. Bénéfices
C’est FUN !
Transmission de la connaissance (métier, technique)
Plus de super-héros
Améliorer les interactions
S’entre-aider en permanence
et non en « best effort »
29. Les problèmes commencent…
Tous ensemble tout le temps…
Les tensions apparaissent…
Et sont exacerbées…
Que faire ?
RETROSPECTIVE
Comment je veux être traité et traiter les autres ?
Gentilllesse
Considération
Respect
30. Effets connexes
Automatisation d’un maximum de tâches
Discipline sur les bonnes pratiques (tests unitaire, refactorisation)
Moins de stress
S’améliorer sur les « soft-skills »
Rétrospectives sur l’instant
Plus de stand-ups
Scrum Master ??!!
One-piece flow...
31. #NoEstimates?
One-piece flow
Développeurs : Quelle est la prochaine priorité….
Métier : celle-là
Développeurs : OK
Développeurs : …
Développeurs : c’est fait !
Développeurs : Quelle est la prochaine priorité….
Métier : celle-là
Développeurs : OK
Développeurs : …
Développeurs : c’est fait !
32. On livre (très) souvent
Développeurs : Suivante ?
Métier : celle-là
Développeurs : OK
Développeurs : …
Développeurs : c’est fait !
Développeurs : Suivante ?
Métier : celle-là
Développeurs : OK
Développeurs : …
Développeurs : c’est fait !
Développeurs : Suivante ?
Métier : celle-là
Développeurs : OK
Développeurs : …
Développeurs : c’est fait !
Développeurs : Suivante ?
Métier : celle-là
Développeurs : OK
Développeurs : …
Développeurs : c’est fait !
Développeurs : Suivante ?
Métier : celle-là
Développeurs : OK
Développeurs : …
Développeurs : c’est fait !
Développeurs : Suivante ?
Métier : celle-là
Développeurs : OK
Développeurs : …
Développeurs : c’est fait !
33. On veut livrer (très très) souvent
> Intégration continue
> Test-Driven Development
> Behaviour-Driven development
> Apprentissage quotidien
> Chaque équipier est un coach dans un domaine
> Le métier est présent au moins une heure par jour
> Il voit le produit qui se construit
> Il répond aux questions rapidement (discussion > Skype > téléphone…)
34. On veut livrer (très très) souvent
Ca va vite !
Qu’est-ce qui nous freine encore ?
Les estimations !
On veut découper en petites User Stories, et
livrer souvent des supers fonctionnalités, bien
développées et bien testées.
35. #NoEstimates
#NoEstimates :
Pas d’estimations,
à quoi servent les estimations,
ne pas baser les décisions uniquement sur des
estimations,
parler des estimations,
trouver des alternatives aux estimations,
découper n’est pas estimer
…
36. #NoEstimates
It’s in the doing of the work that we discover the work that
needs to be done
Woody Zuill
C’est en faisant le travail que l’on découvre le travail qui doit
être fait
Traduction Nicolas Umiastowski
37. #NoEstimates est avant tout un lieu de réflexion
Ne pas oublier le # dans #NoEstimates. Syndrome twitter :
Pensée simplifiée
Querelles de chapelles
Résumé rapides
Prise de position excessives
Ne pas oublier le Not Only dans #NotOnlyEstimates
38. #NoEstimates dans mon contexte (grandes organisations)
Une raison principale : les estimations (temps, coût,
effort) sont prises pour des engagements
Le projet est drivé par les estimations
Les ressources humaines sont pressurées
Les freins sont livrés avec ce modèle :
peu d’entraide
peu de motivation réelle
la vision produit qui se liquéfie
…
39. #NoEstimates dans une grande organisation
Ce qu’il faut améliorer avant tout
Visualiser le workflow existant
Repérer la contrainte principale
Alléger cette contrainte
Repérer la nouvelle contrainte principale
Alléger cette contrainte
Simplifier le process
Coacher métier et développeurs
41. #NoEstimates : Yes or No?
…Et les estimations ?
Si l’équipe les juge utiles : estimons !
Si le management les réclame : estimons !
Si les problèmes se résolvent, que l’équipe livre mieux et
plus souvent, des petite User Stories…ne parlons pas
d’estimations !
42. #NoEstimates est avant tout un lieu de réflexion
Donc #NoEstimates :
Discussion : Pourquoi estimer ? A quel prix ?
Choix : participer à la discussion,
ne plus faire d’estimations,
ne pas faire toujours des estimations….
Discutons !
43. Pour en revenir à l’exemple Hunter Industries…..
Faire venir un coach
Lui laisser l’initiative
Attendre des succès avec une équipe
Ancrer le savoir (apprentissage, répétition)
Laisser le coach s’en aller
Etendre à plusieurs équipes
44. Hunter Industries…..
On parle beaucoup de « Scaling Agile » (Agile à l’échelle)
> Spotify
> SAFe
> DAD
> Scrum of Scrum (2001…)
On parle peu de Hunter….
Et pourtant !