Les principes qui relient les valeurs et les pratiques — le « pourquoi » derrière le « quoi ».
Les valeurs vous disent ce qui est important. Les pratiques vous disent quoi faire. Mais comment les relier? C'est là qu'interviennent les principes.
Les principes sont le pont. Ils sont plus concrets que les valeurs mais plus abstraits que les pratiques. Lorsque vous décidez d'adopter une pratique ou de la modifier pour votre contexte, les principes vous guident.
XP a de nombreux principes, mais nous nous concentrerons sur les plus importants.
Le logiciel est créé par des personnes, pour des personnes.
Ce principe nous rappelle que les développeurs ne sont pas des ressources interchangeables. Les gens ont des besoins :
Les pratiques XP devraient répondre à ces besoins. La programmation en binôme répond aux besoins d'appartenance et d'intimité. Le développement piloté par les tests répond aux besoins d'accomplissement et de sécurité. Le rythme soutenable protège la santé physique et mentale.
Lorsqu'une pratique semble inappropriée, demandez-vous : « Est-ce que cela viole des besoins humains? »
Si vos pratiques « agiles » épuisent les gens, elles ne sont pas agiles. Le rythme soutenable n'est pas optionnel — c'est au cœur de XP.
L'argent compte. Le temps a de la valeur. Les options ont de la valeur.
XP prend l'économie au sérieux :
Ce principe soutient les petites versions (livrer de la valeur tôt), la conception incrémentale (ne pas surinvestir dès le départ) et la planification itérative (répondre à ce que vous apprenez).
Il soutient également le rythme soutenable : les développeurs épuisés font des erreurs coûteuses.
Chaque pratique devrait bénéficier à tous les participants.
Les meilleures pratiques XP sont gagnant-gagnant-gagnant :
Évitez les pratiques qui aident un groupe au détriment d'un autre. La documentation écrite uniquement pour la conformité, jamais lue par les développeurs, échoue au bénéfice mutuel. Le code écrit pour être astucieux plutôt que clair y échoue aussi.
Si une pratique crée du ressentiment, elle viole probablement le bénéfice mutuel.
Les modèles qui fonctionnent à une échelle fonctionnent souvent à d'autres.
XP applique les mêmes modèles à différentes échelles :
Lorsque vous trouvez quelque chose qui fonctionne, essayez-le à différentes échelles. Le jeu de planification fonctionne pour la planification de version et la planification d'itération. Les principes de révision de code fonctionnent pour la révision de conception et la révision d'architecture.
Commencez où vous êtes et améliorez-vous continuellement.
XP n'exige pas la perfection dès le premier jour. Il exige du mouvement. Commencez avec ce que vous pouvez faire aujourd'hui, et améliorez-vous à partir de là.
L'objectif n'est pas de « faire XP ». L'objectif est de s'améliorer. XP est une direction, pas une destination.
Ce principe soutient également l'échec sécuritaire. Les expériences qui ne fonctionnent pas sont des occasions d'apprentissage, pas des échecs.
Livrez de la valeur continuellement, pas en gros lots.
Ce principe aligne XP avec la pensée lean et Kanban. Les gros lots cachent les problèmes. Les petits lots les révèlent rapidement.
Le flux réduit le travail en cours, ce qui réduit le changement de contexte, ce qui améliore la concentration et la qualité. Il donne également de la valeur aux clients plus tôt et des commentaires plus rapidement.
Si vous ne publiez pas au moins une fois par mois, demandez-vous pourquoi. Les obstacles que vous découvrirez pointeront vers de vrais problèmes.
La qualité n'est pas négociable.
Cela semble évident, mais les implications sont profondes. XP dit que vous pouvez échanger la portée ou l'échéancier, mais jamais la qualité.
Cela signifie :
Pourquoi? Parce que la qualité est le fondement de la rapidité. Une mauvaise qualité crée des bogues qui vous ralentissent. Une mauvaise qualité crée du code difficile à modifier. Une mauvaise qualité crée des systèmes coûteux à maintenir.
La qualité est le moyen le plus rapide d'aller vite.
Faites le plus petit pas qui fait progresser.
Les grands changements sont risqués. Les petits changements sont sûrs. XP préfère toujours les petits pas :
Les petits pas ne signifient pas des progrès lents. Mille petits pas peuvent couvrir plus de terrain que dix grands sauts — et avec moins de risque de tomber.
Lorsque vous êtes bloqué, demandez-vous : « Quelle est la plus petite chose que je peux faire maintenant qui fait progresser? »