Minimum Viable Product
Kanban #noEstimates
Extreme Programming
Boostez votre création de valeur!
slido.com #4306
Julien Topçu
Sr Lead Dev @
@JulienTopcu
https://beyondxscratch.wordpress.com/
julien.topcu@owasp.org
Petit Sondage
Pourquoi on a arrêté de faire du Scrum
Planning
Daily Scrum
Le Sprint un sport individuel par définition
Le dernier jour du Sprint...
Potentiellement livrable...
Une tâche non livrée est
une dette qui génère des intérêts
Une tâche crée de la valeur à partir du moment où son contenu est utilisé par un client
i.e.
Quand son ROI est activé
Si les priorités changent, on préfère attendre le sprint suivant
Les limites du Scrum
Met en place des réunions lourdes à l'efficacité discutable
Ne favorise pas le travail d'équipe
N'est pas assez flexible vis-à-vis du changement et des aléas
N'optimise pas le ROI, et la création de valeur
S'appuie sur des estimations subjectives qui sont souvent fausses
KanBan
ou Comment se débarrasser du superflu,
Comment être plus flexible face au changement
et Comment optimiser la création de valeur
Taiichi Ōno
ToDo
+ prioritaire
- prioritaire
Règle #1
On se focalise sur ce qui créer le plus de valeur
ToDo
In Progress
Code Review
To Release
+ prioritaire
- prioritaire
Règle #2
Les stocks coûtent de plus en plus chers à mesure qu'ils se rapprochent du client final
Règle #3
Limiter le travail en cours !
Pensez à un ThreadPool
Evitez le "coding frenzy"!
Plusieurs tâches par personne
=
Goulot d’étranglement
ToDo
In Progress
Code Review
To Release
3
2
No!
Une tâche qui est commencée doit absolument être terminée le plus rapidement possible
Lead Time
Debit = WIP/LeadTime
Debit=WIP/LeadTime
Loi de Little
Cycle Time
ToDo
Done
LeadTime = WIP/Debit
LeadTime=WIP/Debit
Réduire le WIP = Réduire le Lead Time
⇔
Accélérer la création de valeur
Pas de Sprints
ToDo
New
New
Avantage #1: la Flexibilité
Avantage #2
Ne pas avoir de Sprints favorise le Continuous Delivery
La performance:
maintenir le leadTime à son minimum
Le leadTime se termine lors de la mise en production
Une tâche n'est réellement finie que lorsqu'elle est livrée en production i.e. à partir du moment où elle crée de la valeur
Pas de Scrum Master
Le rôle du développeur n'est pas que d'écrire du code !
S'assurer que le pipeline de production fonctionne est le rôle de tous
Pas de réunions de Plannings
En admettant que les priorités peuvent changer à chaque instant, la réunion de planning n'a plus de sens
Et parce qu'on livre à chaque tâche
Pas de réunions interminables où tout le monde s'ennuie
=
Plus de temps à se consacrer à la création de valeur
Mais alors comment fait-on pour savoir quand vont être livrées nos features ?
Les estimations...
Petite expérience!
A good estimation approach should provide estimates that are within 25% of the actual results 75% of the time
Conte, Dunsmore and Shen (1986)
Estimer coûte cher sans fiabilité garantie et sans ROI
A quoi servent les estimations?
ou comment s'affranchir des estimations subjectives
#NoEstimates
La prédictibilité
Il y'a 2 sortes de tâches:
-
Les trop grosses
-
Les assez petites
Maintenir la calibration en cours de développement!
Se servir du passé pour prédire le futur
ToDo
...
...
Last
Last
#15
#1
#25
Si les priorités changent,
Les dates de livraison changent !
Il faut que le pipeline de production soit assez stable !
#NoEstimates n'est pas la totale abolition des estimations !
Se focaliser sur la vision produit
Faire des cycles courts
Prédire par les data
L'alternative
Extreme Programming
ou comment mieux travailler ensemble
Représentant du client sur site
Intégration continue
Rythme soutenable
Convention de nommage
Tests!!! TDD
Poker Planning
----------------
Petites livraisons
Conception simple
Refactoring
Le pairing
1 pilote
1 copilote
Permet de faire de meilleurs choix plus vite
Moins de risques qu'une tâche se retrouve à l'arrêt
Changement des rôles et des paires à chaque nouvelle tâche
Réduit fortement la courbe d'apprentissage
ToDo
In Progress
Code Review
To Release
Pair
Review
Tout le monde fait toutes les codes reviews!
Appropriation collective du code
Des stand-up plus efficaces
La connaissance individuelle tend vers la connaissance collective
KanBan #noEstimates + XP
boostent la création de valeur en:
-
Limitant le travail en parallèle
-
Favorisant des cycles de release très courts
-
Supprimant les rôles et activités superflus
-
Se focalisant sur ce qui est important
-
Renforçant le travail d'équipe
-
Répandant plus largement et rapidement la connaissance
Mais...
-
Consomme plus d'énergie
-
Nécessite une adhésion complète de l'équipe
-
Demande plus de discipline
-
Peut augmenter les interdépendances
-
Requière une grande capacité de recul
-
Exige une vision claire des priorités
-
S'adapte mal aux grosses équipes
Merci!
Q&A?!
Kanban #noEstimates XP
By Julien Topçu
Kanban #noEstimates XP
- 1,206