développement distribué agile
DESCRIPTION
TRANSCRIPT
![Page 1: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/1.jpg)
AGILITÉ ET DÉVELOPPEMENT DISTRIBUÉ
Xavier WarzeeEmail: [email protected]
Mathieu SzablowskiEmail: [email protected]
![Page 2: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/2.jpg)
AU FAIT, C’EST QUOI POUR VOUS « DISTRIBUÉ » ?
![Page 3: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/3.jpg)
AGENDA
Challenges de l’agilité en équipe distribuée
Bonnes pratiques
Retour d’expériences
![Page 4: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/4.jpg)
CHALLENGES DE L’AGILITÉ EN ÉQUIPE DISTRIBUÉE
![Page 5: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/5.jpg)
CHALLENGE DE L’AGILITÉ EN ÉQUIPE DISTRIBUÉE Travail en équipe ?
Décalage horaire Comment échanger sur les besoins fonctionnels ?
Équipe on-shore souvent occupée Équipe off-shore reste dans le flou
Communication ? Ligne téléphonique => qualité de communication basse ! Accent, culture, approche des problèmes différents
Effet 24h Si une action doit être faite par une équipe pour que l’autre équipe
avance et que l’action n’est pas faite à la fin d’une journée, l’autre équipe reste bloquée une journée complète !
Pas de vision commune des enjeux business du projet Équipe off-shore sans visibilité sur les attentes métier
Þ peu de contextes Þ Pas de vision globaleÞ Actions techniques sans signification
![Page 6: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/6.jpg)
L’AGILITÉ AVEC SCRUM
Itération courte : le « sprint » de 2 à 4 semaines
Les rôles : ScrumMaster, ProductOwner
Le « Product Backlog »
Communication intensive : le « Daily Scrum »
Petites équipes
Distribution des développements par fonction
![Page 7: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/7.jpg)
CHALLENGES SUPPLÉMENTAIRES
Mise à disposition d’un niveau suffisant de support pour mettre en place l’environnement de travail : outils, serveurs, …
Mise à disposition des accès aux infrastructures nécessaires au projet en off-shore
Référentiel de gestion de configuration, …
Représentant de l’équipe off-shore dans l’équipe on-shore => faciliter la communication
Manque de confiance Bien comprendre les méthodes de travail de l’équipe offshore
Style de rédaction des documents, …
Manque de visibilité
![Page 8: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/8.jpg)
BONNES PRATIQUES
![Page 9: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/9.jpg)
EQUIPE OFF-SHORE
Construire l’équipe offshore incrémentalement Supporter activement l’équipe offshore Mettre en place un environnement Ajouter ensuite de nouveaux membres à l’équipe
offshore
Intégrer un proxy leader de l’équipe offshore par projet dans l’équipe onshore Échanges côté onshore plus facile à créer Échanges côté offshore compensés par connaissance
des équipes offshore par le proxy leader
![Page 10: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/10.jpg)
MULTIPLIER LES CANAUX DE COMMUNICATION
Email, IM, Webcams, Vidéo conférences (round table), Tableaux blancs électroniques.
Dépasser la communication verbale !
![Page 11: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/11.jpg)
INTÉGRATION CONTINUE
Construire, tester, déployer systématique
Vélocité des développements grandement améliorée !
Partage facilité et commun de l’état du projet
Pour des équipes très éloignées, définir 2 « builds » principaux (alternance jour/nuit) :
1 « build » le matin 1 « build » le soir
Augmentation de la stabilité du code
Facilite l’ajout de nouvelles fonctions et la gestion des releases
Partager une même perception de l’état « concret » du projet !
![Page 12: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/12.jpg)
BIEN DÉFINIR LE NOTION DE « TERMINÉ »
« Terminé » pour une « story »
• Répondre aux critères d’acceptation définir au début d’un sprint
• Tous les codes et tests dans le référentiel de gestion de version
• Tous les tests de « story » écrits et passés avec succès
• Tous les tests fonctionnels applicables pour une “story” sont identifiés, écrits et passés avec succès
• Approbation du PO / Stakeholder
« Terminé » pour un « sprint »
• Tous les critères pour les « stories » sont à jour et/ou adressés
• Tous les « Critical/Error Breaking » détectés par FxCop sont corrigés
• Code coverage >= 70%• 0 erreurs détectées par
StyleCop• Utiliser un Profiler et
analyser les résultats• Démonstration au PO
![Page 13: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/13.jpg)
DÉMARCHE D’AMÉLIORATION CONTINUE Rétrospectives à chaque fin de
« sprint » permettant de remonter les suggestions d’amélioration (+ de temps pour les tests, …)
Objectif : améliorer les pratiques durant chaque « sprint »
![Page 14: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/14.jpg)
INVESTIR EN INFRASTRUCTURE ET PROCESS
Solution permettant de construire, déployer, tester automatiquement
Développer des émulateurs pour l’ensemble des dépendances externes
Passer du temps à échanger sur la définition de « Terminé » pour les « stories », « sprints »
Passer du temps à échanger sur l’amélioration du processus de développement
![Page 15: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/15.jpg)
MÉTRIQUES POUR MESURER L’AVANCEMENT
Mesure du nombre de bugs trouvés par release Mesure du nombre de bugs résolus par release Mesure du nombre de bugs par priorité, par fonction Résultats des tests Complexité du code Couverture du code par les tests Pourcentage des « stories » terminées par sprint
Mesures particulières : % up-time des services, % de retour positif des clients, Latence moyenne des transactions, etc.
![Page 16: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/16.jpg)
MÉTRIQUES D’ESTIMATION POUR LES SPRINTS
![Page 17: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/17.jpg)
STATIQUES CONCERNANT LES BUGS
![Page 18: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/18.jpg)
STATISTIQUES CONCERNANT LES TESTS AUTOMATISÉS
![Page 19: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/19.jpg)
RETOUR D’EXPÉRIENCE AVEC PYXIS
![Page 20: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/20.jpg)
PROJET CLIENT
PARIS 3 développeurs 1 Scrum Master 1 Product Owner Sponsor Utilisateurs
GRENOBLE 2 développeurs
![Page 21: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/21.jpg)
INFRASTRUCTURE PROJET CLIENT
PARIS GRENOBLE
WEB
MailWikiDocuments
IntégrationPré-Production
![Page 22: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/22.jpg)
URBAN TURTLE
MONTREAL3 développeursProduct Owner
PARIS1
développeur
![Page 23: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/23.jpg)
OUTILS DE COLLABORATION
Simple et pratique Voir l’état du sprint
Qu’avons-nous réalisé? Sur quoi puis-je m’engager? Qu’avons-nous livrer au client
Accès distant Temps réel Intégré
![Page 24: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/24.jpg)
Intérêt dans une équipe distribuée
ATELIER : OUTILS VS PRATIQUES
![Page 25: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/25.jpg)
VISUAL STUDIO TEAM SYSTEM
Un serveur pour la collaboration
Des outils clients
![Page 26: Développement distribué agile](https://reader035.vdocuments.fr/reader035/viewer/2022062614/546d33bdaf795997388b4e2c/html5/thumbnails/26.jpg)
URBAN TURTLE
Extension de Visual Studio Web Access Faciliter la gestion de projet agile
Itératif, incrémentale, transparence…