View
356
Download
0
Category
Preview:
DESCRIPTION
Formation Introduction à l'Agilité pour les professeurs de Lyon 1 - par Alfred Almendra, Laurent Bossavit et Agnès Crépet
Citation preview
Introduction à l'agilité
IUT Lyon 1 - 20 juin 2012
@Agnes_Crepet@Morendil (Laurent Bossavit) @AlfredAlmendra
Agnès Crépet@agnes_Crepetagnes@ninja-squad.com Java/JEE Architecte Laboratoires Boiron Ninja Squad Java User Groups Leader: Duchess France & LyonJUG Co-fondatrice de la conférence MIX-IT (Java, Agilité...) Co-fondatrice du podcast Cast-IT (Java, Agilité...)
Laurent Bossavit@Morendillaurent@bossavit.com Directeur de l'institut agile
http://institut-agile.fr/
Alfred Almendra@AlfredAlmendraalfred.almendra@gmail.com Freelance Scrum Master Coach agile Architecte Java/SOA CARA Lyon
Agenda du matin
9h Introduction
10h30 1 jeu court de sensibilisation
- 10h45 pause -
11h Contractualisation
11h20 Agenda de l'après-midi
11h40 Questions
- 12h déjeuner (salle 33) -
Introduction
Manifeste agile
Savoir Être & Bon sensAffronter les biais cognitifsEmbrasser le changement
Le manifeste agile : 4 valeurs, 12 principes
Privilégier :- Les individus et leurs interactions plus que les processus / outils- Des logiciels opérationnels plus qu’une documentation exhaustive- La collaboration avec les clients plus que la négociation contractuelle- L’adaptation au changement plus que le suivi d’un plan
2001http://agilemanifesto.org/iso/fr/
Cycle itératif, incrémental
@jeffpatton Processus continude fabrication
Qualité et rigueur du dévMéthode XP et ses pratiques techniques
● Adaptée aux équipes réduites avec des besoins changeants● But principal : réduire les coûts du changement● Valeurs : communication, simplicité, feedback, courage, respect● Pratiques :
Entrainements : code retreat, coding dojoMouvement du software craftsmanship (clean code, uncle Bob)
Efficacité du dév collaboratif
Usine de Qualité Logicielle :
● Versionning
● Mesure automatique de la qualité du code
● Automatisation des tests, intégration continue
● Gestion des tâches
● Déploiement continu
Rôles et auto organisation
Lâcher prise
Pilotage par les risques
Daily meeting (stand up)
SCRUM : la méthode populaire
Mais il existe d'autres méthodes!
Visual Management
task board / DoD burndown chart
plan d'itération story mapping Niki-niko
Etapes projet et jeux sérieux
Jeux sérieux
Efficacité : ● Ludique : volontarisme, motivation● Cadre et règles simples : focus sur l’objectif● Créativité, collaboration, excellent taux d'apprentissage
Objectifs :
● Valeur produit : pour remplacer les réunions stériles● Valeur humaine : pour sensibiliser● Apprendre et s'entraîner (Playing Dojo)● Diagnostiquer et résoudre un problème
Mouvements, tendances, convergence
Lean Startup
DevOps
1 jeu court de sensibilisation
Jeu court
Vaches et spécifications
2 équipes de 4 personnes ...
... pendant 1 minute !
Vaches et spécifications
Vision produit = l'objectifSpécifications détaillées = un moyen
Contractualisation
Contractualisation
Entorse à l'agilité :● privilégier la collaboration avec le client (VS contrat)● adaptation au changement (VS périmètre prédictif figé)● cycle itératif (VS effet tunnel)
Agilité ?● contractualiser aussi sur la forme (moyens)● réduire l'effet tunnel ● faire son marché
Exemple concret, français et libre (fruit de la collaboration avec le département IP/IT du cabinet d'avocats Alérion et le cabinet de conseil LCA) :http://contrat-agile.org/
Différentes situations :● client agile / non agile● équipe avec ou sans collaborateur du client● régie / forfait● appel d'offre / marché public / éditeur progiciel● sur site / multi sites / nearshore / offshore
Contrat = engagement
Actionner des leviers différents :● Marché de niche, appli web : exploration ● TMA : industrialisation
Evaluation itérative de la satisfaction client : Done criteria
Contractualisation
Contractualisation : exploration
Périmètre fonctionnel et marchés inconnus ou flous● expérimentations itératives● engagement sur la forme plutôt que sur le fond
1 contrat ou avenant pour l'itération N+1● fixation du coût du sprint● périmètre : fixe ou avec part variable (mini cycle en V)● satisfaction client : stop ou encore
○ le meilleur indicateur (principe agile)
Client : agile (et demandeur de l'agilité !)
Scrum : PO client (métier) ou proxy-PO fournisseur (présent)
Contractualisation : TMA
Application existante● périmètre fonctionnel connu● priorisation claire (bloquant, majeur, mineur)
Taille des demandes limitée : estimation facilitée
Qualité maîtrisée : usine de qualité logicielle
Client : agile ou non
Coût annualisé : % projet, forfait, pool de jours
Kanban : industrialisation
Agenda de l'après-midi
13h30 2 jeux de sensibilisation (salle 26)
14h30 3 sujets à la carte de 20' (salles 10, 11, 12)
- 15h30 pause -
15h40 2 sujets à la carte de 20' (salles 10, 11, 12)
16h30 Rétrospective (salle 26)
- 17h FIN -
< 18h Echanges libres
Comment ajouter des méthodes et pratiques agiles dans les cours des enseignants ?
● consultez la map
● choisissez vos sujets
● préparez vos questions
● apportez vos idées
Cet après-midi
Ressources
Ressources
Présentations de Claude Aubry (voir son Introduction à l'Agilité pour l'Inra) : http://www.aubryconseil.com/media http://www.extremeprogramming.orgLe site de référence XP, qui propose une excellente présentation de la méthode http://www.xprogramming.comsite XP de Ron Jeffries. Articles très intéressants sur la méthode (rubrique "XP Magazine"), ainsi qu'une liste des frameworks xUnit disponibles pour divers langages ("XP downloads").
http://www.xp123.comsite de William Wake. Nombreux articles sur les pratiques concrètes de XP (les tests unitaires avec Java, le Planning Game, etc).
Ressources
http://www.clubagilerhonealpes.org/blogsDes blogs d'agilistes!
http://institut-agile.fr/Le site de l'institut agile (Laurent Bossavit)et son référentiel : http://referentiel.institut-agile.fr/ http://henrik-kniberg.developpez.com/livre/scrum-xp/ "Scrum et XP depuis les Tranchées"Comment nous appliquons Scrum
http://lyon.clubagilerhonealpes.org/Groupe Lyonnais du Club Agile Rhône-Alpes
OuvragesL'Extreme Programming (avec deux études de cas), Jean-Louis Bénard, Laurent Bossavit, Régis Medina, Dominic Williams, chez Eyrolles, 2002.
Extreme Programming Explained : Embrace Change, Kent Beck,Addison-Wesley, 1999.
Extreme Programming Installed,Ron Jeffries, Ann Anderson et Chet Hendrickson,Addison-Wesley, 2000.
Planning Extreme Programming,Ron Jeffries, Ann Anderson et Chet Hendrickson,Addison-Wesley, 2000.
Refactoring : Improving the Design of Existing Code, Martin. Fowler, Addison-Wesley, 1999
2 jeux de sensibilisation
Jeu : complex system
1. Tout le monde marche en groupe
2. Chacun choisit 2 personnes
3. Au top : on essaye de former un triangle isocèle
Mocks en scène
9 participants :
- le module de calcul du coût des péages d'un trajet (C) - le module de calcul du temps de parcours d'un trajet (D)
- le programme permettant d'estimer le niveau de motivation et d'engagement nécessaire d'un conducteur (péage + carburant + pénibilité) sur un trajet (R)
- les 4 tests unitaires (TU)
- le mock de C (MC) - le mock de D (MD)
Mocks en scène
Programmes C, D, R, TU
Paramètres : ville de départ, ville d'arrivée
Retourne une valeur énumérée :
● C : PEU CHER (moins de 5€), CHER (plus de 5€)
● D : COURT (moins de 2h), LONG (plus de 2h)
● R : BASIQUE, MOYEN, RUDE
● TU : VERT, ROUGE
Mocks en scène
TU : appeler R et vérifier le résultat retourné :
si égal alors VERT, sinon ROUGE
● TU #1 : Lyon - Billy = MOYEN
● TU #2 : Lyon - St Etienne = BASIQUE
● TU #3 : Lyon - Paris = RUDE
● TU #4 : Lyon - Grenoble = MOYEN
Mocks en scène
R v2 :
● si PEU CHER et COURT alors BASIQUE
● si PEU CHER et LONG alors MOYEN
● si CHER et COURT alors MOYEN -- corrigé
● sinon erreur fonctionnelle (cas non traité)
Mocks en scène
R v3 :
● si PEU CHER et COURT alors BASIQUE
● si PEU CHER et LONG alors MOYEN
● si CHER et COURT alors MOYEN -- corrigé
● si CHER et LONG alors RUDE -- corrigé
● sinon erreur fonctionnelle (cas non traité)
Mocks en scène
R v4 :
● si PEU CHER et COURT alors BASIQUE
● si PEU CHER et LONG alors erreur technique (bug)
● si CHER et COURT alors MOYEN -- corrigé
● si CHER et LONG alors RUDE -- corrigé
● sinon erreur fonctionnelle (cas non traité)
Mocks en scène
C v2 :Lyon - Paris = CHERLyon - St Etienne = PEU CHERLyon - Grenoble = CHERLyon - Billy = CHER
D v2 :Lyon - Paris = LONGLyon - St Etienne = COURTLyon - Grenoble = COURTLyon - Billy = COURT
Mocks en scène
Test unitaire : vraiment unitaire grâce aux Mocks
Mocks : coder avant les autres
PIC : le garde fou● tests automatiques● non régression
Couverture et qualité du code : outillage automatique
Recommended