Access Keys:
Skip to content (Access Key - 0)

Cette article définit les pratiques de l'Extreme Programming.

Les pratiques

L'Extreme Programming peut se résumer en 13 pratiques auxquelles il faut essayer d'adhérer au mieux :

1. Client sur Site ( On-Site Customer ) :
Dans le but d'améliorer la communication au sein de l'équipe, le client et les développeurs doivent travailler dans le même espace.

2. Séance de Planification ( Planning Game ) :
Le client définit les scénarios utilisateurs et les priorise. Les développeurs cherchent à creuser le contenu de ces scénarios, ils définissent les tâches techniques sous-jacentes et estiment ces tâches.

3. Intégration Continue ( Continuous Integration ) :
Le système est intégralement assemblé et testé plusieurs fois par jour de manière automatisée.

4. Livraisons Fréquentes ( Frequent Releases ) :
Le rythme des livraisons aux utilisateurs finaux est de l'ordre de quelques semaines.

5. Rythme Soutenable ( Sustainable pace ) :
L'équipe ne fait pas d'heures supplémentaires. Les heures supplémentaires doivent être exceptionnelles.

6. Tests de Recette ( Acceptance Tests) :
Le retour d'informations rapide sur le système, doit se faire de manière automatisé. Le client définit pour cela un ensemble de règles métiers sous forme de tests.

7. Tests Unitaires ( Unit Testing - Test Driven Development ) :
Des tests automatisés écrits pour chaque classe, pour chacune des méthodes risquant d'entraîner un comportement anormal du système. Ces tests doivent passer à 100% en continu.

8. Conception Simple ( Simple Design ) :
La maintenabilité du code doit se faire en respectant les critères : concision, modularité, cohérence, lisibilité.

9. Métaphore ( Metaphor) :
L'utilisation d'une analogie comme modèle conceptuel du système en cours de développement permet un très bonne compréhension d'un système complexe.

10. Remaniement Continu ( Merciless Refactoring ) :
Le remaniement ou Refactoring est une modification du code par laquelle on améliore sa conception sans en modifier le comportement. Sa pratique permanente permet de garantir la simplicité maximale du code.

11. Convention de Code ( Coding Standard ) :
Le code doit suivre des conventions de nommage et de présentation afin d'être lisible par tous les membres de l'équipe.

12. Programmation en Binôme ( Pair Programming ) :
Le code doit toujours être écrit par deux développeurs : le pilote et le copilote. Les binômes changent au cours du projet.

13. Responsabilité Collective du Code ( Collective Code Ownership ) :
Chaque développeur peut modifier n'importe quelle partie du code si le besoin s'en fait sentir.

Adaptavist Theme Builder (4.2.3) Powered by Atlassian Confluence 3.5.5, the Enterprise Wiki