Qu’est-ce que la programmation extrême? Un aperçu des règles et des valeurs de XP
dans les années 1990, L’essor d’Internet a nécessité un changement dans le développement de logiciels. Si le succès d’une entreprise dépendait de la vitesse à laquelle elle pouvait se développer et commercialiser ses produits, les entreprises devaient réduire considérablement le cycle de vie du développement logiciel.,
C’est dans cet environnement que Kent Beck a créé extreme programming (XP), une méthodologie de gestion de projet agile qui prend en charge les versions fréquentes dans des cycles de développement courts pour améliorer la qualité des logiciels et permettre aux développeurs de répondre aux exigences changeantes des clients.
bien que vous puissiez reconnaître certaines de ces pratiques et valeurs dans d’autres méthodologies de gestion de projet, XP porte ces pratiques à des niveaux « extrêmes”, comme son nom l’indique., Dans une interview avec Informit, Kent explique:
« La première fois qu’on m’a demandé de diriger une équipe, je leur ai demandé de faire un peu des choses que je pensais raisonnables, comme les tests et les critiques. La deuxième fois, il y avait beaucoup plus sur la ligne. J’ai asked demandé à l’équipe de monter tous les boutons à 10 sur les choses que je pensais essentielles et de laisser de côté tout le reste. »
Si vous et votre équipe avez besoin de publier et de répondre rapidement aux demandes des clients, jetez un œil aux valeurs et aux règles de la programmation extrême—cela pourrait être un ajustement parfait.,
valeurs de la méthodologie de programmation extrême
XP est plus qu’une gérer les projets—il suit un ensemble de valeurs qui aideront votre équipe à travailler plus rapidement et à collaborer plus efficacement.
Simplicité
les Équipes d’accomplir ce qui a été demandé et rien de plus. XP décompose chaque étape d’un processus majeur en objectifs plus petits et réalisables pour les membres de l’équipe.,
communication simplifiée
Les équipes travaillent ensemble sur chaque partie du projet, de la collecte des exigences à la mise en œuvre du code, et participent à des réunions quotidiennes pour tenir tous les membres de l’équipe à jour. Toute préoccupation ou problème est traité immédiatement.
feedback cohérent et constructif
Dans XP, les équipes adaptent leur processus au projet et aux besoins des clients, et non l’inverse. L’équipe doit démontrer son logiciel tôt et souvent afin qu’ils puissent recueillir les commentaires du client et apporter les modifications nécessaires.,
Respect
la programmation Extrême encourage « tous pour un et un pour tous” mentalité. Chaque personne de l’équipe, quelle que soit sa hiérarchie, est respectée pour ses contributions. L’équipe respecte les opinions des clients et vice-versa.
Courage
Les membres de l’équipe s’adaptent aux changements à mesure qu’ils surviennent et assument la responsabilité de leur travail. Ils disent la vérité sur leurs progrès-il n’y a pas de « mensonges blancs” ou d’excuses pour ne pas faire en sorte que les gens se sentent mieux. Il n’y a aucune raison de craindre parce que personne ne travaille jamais seul.,
Rules of extreme programming methodology
Don Wells a publié les premières règles XP en 1999 pour contrer les affirmations selon lesquelles extreme programming ne prend pas en charge les activités nécessaires au développement de logiciels, telles que la planification, la gestion et la conception. De la planification au test du logiciel, suivez ces étapes de base pour chaque itération.
Projet
Cette étape est l’endroit où le UX de magique se produit., Plutôt qu’un long document d’exigences, le client écrit des user stories, qui définissent la fonctionnalité que le client souhaite voir, ainsi que la valeur métier et la priorité de chacune de ces fonctionnalités. Les User stories n’ont pas besoin d’être exhaustives ou trop techniques—elles doivent seulement fournir suffisamment de détails pour aider l’équipe à déterminer le temps qu’il faudra pour implémenter ces fonctionnalités.
avec Lucidchart, les clients peuvent créer un organigramme de base et facilement enregistrer et partager les fonctionnalités souhaitées.,
à partir de là, l’équipe crée un calendrier de publication et divise le projet en itérations (d’une à trois semaines). Les chefs de projet peuvent vouloir créer un calendrier ou un diagramme de Gantt simplifié pour partager le calendrier avec l’équipe.
gestion
à ce stade, le chef de projet mettra l’équipe en place pour réussir cette méthodologie. Tout le monde doit travailler en collaboration et communiquer efficacement pour éviter tout dérapage. Cette étape consiste à:
- créer un espace de travail ouvert pour votre équipe
- établir un rythme durable (c’est-à-dire, déterminer la bonne longueur pour les itérations)
- planifier une réunion de standup quotidienne
- mesurer la vitesse du projet (la quantité de travail à faire sur votre projet)
- réaffecter le travail pour éviter les goulots d’étranglement ou la perte de connaissances
- changer les règles si XP ne fonctionne pas parfaitement pour l’équipe
conception
Cette règle revient à la valeur de la simplicité: commencez par la conception la plus simple car elle prendra moins de temps solution. N’ajoutez pas de fonctionnalité tôt. Refactoriser souvent pour garder votre code propre et concis., Créez des solutions spike pour explorer les solutions aux problèmes potentiels avant qu’ils ne mettent votre équipe derrière.
Kent Beck et Ward Cunningham ont également créé des cartes CRC (class-responsibility-collaboration) à utiliser dans le cadre de la méthodologie XP. Ces cartes permettent à toute l’équipe du projet de concevoir le système et de voir comment les objets interagissent. Si vous souhaitez essayer cet outil de brainstorming par vous-même, commencez avec notre modèle Lucidchart.,
codage
alors vient enfin le temps d’implémenter le code. XP pratique la propriété collective du code: Tout le monde examine le code et tout développeur peut ajouter des fonctionnalités, corriger des bugs ou refactoriser. Pour que la propriété collective du code fonctionne, l’équipe doit:
- choisir une métaphore système (schéma de nommage standardisé).
- pratiquer la programmation de paires., Les membres de l’équipe travaillent par paires, sur un seul ordinateur, pour créer du code et l’envoyer en production. Une seule paire intègre le code à la fois.
- intégrez et validez le code dans le référentiel toutes les quelques heures.
le client doit être disponible, de préférence sur place, pendant tout ce processus afin de pouvoir répondre aux questions et établir les exigences.
Testing
L’équipe effectue des tests unitaires et corrige les bogues avant que le code ne puisse être publié. Ils exécutent également des tests d’acceptation fréquemment.,
quand utiliser extreme programming
Vous ne savez toujours pas si XP répondra aux besoins de votre équipe, même après avoir lu ses règles et ses valeurs? Extreme programming peut bien fonctionner pour les équipes qui:
- S’attendent à ce que les fonctionnalités de leur système changent tous les quelques mois.
- découvrez des exigences en constante évolution ou travaillez avec des clients qui ne sont pas sûrs de ce qu’ils veulent que le système fasse.
- veulent atténuer les risques du projet, en particulier autour de délais serrés.
- inclure un petit nombre de programmeurs (entre 2 et 12 est préférable).
- peuvent travailler étroitement avec des clients.,
- sont capables de créer des tests unitaires et fonctionnels automatisés.
Si la collaboration et le développement continu sont des priorités pour votre équipe, extreme programming pourrait valoir la peine d’essayer. Parce que ce modèle hautement adaptable nécessite une rétroaction continue des clients, anticipe les erreurs en cours de route et oblige les développeurs à travailler ensemble, XP assure non seulement une sortie de produit de santé, mais a également involontairement amélioré la productivité des équipes de développement partout dans le monde.,
Si vous décidez D’utiliser XP, essayez de documenter visuellement vos histoires d’utilisateurs, vos calendriers de publication, vos cartes CRC et la documentation système dans Lucidchart. Inscrivez-vous pour votre compte gratuit aujourd’hui.