L'agilité en quelques slides 03/2012
Présentation
● Nicolas Deverge - ekito● Architecte & ScrumMaster● Speaker à l'AgileTour 2009● Speaker au SigmaT 12● Speaker en 2012 pour le PPN des IUT
Twitter : @ndeverge
L'Agilité● Ce que c'est
● un état d'esprit
● un processus léger
● la transparence / la confiance
● l'acceptation du changement
● amélioration continue
● pilotage par la valeur business
● Ce que ce n'est pas● une solution à tous les problèmes
● une méthode de gestion de projet
● une méthode de développement rapide
Pourquoi les méthodes Agiles ?
● Le cycle en V fonctionne mal en ingénierie logicielle
● Problème de l'expression du besoin● Fonctionnalités non utilisées
● Effet tunnel
Pourquoi les méthodes Agiles ?
Manifeste Agile
● l’interaction avec les personnes plus que les processus et les outils
● un produit opérationnel plus qu'une documentation pléthorique
● la collaboration avec le client plus que la négociation de contrat
● la réactivité face au changement plus que le suivi d'un plan
Scrum
● Une méthode Agile● Cadre● Boîte à outils● Décrit le processus d'organisation, pas les
pratiques d'ingénieries
Le processus Scrum en une image
Le Sprint● Les projets Scrum progressent par une série de
sprints
● La durée d’un sprint est de 2 à 4 semaines
● Une durée constante apporte un meilleur rythme
● Le produit (partiel) est conçu, codé et testé pendant le sprint (mini cycle en V)
Les rôles● Product Owner
● Définit les fonctionnalités du produit● Choisit la date et le contenu de la release● Responsable du retour sur investissement● Définit les priorités en fonction de la valeur
« métier »● Ajuste les fonctionnalités et les priorités à
chaque itération si nécessaire● Accepte ou rejette les résultats
Les rôles● ScrumMaster
● Représente le management du projet● Responsable de faire appliquer par l’équipe
les valeurs et les pratiques de Scrum● Résout des problèmes● S'assure que l'équipe est complétement
fonctionnelle et productive● Facilite une coopération poussée entre tous
les rôles et fonctions● Protège l'équipe des interférences extérieures
Les rôles● L'équipe
● Regroupant tous les rôles – Architecte, concepteur, développeur, spécialiste
IHM, testeur, etc.
● A plein temps sur le projet, de préférence– Exceptions possibles (administrateur, …)
● L’équipe s’organise par elle-même● La composition de l’équipe ne doit pas
changer pendant un Sprint● Le ProductOwner et le ScrumMaster font aussi
parties de l'équipe
Le backlog de produit● Contient l'ensemble des exigences
● Users stories (exigences fonctionnelles)● Bugs● Spikes techniques
● Chaque élément est priorisé et pondéré
● « Business point »● « Points d'effort »
Priorisation & Pondération● Priorisation
● Grâce aux « Business points »● Si ça ne suffit pas, ateliers « Buy a feature »
● Pondération
● Grâce aux « points d'effort »● Relativement entre users stories● Estimation collective
– « Planning Poker »– Par similitude
La planification de Sprint● A partir du backlog de produit priorisé et pondéré
● Définition du “but du Sprint”● Sélection des users stories en haut du backlog● Par rapport à la vélocité
La planification de Sprint
Réserver
Voir lesdispos
Payer
Voir les offres
Rembourser
Créer uncompte
Backlog de produit Backlog de Sprint n
+ prioritaire
- prioritaire
3
5
5
3
2
3
Accès à uncompte 2
Si vélocité entre 6 et 9
Sprint n+1
Sprint n+2
Radiateur d'informations
La planification de Sprint● Puis découpage des Users Stories en tâches
techniques
● Collectivement par l'équipe● Estimées en « reste à faire » (en heures
idéales)
Le Done● Pour être considérée comme terminée, une User-
Story doit répondre à certains critères :
● Codée● Testée fonctionnellement● Testée unitairement● Documentée● etc...
Le déroulement quotidien● “Daily Scrum” tous les matins
● Coordination quotidienne de l'équipe● Timeboxé : pas plus de 3 minutes par
personne● 3 questions :
– « Qu'est-ce que tu as fait hier ? »– « Qu'as-tu prévu aujourd'hui ? »– « As-tu des problèmes ? »
● On en profite pour mettre à jour les tâches techniques (et le reste à faire)
● Le PO et le SM participent aussi !!
En fin de Sprint● La revue
● 2h max, toute l'équipe● Le PO fait une démo du produit● On regarde les métriques● On fixe les objectifs du Sprint suivant● On invite du monde !
– Stakeholders– End users– Sponsors
En fin de Sprint● La rétrospective
● 30 mn max, que l'équipe● Amélioration continue● Critique du processus en vue de l'améliorer● 3 questions :
– « Qu'est-ce qu'il faut continuer ? »– « Qu'est-ce qu'il faut arrêter ? »– « Qu'est-ce qu'il faudrait commencer ? »
Quelques métriques● Burndown chart de Sprint
● Hour burndown chart de Sprint
● Burndown chart de Release
● Velocity chart
Sprint1 Sprint2 Sprint3 Sprint4 Sprint5 Sprint6 Sprint70
20
40
60
80
100
120
21
8297101
6986
61
Vélocité
Quelques pratiques d'ingénierie (XP)● Pair Programming
● Tests Unitaires & Test Driven Development
● Intégration Continue
● Compilation● Tests unitaires● Packaging● Documentation
Utilisateurs de Scrum● Microsoft● Yahoo● Google● Electronic Arts● High Moon Studios● Lockheed Martin● Philips● Siemens● Nokia● CNES● BBC● INRA
● Nielsen Media● First American Real
Estate● BMC Software● Ipswitch● John Deere● Lexis Nexis● Sabre● Salesforce.com● Time Warner● Turner Broadcasting● ...
Autres...
Des questions ?
Agence Centre Ville :
1 place de la Bourse,
31000 Toulouse
Tél. : + 33 (0) 561 316 240
Fax. : + 33 (0) 561 713 500
www.ekito.fr
Copyright● Vous êtes libre de :
● Reproduire, distribuer et communiquer cette création au public
● Modifier cette création
● Selon les conditions suivantes :
● Paternité. Vous devez citer le nom de l'auteur original de la manière indiquée par l'auteur de l'oeuvre ou le titulaire des droits qui vous confère cette autorisation (mais pas d'une manière qui suggérerait qu'ils vous soutiennent ou approuvent votre utilisation de l'oeuvre).
● Rien dans ce contrat ne diminue ou ne restreint le droit moral de l'auteur ou des auteurs.
http://creativecommons.org/licenses/by/3.0/