Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
eXtreme Programming : la méthode Agile ?
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Pascal Le Merrer
June 19, 2023
Programming
100
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
eXtreme Programming : la méthode Agile ?
Slides de ma keynote à AlpesCraft 2023
Pascal Le Merrer
June 19, 2023
Transcript
63 slides
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
More Decks by Pascal Le Merrer
See All by Pascal Le Merrer
Le côté obscur des IA génératives
pascallemerrer
0
230
Introduction pour l'atelier "Elm Shop"
pascallemerrer
0
140
Le rocher de Sysiphe - AFUP Day Rennes 2021
pascallemerrer
0
120
Coding dojos - Agile Tour Rennes 2019
pascallemerrer
0
77
Comment Elm a changé mon expérience de dev front-end
pascallemerrer
0
220
Coding dojos - Diffusez les bonnes pratiques de dev !
pascallemerrer
0
110
Software Craftsmanship - De le théorie à la pratique
pascallemerrer
0
380
Other Decks in Programming
See All in Programming
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
230
オーケストレーション記述言語 Katari
yukikurage
0
250
AI駆動開発4年目の現在地(『あなたはFDEになるべきか?』イベント資料)
kumaiu
0
610
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
2
300
LLM 101: Exploring LLMs, Starting with Tokens.
dalinaum
0
100
AI時代のTerminal環境を UNIX哲学で設計・運用する
yasunori0418
1
350
そのデザイントークン、Flutterでも同じ見た目になりますか?
nakamizu
0
340
SODA - FACT BOOK(EN)
sodainc
1
230
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
290
S3 TablesのIcebergデータに、AIエージェントからアクセスしてみた / 20261016developersio2026joetsu-accessing-iceberg-in-s3tables-via-agent
kasacchiful
PRO
0
310
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.7k
baseline으로 마이그레이션, 리팩토링 안전하게 맡기기
fornewid
1
980
Featured
See All Featured
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
670
Marketing to machines
jonoalderson
1
6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
380
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1.1k
The Language of Interfaces
destraynor
162
27k
Site-Speed That Sticks
csswizardry
13
1.6k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
850
Abbi's Birthday
coloredviolet
5
11k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.2k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.2k