Le cycle de vie de la méthode XP (eXtreme Programming)

novembre 19, 2015

Le cycle de vie de la méthode XP (eXtreme Programming)

Les grandes lignes du cycle de vie d’un projet XP :

– Exploration

– Planning

– Itérations jusqu’à la 1ère release

– Mise en production

– Maintenance

– Mort

Exploration

Au cours de cette phase, les développeurs se penchent sur des questions d’ordre technique destinées à explorer les différentes possibilités d’architecture pour le système et à étudier par exemple les limites au niveau des performances présentées par chacune des solutions possibles. Le client de son côté s’habitue à exprimer ses besoins sous forme de user stories que les développeurs devront estimer en terme de temps de développement.

Planning

Le planning de la première release est fait de telle sorte qu’un système pourvu uniquement des fonctionnalités essentielles soit mis en production dans un temps minimum et soit enrichi par la suite. Le planning game dure un ou deux jours et la première release est en général programmée pour deux à six mois plus tard.

Itérations jusqu’à la 1ère release

C’est la phase de développement à proprement parler de la première version de l’application. Celle ci se fait sous forme d’itérations de une à quatre semaines.

Chaque itération produit un ensemble de fonctionnalités passant avec succès les tests fonctionnels associés. La première itération est dédiée à la mise en place de l’architecture du système. Ces itérations courtes permettent de détecter rapidement toute déviation par rapport au planning qui a été fait jusqu’à la sortie de la release. En cas de déviation, quelque chose est à revoir, soit au niveau de la méthode, soit au niveau des spécifications, soit au niveau du planning. Durant les itérations, de brèves réunions réunissent toute l’équipe quotidiennement pour mettre chacun au courant de l’avancement du projet.

Mise en production

Les itérations de cette phase sont encore plus courtes, ceci pour renforcer le feedback. En général, des tests parallèles sont conduits au cours de cette phase et les développeurs procèdent à des réglages affinés pour améliorer les performances (performance tuning). A la fin de cette phase, le système offre toutes les fonctionnalités indispensables et est parfaitement fonctionnel et peut être mis à disposition des utilisateurs.

Maintenance

Il s’agit dans cette phase de continuer à faire fonctionner le système désormais existant et de lui adjoindre les fonctionnalités secondaires qui avaient volontairement été laissées de côté jusque là. Le développement de nouvelles fonctionnalités sur un système déjà mis en production requiert une prudence accrue de la part des développeurs et cette phase est donc cruciale. A chaque nouvelle release, une nouvelle phase d’exploration rapide doit avoir lieu.

Mort

La fin d’un projet intervient quand le client n’arrive plus à écrire de user stories supplémentaires ce qui signifie que pour lui, tous ses besoins ont été satisfaits ou quand le système n’est plus capable de recevoir de modifications pour satisfaire de nouveaux besoins tout en restant rentable.

Leave a Reply

You must be logged in to post a comment.