methodologies de developpement agiles : scrum et xp
DESCRIPTION
Petit tout d'horizon des méthodologies de gestion de projet agiles, avec un focus mis sur XP et Scrum.TRANSCRIPT
![Page 1: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/1.jpg)
Méthodes et Processus Agiles
Ecole Informatique IN2P3 2008
![Page 2: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/2.jpg)
Agile ?
• Une méthode agile est une approche itérative et incrémentale, qui est menée dans un esprit collaboratif avec juste ce qu’il faut de formalisme
• Elle génère un produit de haute qualité tout en tenant compte de l’évolution des besoins client
![Page 3: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/3.jpg)
Agile ?
• Modèle de développement à l’opposé du modèle en cascade ou du modèle en V, généralement basés sur le forfait
![Page 4: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/4.jpg)
Agile ?
• Beaucoup de méthodes et techniques dites agiles existent !
• XP, Scrum, RAD, DSDM, ASD, FDD, Crystal Clear, PUMA, AUP, etc.
![Page 5: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/5.jpg)
Agile ?• Courant issu du Manifeste Agile
• L’interaction avec les personnes plutôt que les processus et les outils
• Une production opérationnelle plutôt qu’une documentation pléthorique
• La négociation avec le client plutôt que le respect d’un contrat
• La collaboration au changement plutôt que le suivi du plan
![Page 6: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/6.jpg)
Agile Manifesto
![Page 7: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/7.jpg)
• Notre première priorité est de satisfaire le client en livrant tôt et régulièrement des logiciels utiles.
![Page 8: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/8.jpg)
• Le changement est accepté, même tardivement dans le développement. Les processus agiles exploitent le changement comme avantage compétitif pour le client.
![Page 9: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/9.jpg)
• Livrer fréquemment une application fonctionnelle, toutes les deux semaines à deux mois, avec une tendance pour la période la plus courte.
![Page 10: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/10.jpg)
• Les gens de l'art et les développeurs doivent collaborer quotidiennement au projet.
![Page 11: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/11.jpg)
• Bâtissez le projet autour de personnes motivées. Donnez leur l'environnement et le soutien dont elles ont besoin, et croyez en leur capacité à faire le travail.
![Page 12: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/12.jpg)
• La méthode la plus efficace de transmettre l'information est une conversation en face à face.
![Page 13: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/13.jpg)
• Un logiciel fonctionnel est la meilleure unité de mesure de la progression du projet.
![Page 14: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/14.jpg)
• Les processus agiles promeuvent un rythme de développement soutenable. Commanditaires, développeurs et utilisateurs devraient pouvoir maintenir le rythme indéfiniment.
![Page 15: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/15.jpg)
• Une attention continue à l'excellence technique et à la qualité de la conception améliore l'agilité.
![Page 16: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/16.jpg)
• La simplicité - l'art de maximiser la quantité de travail à ne pas faire - est essentielle.
![Page 17: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/17.jpg)
• Les meilleures architectures, spécifications et conceptions sont issues d'équipes qui s'auto-organisent.
![Page 18: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/18.jpg)
• À intervalle régulier, l'équipe réfléchit aux moyens de devenir plus efficace, puis accorde et ajuste son comportement dans ce sens.
![Page 19: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/19.jpg)
Méthodologie XP
![Page 20: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/20.jpg)
eXtreme Programming
• Réconcilier l´humain avec la productivité
• Voie d'amélioration
• Style de développement
• Discipline de développement d´applications informatiques
![Page 21: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/21.jpg)
Objectif Principal
Réduire les coûts du changement
![Page 22: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/22.jpg)
• Revues de code permanentes
![Page 23: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/23.jpg)
• Développement pilotés par les tests
![Page 24: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/24.jpg)
• Conception au cours du projet (refactoring)
![Page 25: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/25.jpg)
• Privilégier systématiquement la méthode la plus simple
![Page 26: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/26.jpg)
• Utiliser des métaphores pour faciliter la communication
![Page 27: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/27.jpg)
• L’intégration des modifications se fait quotidiennement, voire plusieurs fois par jour
![Page 28: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/28.jpg)
• Les cycles de développement seront réduits au plus court
![Page 29: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/29.jpg)
Cycles XP
Exploration
Attribution de Tâches Développement
Création de Tests Fonctionnels
Livraison & feed-backClient
![Page 30: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/30.jpg)
Programmation par Paire
• Deux développeurs échangent et corrigent mutuellement leur code
• Variante: l’un implémente les fonctionnalités pendant que l’autre code les tests nécessaires
• Qualité optimale !
![Page 31: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/31.jpg)
Tests unitaires et fonctionnels
• Développement piloté par les tests (TDD)
• Etablir un contrat fonctionnel pour l’application d’abord
• Développer ensuite
![Page 32: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/32.jpg)
Intégration Continue
• Garant de l’intégrité des développements au cours des itérations
• Favorise la réactivité
• Instaure un contrôle continu de la qualité
![Page 33: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/33.jpg)
Cas Défavorables de mise en œuvre d’XP
• Blocage culturel
• Grandes équipes de développement
• Feedback long et difficile à obtenir
• Impossibilité de fonctionner en binômes
![Page 34: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/34.jpg)
Méthodologie Scrum
![Page 35: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/35.jpg)
Scrum ?
• Méthodologie de gestion de projet
• Issue du terme “mêlée” (Rugby) en anglais
• Avancer ensemble vers un but commun
• Pas fondamentalement liée au développement logiciel
• Bon complément à XP
![Page 36: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/36.jpg)
Objectifs de Scrum
• Focaliser l’équipe sur la réalisation d’objectifs dans un cycle itératif
• Itérations de 30 jours appelées Sprint, chacune possédant son un périmètre fonctionnel délimité
• Comme avec XP, la participation du client est prépondérante
![Page 37: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/37.jpg)
Idées Clé
• Le client est au cœur du projet
• Esprit d’équipe
• La communication est la clé
• Simplicité, Efficacité, et Qualité
• Flexibilité aux changements
• Avancement basé sur le concret
![Page 38: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/38.jpg)
Rôles
• Product Owner (ou Directeur Produit)C’est le représentant des clients et des utilisateurs
• Scrum MasterEst chargé de protéger l'équipe de tous les éléments perturbateurs extérieurs à l'équipe et de résoudre ses problèmes non techniques
![Page 39: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/39.jpg)
Rôles
• EquipeAuto-gérée, elle s'adresse directement au Directeur de produit.
• Intervenants (Stakeholders)Personnes qui souhaitent avoir une vue sur le projet sans réellement s'investir dedans (experts, agents de direction)
![Page 40: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/40.jpg)
Processus
Clients Intervenants extérieurs
Directeur de Produit
Equipe
ScrumM
aster
Elémentsperturbateurs Equipe étendue
![Page 41: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/41.jpg)
Projet
Planification
Release
Sprint Sprint Sprint Sprint
Release
Sprint Sprint Sprint
Produit partiel, testéet utilisable
Version finalisée
Produit partiel, testéet utilisable
...
![Page 42: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/42.jpg)
Le Sprint
• 30 jours calendaires (~2 à 4 semaines en réalité)
• Associé à un but, matérialisé par la réalisation d’un certain nombre d’items du backlog produit
![Page 43: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/43.jpg)
Backlog Produit
• Liste des éléments fonctionnels à implémenter
• Chaque élément du backlog est noté deux fois en termes d’importance :
• Le Product Owner lui attribue une valeur client
• Une estimation en points arbitraires est faire par l’équipe (ex. Fibonacci)
![Page 44: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/44.jpg)
Backlog Produit
• Les items du backlog de produit peuvent être réordonnés, ajoutés ou supprimés d’un sprint - si les conditions l’exigent et après concertation de l’Equipe Etendue
![Page 45: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/45.jpg)
Backlog Produit
![Page 46: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/46.jpg)
Backlog de Sprint
• L’équipe sélectionne les items du backlog produit à prendre en charge pour le sprint
• Chaque item est décomposé en tâches dont la durée ne doit jamais excéder deux jours
• Chaque tâche traitée donne lieu à une mise à jour du backlog de sprint
![Page 47: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/47.jpg)
Backlog de Sprint
![Page 48: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/48.jpg)
Sprint Burndown Chart
• C’est la somme des heures des items du backlog de sprint, soit le reste à faire total du sprint
• Il montre le reste à faire au fur et à mesure de l’avancement du sprint
![Page 49: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/49.jpg)
Vélocité
• Une fois un sprint terminé, on peut calculer la vélocité de l’équipe, et estimer la charge des prochains sprint d’une façon de plus en plus fiable
![Page 50: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/50.jpg)
Daily Scrum
• C’est une réunion quotidienne de 15 minutes maximum destinée à faire un point sur l’avancement du sprint
• Chaque membre répond à 3 questions :
• Qu'est-ce que j'ai fait hier ?
• Qu'est-ce que je compte faire aujourd'hui ?
• Quelles difficultés est-ce que je rencontre ?
![Page 51: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/51.jpg)
Revue de Sprint
• A la fin d’un sprint, c’est une réunion de quelques heures destinée à comprendre ce qui n’a pas marché quand c’est le cas
• Il faut en tirer des axes d’amélioration pour les sprints suivants, et adapter le backlog produit en conséquence
![Page 52: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/52.jpg)
Eléments Déterminants
• Travailler dans la même pièce
• Equipe idéale constituée de 4 développeurs
• Tableau blanc, post-its
• Calme
![Page 53: Methodologies de Developpement Agiles : Scrum et XP](https://reader031.vdocuments.mx/reader031/viewer/2022013011/54b7a04c4a79592d048b456f/html5/thumbnails/53.jpg)
Questions ?