Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
eXtreme Programming : la méthode Agile ?
Search
Pascal Le Merrer
June 19, 2023
Programming
0
64
eXtreme Programming : la méthode Agile ?
Slides de ma keynote à AlpesCraft 2023
Pascal Le Merrer
June 19, 2023
Tweet
Share
More Decks by Pascal Le Merrer
See All by Pascal Le Merrer
Introduction pour l'atelier "Elm Shop"
pascallemerrer
0
92
Le rocher de Sysiphe - AFUP Day Rennes 2021
pascallemerrer
0
72
Coding dojos - Agile Tour Rennes 2019
pascallemerrer
0
39
Comment Elm a changé mon expérience de dev front-end
pascallemerrer
0
130
Coding dojos - Diffusez les bonnes pratiques de dev !
pascallemerrer
0
80
Software Craftsmanship - De le théorie à la pratique
pascallemerrer
0
350
Other Decks in Programming
See All in Programming
MCP調べてみました! / Exploring MCP
uhzz
2
2.2k
Making TCPSocket.new "Happy"!
coe401_
1
140
リアクティブシステムの変遷から理解するalien-signals / Learning alien-signals from the evolution of reactive systems
yamanoku
3
1.2k
フロントエンドテストの育て方
quramy
11
2.9k
RuboCop: Modularity and AST Insights
koic
0
110
MCP世界への招待: AIエンジニアが創る次世代エージェント連携の世界
gunta
4
880
新しいPHP拡張モジュールインストール方法「PHP Installer for Extensions (PIE)」を使ってみよう!
cocoeyes02
0
350
State of Namespace
tagomoris
4
800
5年間継続して開発した自作OSSの記録
bebeji_nappa
0
180
Memory API : Patterns, Performance et Cas d'Utilisation
josepaumard
0
110
「影響が少ない」を自分の目でみてみる
o0h
PRO
2
1k
Go1.24 go vetとtestsアナライザ
kuro_kurorrr
2
840
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.1k
Become a Pro
speakerdeck
PRO
27
5.3k
A better future with KSS
kneath
239
17k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
For a Future-Friendly Web
brad_frost
176
9.7k
Docker and Python
trallard
44
3.3k
A designer walks into a library…
pauljervisheath
205
24k
How STYLIGHT went responsive
nonsquared
99
5.5k
Automating Front-end Workflow
addyosmani
1369
200k
Designing Experiences People Love
moore
141
24k
Adopting Sorbet at Scale
ufuk
76
9.3k
Transcript
eXtreme Programming : LA méthode Agile ? Pascal Le Merrer
Juin 2023
2001
2004
2002 : L’EXTREME PROGRAMMING AVEC DEUX ÉTUDES DE CAS
2005 : GESTION DE PROJET EXTREME PROGRAMMING JEAN-LOUIS BÉNARD, LAURENT BOSSAVIT, RÉGIS MÉDINA, DOMINIC WILLIAMS
IMPACT D’XP • User stories • Pair programming • TDD
• Intégration continue • Tests de recette automatisés • Déploiement continu
SCRUM XP ASD SCRUMBAN SCRUM + XP KANBAN LEAN STARTUP
RAD FDD AGILE MODELING LEAN SOFTWARE DEVELOPMENT DSDM POPULARITÉ DES MÉTHODES AGILES DISCIPLINED AGILE DELIVERY CRYSTAL AUP
SCRUM XP ASD SCRUMBAN SCRUM + XP KANBAN LEAN STARTUP
RAD FDD AGILE MODELING LEAN SOFTWARE DEVELOPMENT DSDM 1% 6% 66% POPULARITÉ DES MÉTHODES AGILES DISCIPLINED AGILE DELIVERY CRYSTAL AUP
LA GENESE
KENT BECK
PROJET C3 1996
EXTREME PROGRAMMING EXPLAINED EMBRACE CHANGE 1999, KENT
BECK XP v1
VALEURS • Communication • Simplicité • Feedback • Courage XP
v1
PRATIQUES • Tests unitaires • Tests de recette automatisés •
Programmation en binôme • Intégration continue • Remaniement (refactoring) • Règles de codage • Conception simple XP v1 • Livraisons fréquentes • Planification itérative • Client sur site • Métaphore • Responsabilité collective du code • Rythme durable
XP V2
EXTREME PROGRAMMING EXPLAINED SECOND EDITION 2005, KENT BECK
& CYNTHIA ANDRES XP v2
VALEURS • Communication • Simplicité • Feedback • Courage •
Respect XP v2
PRATIQUES PRINCIPALES • Équipe co-localisée • Équipe entière • Espace
de travail informatif • Travail dynamique • Pair programming • Développement piloté par les tests • Stories • Cycle hebdomadaire • Cycle trimestriel • Marge • Build en 10 minutes • Intégration continue • Conception incrémentale XP v2
PRATIQUES COROLLAIRES • Implication du client réel • Déploiement incrémental
• Continuité d’équipe • Réduction des équipes • Analyse des causes racines • Code partagé • Code et tests • Base de code unique • Déploiement quotidien • Périmètre contractuel négocié • Paiement à l’usage XP v2
PRINCIPES • Humanisme • Budget • Bénéfice mutuel • Similarité
• Amélioration • Diversité • Flux • Réflexion • Opportunité • Redondance • Qualité • Échec • Petits pas • Responsabilité acceptée XP v2
VALEURS
COMMUNICATION • Coopération • Appartenance à l’équipe Valeur 1/5
SIMPLICITÉ • Solution la plus simple ET qui fonctionne •
Contextuelle • Faciliter la communication Valeur 2/5
FEEDBACK • Objectifs mouvants • Améliorations progressives • Adapter le
rythme Valeur 3/5
COURAGE • Agir • Combiné avec les autres valeurs Valeur
4/5
RESPECT • Sous-jacent • Indispensable Valeur 5/5
VOS VALEURS • ? Valeurs …
PRINCIPES
PRINCIPES • Humanisme • Budget • Bénéfice mutuel • Similarité
• Amélioration • Diversité • Flux • Réflexion • Opportunité • Redondance • Qualité • Échec • Petits pas • Responsabilité acceptée
HUMANISME Besoins personnels ET besoins de l’entreprise Principe 1/9
BÉNÉFICE MUTUEL Bénéfice présent, futur, partagé Principe 2/9
AMÉLIORATION Rien n’est parfait Principe 3/9
DIVERSITÉ = meilleurs logiciels Principe 4/9
FLUX Pas d’effet tunnel Principe 5/9
REDONDANCE Pour les problèmes difficiles / critiques Principe 6/9
QUALITÉ • Pas de limite apparente • Bénéfices multiples Principe
7/9
PETITS PAS • Déploiement fréquent Principe 8/9
RESPONSABILITÉ ACCEPTEE Responsabilité => autorité Principe Principe 9/9
PRATIQUES PRINCIPALES
PRATIQUES PRINCIPALES • Équipe co-localisée • Équipe entière • Espace
de travail informatif • Travail dynamique • Pair programming • Développement piloté par les tests • Stories • Cycle hebdomadaire • Cycle trimestriel • Marge • Build en 10 minutes • Intégration continue • Conception incrémentale
ÉQUIPE CO-LOCALISÉE Pas en permanence Pratique principale 1/11
ÉQUIPE ENTIÈRE • Pluridisciplinarité • Éviter le temps partagé Pratique
principale 2/11
TRAVAIL DYNAMIQUE Productivité vs fatigue Pratique principale 3/11
PAIR PROGRAMMING • Dialogue • 5 à 6 heures par
jour • Changer de binôme Pratique principale 4/11
STORIES • Unité de fonctionnalité visible • Estimation précoce =>
discussion • Pas figée Pratique principale 5/11
CYCLE HEBDOMADAIRE • Planification • Ecriture des tests d’acceptance •
Implémentation • Déploiement Pratique principale 6/11
CYCLE TRIMESTRIEL • Thèmes • Stories • Recadrer le projet
• Goulets d’étranglement Pratique principale 7/11
MARGE • Prévue • Améliore l’ambiance Pratique principale 8/11
BUILD EN 10 MINUTES • Build + test = 10
minutes Pratique principale 9/11
DÉVELOPPEMENT PILOTÉ PAR LES TESTS • Confiance • Pas de
gaspillage • Codé cohérent, faiblement couplé Pratique principale 10/11
CONCEPTION INCRÉMENTALE • Conception permanente • Au dernier moment responsable
Pratique principale 11/11
PRATIQUES COROLLAIRES
PRATIQUES COROLLAIRES • Implication du client réel • Déploiement incrémental
• Continuité d’équipe • Réduction des équipes • Analyse des causes racines • Code partagé • Code et tests • Base de code unique • Déploiement quotidien • Périmètre contractuel négocié • Paiement à l’usage
IMPLICATION DU CLIENT Pratique corollaire 1/3
CONTINUITÉ D’ÉQUIPE Pratique corollaire 2/3
DÉPLOIEMENT QUOTIDIEN Pratique corollaire 3/3
MISE EN OEUVRE
DÉBUTER AVEC XP • Progressivement… ou pas • Sponsor •
Donner l’exemple
QUAND XP N’EST-IL PAS ADAPTÉ ? • Manque de volonté
de l'équipe • Opposition avec les valeurs réelles
CONCLUSION
PARTICULARITÉS • Méthode spécialisée • Prescriptive • Valeurs au coeur
de la méthode • Adaptation encouragée • Mise en oeuvre progressive • Fonctionne aussi avec des demandes figées
POURQUOI XP N’EST-IL PAS PLUS POPULAIRE ? • Focalisé
sur le logiciel • Formation • Culture • Ton du premier ouvrage • Pas de mercantilisme
LA MÉTHODE AGILE ? • Bienveillance ET productivité • Qualité
• Réduction des risques • Pratiques techniques indispensables
@
[email protected]
Pascal Le Merrer