Définition - Que signifie Extreme Programming (XP)?
Extreme Programming (XP) est une méthodologie de développement logiciel intense, disciplinée et agile axée sur le codage à chaque étape du cycle de vie du développement logiciel (SDLC). Ces étapes sont: Intégration continue pour découvrir et réparer les problèmes au début du processus de développement Implication du client et retour rapide Ces disciplines de la méthodologie XP sont dérivées des quatre valeurs clés suivantes de Kent Beck, créateur de XP: Communication: La communication entre les membres de l'équipe et les clients doit avoir lieu sur une base fréquente et aboutissent à des discussions ouvertes sur le projet sans crainte de représailles. Simplicité: Cela implique d'utiliser la conception, la technologie, les algorithmes et les techniques les plus simples pour satisfaire les besoins du client pour l'itération du projet en cours. Commentaires: Les commentaires doivent être obtenus à plusieurs niveaux distincts, par exemple, les tests unitaires, la révision du code et l'intégration. Courage: mettre en œuvre des décisions difficiles mais nécessaires.
Definir Tech explique Extreme Programming (XP)
Outre les valeurs clés, la mise en œuvre de la méthodologie XP nécessite également la prise en charge des trois principes du changement incrémentiel, du changement et du travail de qualité. Douze pratiques clés doivent également être suivies: Certains praticiens de la méthodologie traditionnelle critiquent XP comme un processus «irréel» provoquant un codage imprudent. Plusieurs développeurs de logiciels traditionnels trouvent XP inflexible avec peu de fonctionnalités et peu de potentiel créatif. D'autres critiques sont que XP: n'a pas de structure. Manque de documentation essentielle. N'a pas de produits livrables clairs, c'est-à-dire que des estimations réalistes sont difficiles parce que toute la portée des exigences du projet n'est pas entièrement définie. (Ce manque d'exigences détaillées rend XP très enclin au fluage de la portée.) Nécessite un changement culturel pour être adopté. (Peut fonctionner uniquement pour les développeurs expérimentés) Est coûteux, c'est-à-dire nécessite des communications / réunions fréquentes aux frais du client, ce qui peut conduire à des négociations difficiles. A une inefficacité possible en raison des changements de code fréquents dans diverses itérations. Bien sûr, comme pour toute méthodologie de développement, tout cela est très subjectif et dépend des préférences personnelles.