Gestion de projet – Vers les méthodes agiles
64
Son nom vient du fait que les activités de programmation sont centrales et que les pratiques qui font le succès des projets sont poussées à l’extrême : les tests permettent de
détecter rapidement les défauts ? Écrivons donc les tests en premier et automatisons-les ;
la revue de code est une bonne pratique ? Menons-la en permanence ; il faut privilégier
les livraisons fréquentes ? Adoptons un développement avec des itérations les plus courtes possibles ; le client doit être associé ? Intégrons-le à l’équipe de réalisation…
XP repose sur quatre valeurs :
• Communication : l’effort de communication entre les différents intervenants est
indispensable pour atteindre l’objectif commun. On privilégie la communication
directe, dans le recueil et la clarification des besoins, dans la planification des itérations, dans la répartition et l’exécution des travaux. On évite ainsi bien des problèmes
ou des situations de blocage.
• Simplicité : la solution la plus simple est la meilleure pour atteindre les objectifs ;
grâce à cette simplicité, l’application pourra évoluer facilement, si nécessaire. La
simplicité est applicable au client dans la définition de ces besoins, dans le choix des
outils et du processus.
• Feedback : le retour d’information est essentiel pour valider le fait que le projet est sur
la bonne voie : tests unitaires pour valider le fonctionnement du code, intégration
continue pour détecter des anomalies, tests fonctionnels pour valider la conformité aux
besoins, livraisons fréquentes…, autant de pratiques qui rendent plus aisées les adaptations éventuelles, sans attendre le terme du projet.
• Courage : du courage est absolument nécessaire pour adopter une démarche XP,
démarrer un projet sans avoir toutes les spécifications, pour modifier du code existant
sans en être l’auteur, et vice versa, pour appliquer les principes de communication, de
pair-programming…
• Du courage… et du respect !
Les pratiques caractéristiques d’XP sont décrites ci-contre (figure 2-8).
On peut décrire ces pratiques en les classant en trois grands groupes 1 : activités de
programmation, fonctionnement interne de l’équipe et gestion du projet.
Les pratiques relatives à la programmation
• Conception simple (simple design) : la solution la plus simple (concision, modularité,
lisibilité) doit être implémentée. Plus l’application est simple, plus il sera facile de la
faire évoluer dans les itérations suivantes. Il en va de même de la documentation.
• Développement piloté par les tests unitaires (unit tests, test-first programming) :
avant d’implémenter une fonctionnalité, chaque développeur écrit un scénario de test
unitaire pour le code qu’il produit ; il se constitue, ainsi, une batterie de tests qui sera
réutilisée avant l’introduction d’un changement dans l’application.
1. In Jean-Louis Bénard, Laurent Bossavit, Régis Medina, Dominic Williams, Gestion de projet,
eXtreme Programming, Eyrolles, 2001.
GestProjInform Livre Page 64 Vendredi, 3. avril 2009 12:07 12
64
Son nom vient du fait que les activités de programmation sont centrales et que les pratiques qui font le succès des projets sont poussées à l’extrême : les tests permettent de
détecter rapidement les défauts ? Écrivons donc les tests en premier et automatisons-les ;
la revue de code est une bonne pratique ? Menons-la en permanence ; il faut privilégier
les livraisons fréquentes ? Adoptons un développement avec des itérations les plus courtes possibles ; le client doit être associé ? Intégrons-le à l’équipe de réalisation…
XP repose sur quatre valeurs :
• Communication : l’effort de communication entre les différents intervenants est
indispensable pour atteindre l’objectif commun. On privilégie la communication
directe, dans le recueil et la clarification des besoins, dans la planification des itérations, dans la répartition et l’exécution des travaux. On évite ainsi bien des problèmes
ou des situations de blocage.
• Simplicité : la solution la plus simple est la meilleure pour atteindre les objectifs ;
grâce à cette simplicité, l’application pourra évoluer facilement, si nécessaire. La
simplicité est applicable au client dans la définition de ces besoins, dans le choix des
outils et du processus.
• Feedback : le retour d’information est essentiel pour valider le fait que le projet est sur
la bonne voie : tests unitaires pour valider le fonctionnement du code, intégration
continue pour détecter des anomalies, tests fonctionnels pour valider la conformité aux
besoins, livraisons fréquentes…, autant de pratiques qui rendent plus aisées les adaptations éventuelles, sans attendre le terme du projet.
• Courage : du courage est absolument nécessaire pour adopter une démarche XP,
démarrer un projet sans avoir toutes les spécifications, pour modifier du code existant
sans en être l’auteur, et vice versa, pour appliquer les principes de communication, de
pair-programming…
• Du courage… et du respect !
Les pratiques caractéristiques d’XP sont décrites ci-contre (figure 2-8).
On peut décrire ces pratiques en les classant en trois grands groupes 1 : activités de
programmation, fonctionnement interne de l’équipe et gestion du projet.
Les pratiques relatives à la programmation
• Conception simple (simple design) : la solution la plus simple (concision, modularité,
lisibilité) doit être implémentée. Plus l’application est simple, plus il sera facile de la
faire évoluer dans les itérations suivantes. Il en va de même de la documentation.
• Développement piloté par les tests unitaires (unit tests, test-first programming) :
avant d’implémenter une fonctionnalité, chaque développeur écrit un scénario de test
unitaire pour le code qu’il produit ; il se constitue, ainsi, une batterie de tests qui sera
réutilisée avant l’introduction d’un changement dans l’application.
1. In Jean-Louis Bénard, Laurent Bossavit, Régis Medina, Dominic Williams, Gestion de projet,
eXtreme Programming, Eyrolles, 2001.
GestProjInform Livre Page 64 Vendredi, 3. avril 2009 12:07 12
