Ces pratiques visent à obtenir un retour d'information très rapidement (de quelques secondes à quelques jours) plutôt que d'attendre des semaines ou des mois.
Deux développeurs travaillent ensemble sur le même ordinateur. L'un écrit le code (le “driver”), l'autre observe et réfléchit à la stratégie (le “navigator”). Les rôles s'échangent régulièrement.
Bénéfices :
Le Pair Programming contribue aussi fortement à la compréhension partagée du système.
Processus de planification collaboratif entre l'équipe technique et le client. Se divise en deux parties :
Principes :
Les tests unitaires sont écrits avant le code de production.
Cycle TDD :
Un représentant du client est présent à temps plein avec l'équipe de développement.
Rôle du client :
Le code est intégré et testé plusieurs fois par jour dans le dépôt principal.
Règles :
Amélioration continue de la structure du code sans modifier son comportement.
Objectifs :
Principe : Le refactoring est une activité continue, pas une phase distincte.
Livrer fréquemment des versions fonctionnelles du logiciel en production.
Avantages :
Fréquence typique : De quelques semaines à quelques mois maximum
Le code doit être aussi simple que possible, tout en remplissant les besoins actuels.
Critères d'une conception simple (par ordre de priorité) :
Ne pas anticiper les besoins futurs (YAGNI - You Aren't Gonna Need It)
Une histoire simple et partagée qui décrit comment fonctionne le système.
Objectif :
Exemple : “Le système fonctionne comme une chaîne de montage” ou “C'est comme un bureau de poste”
Tout le monde est responsable de tout le code. N'importe quel développeur peut modifier n'importe quelle partie du système.
Conditions nécessaires :
Bénéfices :
L'équipe suit des conventions de codage communes et cohérentes.
Éléments couverts :
Objectif : Le code doit sembler écrit par une seule personne.
L'équipe travaille à un rythme qui peut être maintenu indéfiniment, typiquement 40 heures par semaine.
Règle : Pas plus d'une semaine d'heures supplémentaires consécutive.
Raisons :
Cette pratique était initialement appelée “40-hour week” mais a été renommée pour être plus universelle.
Les pratiques XP se soutiennent mutuellement :
XP recommande d'adopter toutes les pratiques ensemble. En retirer une affaiblit l'ensemble du système.