Weitere ähnliche Inhalte Ähnlich wie Agile Grenoble - Optimiser votre delivery à l'aide d'une démarche validée scientifiquement (20) Mehr von OCTO Technology (20) Agile Grenoble - Optimiser votre delivery à l'aide d'une démarche validée scientifiquement3. There
is
a
better
way
3
OCTO Part of Accenture © 2021 - All rights reserved
Agenda
3 conférences en 1
Livre ou démarche ?
Fiche de lecture synthétique
Et en vrai, c’est utile ?
REX de missions
Initiation au
changement
L’atelier qui vous fera raconter
“Ici commence notre histoire…”
1 2 3
5. There
is
a
better
way
5
OCTO Part of Accenture © 2021 - All rights reserved
https://itrevolution.com/book/accelerate/
Quelles sont les caractéristiques d’une
organisation technologique performante ?
NICOLE FORSGREN JEZ HUMBLE GENE KIM
Directrice scientifique
DevOps Research
& Assessment
(DORA)
Co-auteur
The DevOps
Handbook
Lean Enterprise
Continuous Delivery
CTO, co-auteur
The Phoenix Project
The DevOps Handbook
The Visible Ops
Handbook
Le livre est le résultat d’une recherche
6. There
is
a
better
way
6
OCTO Part of Accenture © 2021 - All rights reserved
Les données du protocole de recherche
๏ 4 années de recherche (2014-2017) via le
sondage State of DevOps Report
๏ Quelques chiffres :
> 23 000 réponses
> 2 000 organisations
> de 1 à + de 10 000 employés
> de 1 à + de 100 000 serveurs
> Multi-secteur : finance, santé,
gouvernement...
> Multi-système : greenfield, brownfield
8. There
is
a
better
way
8
OCTO Part of Accenture © 2021 - All rights reserved
La performance de delivery : facteur de prédiction
Les organisations les plus performantes dans leur delivery
atteignent en moyenne deux fois plus souvent leurs objectifs
que les organisations les moins performantes
9. There
is
a
better
way
9
OCTO Part of Accenture © 2021 - All rights reserved
Les quatre métriques Accelerate
Change
failure rate
Mesure l’optimisation
du flux de production
de valeur
Mean time
to repair
Lead time
for change
Deployment
frequency
Mesure la rapidité de
mise à disposition en
production du code
finalisé
Mesure la performance
de correction d’un
défaut
Mesure la qualité du code
livré
INDICATEURS DE VITESSE INDICATEURS DE STABILITÉ
10. There
is
a
better
way
10
OCTO Part of Accenture © 2021 - All rights reserved
Les différents niveaux de performance en 2019
Elite
performers
High
performers
Medium
performers
Low
performers
INDICATEURS
DE VITESSE
Deployment frequency
< 1 / jour
(à la demande)
1 / jour -
1 / semaine
1 / semaine -
1 / mois
1 / mois -
1 / 6 mois
Lead time for change < 1 jour
1 / jour -
1 / semaine
1 / semaine -
1 / mois
1 / mois -
1 / 6 mois
INDICATEURS
DE STABILITÉ
Mean time to repair < 1 heure < 1 jour < 1 jour
1 semaine -
1 mois
Change failure rate 0 -15% 0 -15% 0 -15% 46 - 60%
11. There
is
a
better
way
11
OCTO Part of Accenture © 2021 - All rights reserved
“ Lorsqu'une mesure devient un objectif,
elle cesse d'être une bonne mesure ”
- Loi de GoodHart
Encore des indicateurs ?
13. There
is
a
better
way
13
OCTO Part of Accenture © 2021 - All rights reserved
Du modèle de maturité au modèle d’aptitudes
Mais qu’est-ce qu’une aptitude ?
Une pratique concrète et mesurable
15. There
is
a
better
way
15
Les 24 aptitudes
Change
approval
process
Monitoring
Proactive
notification
WIP limits
Visualizing work
Lean
Management &
Monitoring
Cultural
Westrum
organizational
culture
Cultural
Collaboration
among teams
Cultural
Job satisfaction
Cultural
Transformational
leadership
Cultural
Supporting
learning
Architecture
Continuous
Delivery
Continuous
Delivery
Continuous
Delivery
Continuous
Delivery
Continuous
Delivery
Continuous
Delivery
Continuous
Delivery
Continuous
Delivery
Version
control
Deployment
automation
Continuous
integration
Trunk-based
development
Test
automation
Test data
management
Shift left on
security
Continuous
delivery
Loosely
coupled
architecture
Architecture
Empowered
teams
Product &
Process
Customer
feedback
Product &
Process
Value stream
visibility
Product &
Process
Working in
small batches
Product &
Process
Team
experimentation
Lean
Management &
Monitoring
Lean
Management &
Monitoring
Lean
Management &
Monitoring
Lean
Management &
Monitoring
17. There
is
a
better
way
17
OCTO Part of Accenture © 2021 - All rights reserved
Positionner votre delivery à un haut niveau de
performance pour que les livraisons soient une question
d’opportunités business et non de risques techniques
Objectif : faire du delivery un non-sujet
Chercher le plus court chemin vers la production
pour dérisquer les hypothèses business
Mettre en place un collectif unique responsabilisé
sur la conception, la réalisation et l’exploitation
Dédramatiser la mise en production pour pouvoir
livrer quand on le souhaite et sans risque
Privilégier la rapidité d’exécution pour agir en
fonction des retours réels collectés en production
18. There
is
a
better
way
18
OCTO Part of Accenture © 2021 - All rights reserved
Ce qu’on cherche à faire dans le développement logiciel
DO THE
RIGHT
THING
DO THE
THING
RIGHT
DO IT FAST
19. There
is
a
better
way
19
OCTO Part of Accenture © 2021 - All rights reserved
19
There
is
a
better
way
Un virage à 180° dans la façon de le faire
DO THE
RIGHT
THING
DO THE
THING
RIGHT
DO IT FAST
DO THE
RIGHT
THING
DO THE
THING
RIGHT
DO IT FAST
21. There
is
a
better
way
21
INVIVO : présentation succincte
◉ InVivo a pour mission de redonner à l’agriculture et à la coopération
agricole françaises toute leur place dans la chaîne de valeur
alimentaire mondiale, dans le respect de la planète et des hommes
◉ Projet stratégique 2025 pour accélérer la transformation digitale au
service de la performance des coopératives, des agriculteurs et de ses
métiers. C’est dans ce contexte qu’a été créée InVivo Digital Factory
pour piloter et mettre en oeuvre cette transformation
Quelques chiffres :
◉ 45% du marché agricole français
◉ 5,2 milliards de CA
◉ 201 coopératives sociétaires
◉ 7 unions régionales
◉ 300 000 agriculteurs
3 pôles d’activités
22. 22
There
is
a
better
way
OCTO Part of Accenture © 2021 - All rights reserved
INVIVO Digital Factory : un dispositif large, encore en croissance
◉ 6 “ impacts ” teams
◉ 1 équipe dev transverse
◉ 1 équipe OPS
◉ 1 studio
◉ 1 équipe Evolve (archi - craft - coaches)
OPS
OPS
OPS
UI
UX
UX
UI
Tech
lead
Dév
Front
Dev
API
Dev
API
COACH
COACH
COACH
Enjeu fort pour assurer un suivi objectif
du delivery de ces équipes
Tech
lead
Dév
Front
Dev
API
Dev
API
Dev
Front
PO
Tech
lead
Dév
Front
Dev
API
Dev
API
Dev
Front
PO
Tech
lead
Dév
Front
Dev
API
Dev
API
Dev
Front
PO
Tech
lead
Dév
Front
Dev
API
Dev
API
Dev
Front
PO
Tech
lead
Dév
Front
Dev
API
Dev
API
Dev
Front
PO
Tech
lead
Dév
Front
Dev
API
Dev
API
Dev
Front
PO
23. 23
There
is
a
better
way
OCTO Part of Accenture © 2021 - All rights reserved
Dans cet environnement Agile devenu complexe et changeant, il y a eu
une perte de confiance dans la direction du delivery par le manque
d’emprise sur le système
Total
Backlog
Réalisé
Système basé
sur la vélocité
● 7 équipes de
dév
● priorités
business et
produit qui
changent
1
2
Difficile de se
projeter à 3 mois
● pour prévoir les
impacts
● pour identifier les
dépendances en
amont
● pour tenir
compte de la
dette
3
Système
finalement
peu prédictif
● Ne propose pas de mesure
directe de la vitesse et de la
qualité
● N’aide pas à améliorer les
livraisons multi-équipes
Par exemple, on voit ici que le
backlog produit se construit au
fur et à mesure de l’incrément
24. 24
There
is
a
better
way
OCTO Part of Accenture © 2021 - All rights reserved
Viser l’élite du marché et livrer au client une Digital Factory clé en main à l’
état de l’art
Le benchmarking permet alors de
- répondre à la question : “ mon delivery est-il performant ? “
- définir un niveau réaliste et acceptable de bugs (plutôt que viser le zéro défaut)
- prioriser le développement des capabilities sous-jacentes Accelerate
Increment 5
Increment 4
Pour mesurer l’efficacité, on utilisera les OKRs
Pour les engagements, les burnDowns des équipes
La baisse apparente de stabilité est
à mettre au regard de la
croissance et des changements
concomitants d’orga et d’archi
25. OCTO © 2018 - Reproduction interdite sans autorisation écrite préalable
Résultat : des tableaux de bords live
permettant d’activer un plan d’actions
C’est live et ça se voit!
◉ Fréquence de rafraîchissement à l’heure
◉ Projeté en continu sur un écran du plateau
◉ Présenté systématiquement à la fin des
itérations et aux copils
◉ Intégré au Confluence de la factory
Un coup d’oeil permet de voir l’état actuel du
delivery
◉ Performance de la vitesse
◉ Performance de la stabilité
◉ L’efficacité du système
◉ La tenue des engagements
Des effets immédiats :
◉ Changement de mindset des équipes
◉ Confiance retrouvée dans notre capacité
à livrer
◉ Construction d’un plan d’actions
d’améliorations basé sur les 24 capabilities
Accelerate
25
26. OCTO © 2018 - Reproduction interdite sans autorisation écrite préalable
26
Indicateur de vitesse - Deployment Frequency
Indicateur global
Avec la tendance
Nombre de déploiements par
jour durant les 10 derniers jours
ouvrés
Source des données et formule
de calcul
Choix de la période
Indicateur qui semble pas si
évident que ça à calculer
car il peut y avoir de
multiples référentiels utilisés
pour une mise en PROD.
En fait, peu importe, la
mesure permet expliciter
l’effort technique et humain à
mettre en oeuvre
Nombre de jours sur la période
sans déploiement
Nombre de jours consécutifs
sans déploiement
27. OCTO © 2018 - Reproduction interdite sans autorisation écrite préalable
27
Indicateur de vitesse - Lead Time For Change
Indicateur global et par
équipes
Avec les tendances
Temps moyen par équipe
entre le commit et la mise en
PROD pour 1 US
Source des données et formule
de calcul
Choix de la période
Le lead time se calcule
automatiquement
à partir des “workingTimes”
extraient via l’API JIRA
Ca fonctionne même lorsque les projets ont
des workflows différents et laisse donc aux
équipes à chacun la souplesse dont elles ont
besoin
28. OCTO © 2018 - Reproduction interdite sans autorisation écrite préalable
28
Indicateur de stabilité - Change Failure Rate
Indicateur global avec la
tendance de l’évolution
Indicateur par équipe
Information sur la qualité de
donnée
Source des données et formule
de calcul
Choix de la période
Soyez Précis !
● Le choix de la formule exacte doit
être fait avec précision en
fonction des usages des outils par
les équipes, donc adapté au
contexte de chaque projet
Ex: Story + Task + “support-coop”
● La mesure de l’évolution est
essentielle
● Il est nécessaire d’automatiser le
contrôle de l’intégrité des
données.
Ex : un bot détecte un bug résolu
non rattaché à une version et
génère un email de demande de
correction au PO du projet
29. OCTO © 2018 - Reproduction interdite sans autorisation écrite préalable
29
Indicateur de stabilité - Mean Time To Repair
Indicateur global et par équipe
Nombre de bug critiques
résolus + par équipe
Information sur la qualité de
donnée
Source des données et formule
de calcul
Choix de la période
Le MTTR est déclaratif
calculé grâce aux informations
renseignées manuellement à
posteriori
Pourquoi ?
- en cas de bug critique, les devs se
concentrent pour trouver l’origine du
problème vs. renseigner une tâche dans
Jira
- nous avons écarté les stratégies de
comptage du temps écoulé via des tags
Github à cause des pratiques de devs : ils
commencent toujours par essayer de
résoudre sur leur poste en local avant de
commencer par créer une nouvelle
branche et travailler dedans
30. There
is
a
better
way
30
OCTO Part of Accenture © 2021 - All rights reserved
Est-ce que ça fonctionne ?
Contrat rempli : la Digital Factory peut mesurer sa performance et se comparer au
standard du marché
● Moins de questions de la part de la direction et un regain de confiance
● Une meilleure capacité à faire évoluer l’organisation et l’architecture cible
● Une approche data-driven de l’amélioration continue des processus et pratiques
mises en regard des capabilities accelerate
● Une facilité à définir et suivre les OKRs Technique et Produit
Aux niveaux des équipes, la factualisation des objectifs techniques leur a permis de
prioriser les sujets techniques
● Améliorer la stabilité avec l’automatisation des tests end-to-end, de retravailler le
workflow complet de gestion de bug
● Améliorer la vitesse avec la migration des repository vers un repository unique, la
séparation des contextes pour éviter les bouchons en qualif et redonner de
l’autonomie aux équipes
… et garder confiance !
31. There
is
a
better
way
31
OCTO Part of Accenture © 2021 - All rights reserved
Est-ce que ça fonctionne ?
L’affichage “public” des indicateurs a suscité une réaction immédiate en déplaçant le centre d’attention - de
tous - sur des indicateurs de performance concrets et simples
◉ “ Suis-je performant : est-ce que mon équipe va vite ? Est-ce que mon équipe produit de la qualité ? “
◉ Actions des fiertés des POs du fait de ce que les autres voient : revue de la qualification des données
◉ Une remise en cause de la mesure du Change Failure Rate qui a conduit à un affinement de sa mesure
◉ Une attention portée à la baisse du Lead Time For Change : pour faire plus petit et mettre en PROD plus
souvent
◉ Une responsabilisation active autour des processus
◉ Une meilleure compréhension des principes accelerate
33. There
is
a
better
way
33
OCTO Part of Accenture © 2021 - All rights reserved
Commencer, mesurer
et obtenir un résultat
en 59 minutes
Prototyper, en commençant
par un relevé déclaratif
Mission
Proposition
Un atelier à rééditer chez vous
>> 40’ - Alignement
>> 05’ - Auto-évaluation
>> 14’ - Amélioration
Etapes
34. There
is
a
better
way
34
OCTO Part of Accenture © 2021 - All rights reserved
S’aligner sur... Deployment Frequency
A quelle fréquence nos assets sont-ils livrés en Production ?
● Ne livre-t-on que du code ?
● Est-ce que notre production est “la vraie PROD” ?
Est-ce que mettre un ticket en DONE suffit ?
36. There
is
a
better
way
36
OCTO Part of Accenture © 2021 - All rights reserved
S’aligner sur... Mean Time To Restore
Temps moyen pour restaurer un service inopérant
● Qu’est-ce qui caractérise un service inopérant ?
● Quand est-ce que le chronomètre se déclenche ?
● Quand est-ce que le chronomètre s’arrête ?
Ca veut dire quoi “restaurer” ?
37. There
is
a
better
way
37
OCTO Part of Accenture © 2021 - All rights reserved
S’aligner sur… Change Failure Rate
Combien de fois mon environnement de Production a-t-il été inopérant ?
● Est-ce juste un ratio nombre(si(erreur lié à la MEP)) / nombre de MEP ?
● Et si une erreur provient d’une release antérieure ?
● Quelle est notre part de responsabilité dans la gestion de l’environnement ?
39. There
is
a
better
way
39
OCTO Part of Accenture © 2021 - All rights reserved
CAPABILITY ACTIONS SUCCESS CRITERIA TARGET KPI TIMEFRAME
TEST
AUTOMATION
Add automated unit test to all new
features implemented
Codebase coverage increased
Number of unit tests increased
Product Delivery Lead Time
reduced by 5 days
1st
iteration: next PI (July-September)
Measure, learn & adapt
Go-nogo for next PI TBD
CONTINUOUS
INTEGRATION
Automate Continuous Integration
pipeline for any development work in
progress or finished
Consistent CI pipeline run for all
work
Codebase is always in a deployable
state
Product Delivery Lead Time
reduced by 5 days
1st
iteration: next PI (July-September)
Measure, learn & adapt
Go-nogo for next PI TBD
VISUALIZING
WORK
Clarify DODs
Modify our workflow so that it
includes shipment in production as
DONE
Less blockers in the workflow
(current = 5 / sprint)
Releases take less time to perform
Deployment frequency
reduced by 1 day
Product Delivery Lead Time
reduced by 1 day
1st
iteration: next PI (July-September)
Measure, learn & adapt
Go-nogo for next PI TBD
MONITORING
Add heartbeat checks on all endpoints
of our applications
Centralize healthchecks in a
monitoring dashboard
A dashboard is up & running
Mean Time To Restore
reduced by 1 day
Next 2 PIs (July-December)
DEPLOYMENT
AUTOMATION
Manual actions to automate are listed
in a backlog & 1 category of manual
actions are automated
Backlog of actions to automate
1st
category of variables
automated
Product Delivery Lead Time
reduced by 5 days
1st
iteration: next PI (July-September)
Measure, learn & adapt
Go-nogo for next PI TBD
Amélioration
Exemple de plan d’actions
41. There
is
a
better
way
41
OCTO Part of Accenture © 2021 - All rights reserved
41
There
is
a
better
way
Les apports d’Accelerate
Une approche globale
Le delivery est un produit
de toute l’organisation
Une boîte à outils
24 aptitudes et 4 indicateurs
opérationnels pour s’améliorer
Une démarche méthodique
Des clefs pour piloter son
amélioration continue à petits pas
42. There
is
a
better
way
42
OCTO Part of Accenture © 2021 - All rights reserved
Version 2020
Un modèle qui évolue
Transformational
Leadership
Lean Product
Development
Change
Approvals
Lean
Management
Technical
Practices
Continuous
Delivery
Culture & Work
Environment
https://services.google.com/fh/files/misc/dora_research_program.pdf
43. There
is
a
better
way
43
OCTO Part of Accenture © 2021 - All rights reserved
Takeaways
๏ Accelerate est à la fois un livre présentant le résultat d’une recherche, et une démarche
d’amélioration continue.
๏ Une étude/démarche en constant ajustement (State of DevOps, DORA)
๏ 4 indicateurs pour piloter
๏ Un modèle d’aptitudes pour progresser, à prioriser en fonction des impacts souhaités, et
éviter de tomber dans l’enfer des métriques.
๏ Un atelier de 59 minutes : Alignement >> Auto-évaluation >> Amélioration
๏ L’avenir de l’agile n’est pas dans une n-ième illustration du prisme, mais dans la réponse
directe à la stratégie d’entreprise, la preuve par les métriques et l’apport d’autres
démarches, notamment les sciences sociales
46. There
is
a
better
way
46
Une démarche au niveau de l’organisation
Product &
process
Continuous
delivery
LES FAMILLES POUR LES ÉQUIPES LES FAMILLES POUR PASSER À L'ÉCHELLE
Cultural
Architecture
Lean
management
& monitoring
48. There
is
a
better
way
48
OCTO Part of Accenture © 2021 - All rights reserved
48
There
is
a
better
way
Une culture organisationnelle basée sur une grande confiance et axée sur le flux
d’informations permet de prédire les performances de livraison de logiciels et les performances
technologiques organisationnelles.
Dans ses recherches, le sociologue Dr Ron Westrum a développé la typologie des cultures
organisationnelles suivante
● Pathologique = orientée vers le pouvoir
● Bureaucratique = orientée vers les règles
● Générative = orientée vers la performance
Westrum Culture
https://cloud.google.com/architecture/devops/devops-culture-westrum-organizational-culture
49. There
is
a
better
way
49
OCTO Part of Accenture © 2021 - All rights reserved
49
There
is
a
better
way
Westrum Culture
Pathologique Bureaucratique Générative
Collaboration Faible Modeste Haute
Messagers Abattus Négligés Formés
Responsabilités Non-assumées Limitées Risques partagés
Liaisons Découragées Tolérées Encouragées
Relation à l’échec
Conduit à se
rejeter la faute
Conduit au tribunal Conclut à une enquête
Relation à la
nouveauté
Ecrasée Crée des problèmes Mise en oeuvre
50. There
is
a
better
way
50
OCTO Part of Accenture © 2021 - All rights reserved
What’s next ?
● Faire évoluer une culture, cela requiert de... la patience
● Un livrable de coaching d’organisation est la mise en place de pratiques ou de processus.
C’est par des pratiques différentes, la mise en lumière de contrastes sur les résultats
(outputs & outcomes), des feedbacks utiles et efficaces, des structures de communication
adaptée, et un temps dédié pour faire émerger ce changement … que l’on parvient petit
à petit à faire bouger les lignes.
● Il faut amener ces différences à la mesure de ce que peut absorber le système.
Westrum Culture
51. There
is
a
better
way
51
OCTO Part of Accenture © 2021 - All rights reserved
What’s next ?
Westrum Culture
Westrum
Culture
Organization
Trust
Voice
Retrospective
Make Flow of
Work Visible
WIP Limit