SlideShare uma empresa Scribd logo
1 de 36
Baixar para ler offline
Open-REX – Utilisation des méthodes agiles




                25/03/2010
            Clément BERTHELOT
Licence d'utilisation

•   Cette présentation vous est fournie sous licence Creative Commons
    Attribution Share Alike


•   Vous etes libres :
     – De reproduire, distribuer et communiquer cette création au public
•   Selon les conditions suivantes :
     – Paternité. Vous devez citer le nom des auteurs originaux mais pas d'une
        maniere qui suggérerait qu'ils vous soutiennent ou approuvent votre
        utilisation de l'œuvre.
     – A chaque réutilisation ou distribution de cette création, vous devez faire
        apparaitre clairement au public les conditions contractuelles de sa mise a
        disposition sous licence identique Creative Commons Share Alike.
     – Chacune de ces conditions peut etre levée si vous obtenez l'autorisation
        du titulaire des droits sur cette œuvre.
     – Rien dans ce contrat ne diminue ou ne restreint le droit moral de l'auteur
        ou des auteurs.
Open-REX – Utilisation des méthodes agiles

• Contexte du projet
   – Présentation rapide du projet
   – Organisation de l'équipe projet
   – Quelques pré-requis pour faire de l'agile


• Focus sur une itération en mode agile
   – Principales phases d'une itération
   – Organisation de l'équipe MOE
   – Les outils


• Retour sur l'utilisation des méthodes agiles
   – Au fil des itérations
   – Les phases de livraison
Présentation du projet

• Portail web d'un grand opérateur d'internet et des
  annuaires
   –   Gestion des produits
   –   Gestion de leurs comptes
   –   Suivi des audiences de leurs produits
   –   Informer les professionnels de l'entreprise


• Application tres évolutive
   – Mise en production tous les 3 mois
   – Besoin tres changeant; nécessité de reprioriser fréquemment les
     tâches a faire
   – De nombreux partenaires


• Organisation de l'équipe
Organisation de l'équipe
Quelques pré-requis



• Une équipe motivée et acceptant de changer les habitudes

• Des processus clairs, établis par tous et connus de tous

• Une MOE et une AMOA tres rapprochées

• Une plateforme d'intégration continue fonctionnelle
Les phases du mode agile



• Quelques définitions de base :

   – Chaque livraison en recette est un sprint


   – Un sprint est une succession de n itérations


   – Une itération débute par une présentation de User Stories et se
     termine par une rétrospective de l'itération
Les phases du mode agile

• Schéma du cycle d'une itération
Les phases du mode agile

• Quelle durée pour une itération ?

• Plus c'est court, plus c'est bon
   – Vrai au début
   – 1 semaine pendant la phase d'initiation
   – Permet de répéter rapidement les différents rituels de l'agile



• Ensuite, nous sommes passés sur 15 jours
La présentation des User Stories



• Ensemble limité d'exigences qui répondent a un besoin
  spécifique
   – En tant que « utilisateur », je veux « action » pour « resultat »


• Chaque US a une valeur métier MOA et une complexité
  estimée (estimation grosse maille) par le TechLead et le
  Bureau d'Etude

• Toute US est livrée avec un lot de tests automatisés
  souhaités par la MOA
Evaluation de la complexité

• Pas d'évaluation en jours/homme (trop dépendant de la
  personne qui va développer)

• Deux nouveaux indicateurs
   – La complexité
      • 0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ?
   – La vélocité
      • Nombre de points réalisés pendant une itération


• Principe : une tâche a la meme complexité pendant toute
  la durée du projet. C'est la vélocité qui varie

• La complexité est évaluée par toute la MOE
Choix des US par la MOE

• C'est la MOE qui « choisit » le nombre de US qu'elle peut
  traiter (en respectant la priorisation MOA)

• La MOE s'engage a terminer les US choisies
   – Définir ensemble MOA/MOE ce que « terminé » signifie
   – Ex : commité, tests unitaires OK, couverture de test OK, tests
     fonctionnels automatisés OK, Environnement de démonstration
     bouchonné, ...


• Prise en compte des tâches techniques supplémentaires
   – Ex : Portlets d'administration, Mise en place d'une PIC,
     amélioration de performances, ...
• Répartition des tâches dans l'équipe
   – Faire tourner les sujets, binomage, ...
Agile au quotidien – Organisation plateau

• Le backlog indexe toutes les US
• Les US sont documentées dans un wiki, accompagnés des
  tests de recette
• Toute évolution est faite sous forme de US
• Tout bug est répertorié dans un bugtracker
• Les tableaux post-it
   –   Road map
   –   Tableau de suivi
   –   Planning de livraison
   –   Zoom suivi MOE


• Question : de quels tableaux se sert-on vraiment ?
Agile au quotidien – Organisation plateau

• De quels tableaux se sert-on vraiment ?
   –   Road map [AMOA]
   –   Tableau de suivi [personne]
   –   Planning de livraison [tout le monde]
   –   Zoom suivi MOE [MOE]


  → Presque tous

• Quels avantages
   – Une vision du projet en grand format partagée par tous
   – Facile de gérer le travail a faire de l'équipe sur une itération
Agile au quotidien – Organisation MOE

• Ensemble des tâches affichées sur le tableau de suivi
   – Zoom détaillé sur les tâches MOE proche de l'équipe


• Stand-up meeting tous les matins
   – Uniquement MOE + coach AMOA si une annonce a faire
   – Chaque développeur indique ce qu'il a fait hier, ce qu'il prévoit de
     faire aujourd'hui, s'il rencontre des problemes
   – Proposition de binomage (Diffusion de la connaissance, meilleure
     ambiance)
   – Tres bon suivi au quotidien pour le TechLead et le chef de projet
Agile au quotidien – Les outils

• La météo du projet avec Hudson.
Agile au quotidien – Les outils

• Les Tests Unitaires
   – Implémentation fake de tous les services extérieurs et des services
     Liferay « service buildé »
   – Services bouchonnés au plus proche de la réalité
       • Bases de données de test
       • Fichiers xml ou html pour les requetes http
       • Utilisation de yaml pour les webservices
Agile au quotidien – Les outils - yaml
Agile au quotidien – Les outils - yaml

• Classe de mapping DTOYml
Agile au quotidien – Les outils - yaml

• Exemple de bouchon
  – Méthode remplaçante du service réel
Agile au quotidien – Les outils - yaml

• Exemple de bouchon
  – Méthode de lecture du fichier yaml
Agile au quotidien – Les outils - yaml

• Exemple de bouchon
  – Mapping vers l'objet reel
Agile au quotidien – Les outils - yaml

• Exemple de classe Manager
Agile au quotidien – Les outils

• Les Tests Unitaires
   – Implémentation fake de tout les services extérieurs et des services
     Liferay « service buildés »
   – Services bouchonnés au plus proche de la réalité
       • Bases de données de test
       • Fichiers xml ou html pour les requete http
       • Utilisation de yaml pour les webservices


• Les bouchons ont une double utilité
   – Bouchons pour les tests unitaires
   – Bouchons pour l'environnement de démo (données AMOA)


• Possibilité de switcher entre environnements bouchon ou
  réel par fichier properties. Utilisation de Managers
Agile au quotidien – Les outils

• Les tests fonctionnels automatisés avec GreenPepper
   – Tests écrits en collaboration MOE/AMOA
   – Fixtures GP rédigées dans un wiki et transformées en java
   – Tests principalement selenium [Projet d'agrégation de données –
     l'IHM permet de valider un grand nombre de regles fonctionnelles]
• Attention :
   – On ne peut pas tout tester, mais ça réduit la charge de l'équipe qui
     s'occupe de la recette
   – Question a se poser avant l'écriture d'un test :
       • La répétition manuelle de ce test en recette sera-t-elle toujours plus
         rapide que le temps passé a l'automatiser ?
       • Cette fonctionnalité ne sera-t-elle pas déja testée autrement ?


• Fonctionnement basique de GP
   – Ecriture des fixtures grâce a quelques mots clés
Agile au quotidien – Les outils - GP

• Do with : permet de créer une fixture = un test java




• Check : Vérifie une ou plusieurs valeur




• List of : permet au check de tester une liste de valeur
Agile au quotidien – Les outils - GP

• Do with : permet de créer une fixture = un test java




• Check : Vérifie une ou plusieurs valeurs




• Set of : permet au check de tester un ensemble de valeurs
Agile au quotidien – Les outils

• Les tests fonctionnels automatisés avec GreenPepper
   – Tests écrits en collaboration MOE/AMOA
   – Fixtures GP rédigées dans un wiki et transformées en java
   – Tests principalement selenium


• Fonctionnement basique de GP
   – Ecriture des fixtures grâce a quelques mots clés
   – Enrichissement par notre propre grammaire complémentaire
      • Plus simple pour l'AMOA
Agile au quotidien – Les outils - GP

• Grammaire specifique au projet
Agile au quotidien – Les outils

• Les tests fonctionnels automatisés avec GreenPepper
   – Tests écrits en collaboration MOE/AMOA
   – Fixtures GP rédigées dans un wiki et transformées en java
   – Tests principalement selenium


• Fonctionnement basique de GP
   – Ecriture des fixtures grâce a quelques mots clés
   – Enrichissement par notre propre grammaire complémentaire
      • Plus simple pour l'AMOA
   – injection des données utiles et exécution dans un environnement
     fermé.
Fin d'itération - Démo

• Préparation de la démo
   – Vérification sur la PIC des exigences demandées avec l'AMOA
     concernée
   – Déploiement sur une machine spécifique a partir de la PIC
   – La machine de démo servira de plateforme de test, bouchonnée
     avec les données de la MOA pendant l'itération suivante
   – Présentation démo dans la MOE pour partage de connaissances


• Démo + Ptit dej = tout le plateau réuni
   –   US pour validation / US pour background avancement
   –   Validation des exigences MOA
   –   Calcul du niveau de complexité développé sur l'itération
   –   Report de la complexité dans le burndown chart
Burndown chart
Fin d'itération - Rétrospective



• Note d'itération → humeur de l'équipe
• Annonces du pilote du projet
• Keep/drop/start/ ?
Fin d'itération - Rétrospective



•   Note d'itération → humeur de l'équipe
•   Annonces du pilote du projet
•   Keep/drop/start/ ?
•   PDCA




• Exemple d'action a suivre:
    – Chaque développeur relit avec l'AMOA concernée par la US les
      exigences demandées avant de passer la US a « FAIT »
Fin de sprint - Livraison


• Par la livraison de chaque sprint, le mode agile doit
  permettre d'aller en production avant l'ouverture de
  service.
   – Éprouver les processus de mise en production
   – Ouverture de flux
• Difficulté majeure :
   – L'intégration, la recette, la préprod et la prod sont faites par trois
     équipes différentes
     → Nécessité d'avoir des processus clairs et d'automatiser le plus
     de traitements possible
   – Pb : pour résoudre de nombreux problemes lors des mises en
     préprod/prod la MOE devrait avoir beaucoup de droits sur un grand
     nombre de machines → Droits impossibles a obtenir et énorme
     perte de temps lors des mises en production
Ma conclusion sur l'utilisation de l'agile

• Les avantages
   – Dév au fil de l'eau → Idées de la MOA encore fraiches
   – Peu de gros bugs livrés
   – La majorité des développeurs connaissent bien plus que ce qu'ils
     ont développé
   – Avancement régulier et visible du projet
   – Communication facilitée. Problemes rapidement remontés au plus
     haut niveau de hiérarchie
   – Conception émergente – on fait au plus simple


• Les inconvénients
   –   Environnements de développement complexe
   –   Conception émergente – refactoring parfois dangereux
   –   Rythme différent de celui de beaucoup de partenaires
   –   Difficultés a amener de l'agilité au dela du plateau de dév.

Mais conteúdo relacionado

Mais procurados

Introduction à la Gestion de projets
Introduction à la Gestion de projetsIntroduction à la Gestion de projets
Introduction à la Gestion de projetsClément Dussarps
 
Jeu communication projet 2019
Jeu communication projet  2019Jeu communication projet  2019
Jeu communication projet 2019CIPE
 
REX Amélioration des processus, organisation et outils
REX Amélioration des processus, organisation et outilsREX Amélioration des processus, organisation et outils
REX Amélioration des processus, organisation et outilsCOMPETENSIS
 
Les compétences professionnelles de l'enseignant
Les compétences professionnelles de l'enseignantLes compétences professionnelles de l'enseignant
Les compétences professionnelles de l'enseignantFaycel BADRI
 
Procedure suivi de la satisfaction des clients
Procedure suivi de la satisfaction des clientsProcedure suivi de la satisfaction des clients
Procedure suivi de la satisfaction des clientsAbderrazak Memmiche
 
Formation diagramme d'ishikawa
Formation diagramme d'ishikawaFormation diagramme d'ishikawa
Formation diagramme d'ishikawaAziza Wahmani
 
Conduite et animation des reunions
Conduite et animation des reunionsConduite et animation des reunions
Conduite et animation des reunionsimpactjeunes
 
Les 4 principales méthodes pédagogiques en formation
Les 4 principales méthodes pédagogiques en formation Les 4 principales méthodes pédagogiques en formation
Les 4 principales méthodes pédagogiques en formation Sophie TURPAUD-AMALVY
 
Cours et TP Ms Project
Cours et TP Ms ProjectCours et TP Ms Project
Cours et TP Ms Projecthindif
 

Mais procurados (20)

04 préparer le pmp management de la qualité
04 préparer le pmp   management de la qualité04 préparer le pmp   management de la qualité
04 préparer le pmp management de la qualité
 
La Conduite de projet
La Conduite de projetLa Conduite de projet
La Conduite de projet
 
Faciliter Une Réunion
Faciliter Une RéunionFaciliter Une Réunion
Faciliter Une Réunion
 
Introduction à la Gestion de projets
Introduction à la Gestion de projetsIntroduction à la Gestion de projets
Introduction à la Gestion de projets
 
Jeu communication projet 2019
Jeu communication projet  2019Jeu communication projet  2019
Jeu communication projet 2019
 
REX Amélioration des processus, organisation et outils
REX Amélioration des processus, organisation et outilsREX Amélioration des processus, organisation et outils
REX Amélioration des processus, organisation et outils
 
Gestion de projet
Gestion de projetGestion de projet
Gestion de projet
 
06 préparer le pmp management de de la communication
06 préparer le pmp   management de de la communication06 préparer le pmp   management de de la communication
06 préparer le pmp management de de la communication
 
Les compétences professionnelles de l'enseignant
Les compétences professionnelles de l'enseignantLes compétences professionnelles de l'enseignant
Les compétences professionnelles de l'enseignant
 
Procedure suivi de la satisfaction des clients
Procedure suivi de la satisfaction des clientsProcedure suivi de la satisfaction des clients
Procedure suivi de la satisfaction des clients
 
La planification du projet
La planification du projetLa planification du projet
La planification du projet
 
Formation diagramme d'ishikawa
Formation diagramme d'ishikawaFormation diagramme d'ishikawa
Formation diagramme d'ishikawa
 
Gestion de projet
Gestion de projetGestion de projet
Gestion de projet
 
Conduite et animation des reunions
Conduite et animation des reunionsConduite et animation des reunions
Conduite et animation des reunions
 
Les 4 principales méthodes pédagogiques en formation
Les 4 principales méthodes pédagogiques en formation Les 4 principales méthodes pédagogiques en formation
Les 4 principales méthodes pédagogiques en formation
 
Scrum Guide
Scrum GuideScrum Guide
Scrum Guide
 
Initiation à la gestion de projet
Initiation à la gestion de projetInitiation à la gestion de projet
Initiation à la gestion de projet
 
METHODES DE PERT ET GANT
METHODES DE PERT ET GANT METHODES DE PERT ET GANT
METHODES DE PERT ET GANT
 
La Gestion de projet
La Gestion de projetLa Gestion de projet
La Gestion de projet
 
Cours et TP Ms Project
Cours et TP Ms ProjectCours et TP Ms Project
Cours et TP Ms Project
 

Destaque

MMA SMoX presentation slides by Rex Briggs
MMA SMoX presentation slides by Rex BriggsMMA SMoX presentation slides by Rex Briggs
MMA SMoX presentation slides by Rex BriggsChristie Crockett
 
Seminaire Portail Open Source
Seminaire Portail Open SourceSeminaire Portail Open Source
Seminaire Portail Open SourceIppon
 
Présentation Rex GWT 2.0
Présentation Rex GWT 2.0Présentation Rex GWT 2.0
Présentation Rex GWT 2.0Ippon
 
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et MobileNouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et MobileIppon
 
Scrum et forfait
Scrum et forfaitScrum et forfait
Scrum et forfaitIppon
 
Agile Tour Nantes 2011 - Bertrand pinel les projets au forfait - scrum but....
Agile Tour Nantes 2011 - Bertrand pinel   les projets au forfait - scrum but....Agile Tour Nantes 2011 - Bertrand pinel   les projets au forfait - scrum but....
Agile Tour Nantes 2011 - Bertrand pinel les projets au forfait - scrum but....Association Agile Nantes
 
Hibernate vs le_cloud_computing
Hibernate vs le_cloud_computingHibernate vs le_cloud_computing
Hibernate vs le_cloud_computingIppon
 
CDI par la pratique
CDI par la pratiqueCDI par la pratique
CDI par la pratiqueIppon
 
Atelier TDD (Test Driven Development)
Atelier TDD (Test Driven Development)Atelier TDD (Test Driven Development)
Atelier TDD (Test Driven Development)Ippon
 
JPA avec Cassandra, grâce à Achilles
JPA avec Cassandra, grâce à AchillesJPA avec Cassandra, grâce à Achilles
JPA avec Cassandra, grâce à AchillesIppon
 
Offre 2015 numeriq_ippon
Offre 2015 numeriq_ipponOffre 2015 numeriq_ippon
Offre 2015 numeriq_ipponIppon
 
Présentation Ippon DGA Liferay Symposium 2011
Présentation Ippon DGA Liferay Symposium 2011Présentation Ippon DGA Liferay Symposium 2011
Présentation Ippon DGA Liferay Symposium 2011Ippon
 
Stateful is beautiful
Stateful is beautifulStateful is beautiful
Stateful is beautifulIppon
 
Web API & Cache, the HTTP way - Ippevent 10 Juin 2014
Web API & Cache, the HTTP way - Ippevent 10 Juin 2014Web API & Cache, the HTTP way - Ippevent 10 Juin 2014
Web API & Cache, the HTTP way - Ippevent 10 Juin 2014Ippon
 
Formation Usine Logicielle gratuite par Ippon 2014
Formation Usine Logicielle gratuite par Ippon 2014Formation Usine Logicielle gratuite par Ippon 2014
Formation Usine Logicielle gratuite par Ippon 2014Ippon
 
Présentation du retour d'expérience sur Git
Présentation du retour d'expérience sur GitPrésentation du retour d'expérience sur Git
Présentation du retour d'expérience sur GitIppon
 
Formation html5 CSS3 offerte par ippon 2014
Formation html5 CSS3 offerte par ippon 2014Formation html5 CSS3 offerte par ippon 2014
Formation html5 CSS3 offerte par ippon 2014Ippon
 
Mule ESB Summit 2010 avec Ippon
Mule ESB Summit 2010 avec IpponMule ESB Summit 2010 avec Ippon
Mule ESB Summit 2010 avec IpponIppon
 
Formation Gratuite Total Tests par les experts Java Ippon
Formation Gratuite Total Tests par les experts Java Ippon Formation Gratuite Total Tests par les experts Java Ippon
Formation Gratuite Total Tests par les experts Java Ippon Ippon
 
Formation JPA Avancé / Hibernate gratuite par Ippon 2014
Formation JPA Avancé / Hibernate gratuite par Ippon 2014Formation JPA Avancé / Hibernate gratuite par Ippon 2014
Formation JPA Avancé / Hibernate gratuite par Ippon 2014Ippon
 

Destaque (20)

MMA SMoX presentation slides by Rex Briggs
MMA SMoX presentation slides by Rex BriggsMMA SMoX presentation slides by Rex Briggs
MMA SMoX presentation slides by Rex Briggs
 
Seminaire Portail Open Source
Seminaire Portail Open SourceSeminaire Portail Open Source
Seminaire Portail Open Source
 
Présentation Rex GWT 2.0
Présentation Rex GWT 2.0Présentation Rex GWT 2.0
Présentation Rex GWT 2.0
 
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et MobileNouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
 
Scrum et forfait
Scrum et forfaitScrum et forfait
Scrum et forfait
 
Agile Tour Nantes 2011 - Bertrand pinel les projets au forfait - scrum but....
Agile Tour Nantes 2011 - Bertrand pinel   les projets au forfait - scrum but....Agile Tour Nantes 2011 - Bertrand pinel   les projets au forfait - scrum but....
Agile Tour Nantes 2011 - Bertrand pinel les projets au forfait - scrum but....
 
Hibernate vs le_cloud_computing
Hibernate vs le_cloud_computingHibernate vs le_cloud_computing
Hibernate vs le_cloud_computing
 
CDI par la pratique
CDI par la pratiqueCDI par la pratique
CDI par la pratique
 
Atelier TDD (Test Driven Development)
Atelier TDD (Test Driven Development)Atelier TDD (Test Driven Development)
Atelier TDD (Test Driven Development)
 
JPA avec Cassandra, grâce à Achilles
JPA avec Cassandra, grâce à AchillesJPA avec Cassandra, grâce à Achilles
JPA avec Cassandra, grâce à Achilles
 
Offre 2015 numeriq_ippon
Offre 2015 numeriq_ipponOffre 2015 numeriq_ippon
Offre 2015 numeriq_ippon
 
Présentation Ippon DGA Liferay Symposium 2011
Présentation Ippon DGA Liferay Symposium 2011Présentation Ippon DGA Liferay Symposium 2011
Présentation Ippon DGA Liferay Symposium 2011
 
Stateful is beautiful
Stateful is beautifulStateful is beautiful
Stateful is beautiful
 
Web API & Cache, the HTTP way - Ippevent 10 Juin 2014
Web API & Cache, the HTTP way - Ippevent 10 Juin 2014Web API & Cache, the HTTP way - Ippevent 10 Juin 2014
Web API & Cache, the HTTP way - Ippevent 10 Juin 2014
 
Formation Usine Logicielle gratuite par Ippon 2014
Formation Usine Logicielle gratuite par Ippon 2014Formation Usine Logicielle gratuite par Ippon 2014
Formation Usine Logicielle gratuite par Ippon 2014
 
Présentation du retour d'expérience sur Git
Présentation du retour d'expérience sur GitPrésentation du retour d'expérience sur Git
Présentation du retour d'expérience sur Git
 
Formation html5 CSS3 offerte par ippon 2014
Formation html5 CSS3 offerte par ippon 2014Formation html5 CSS3 offerte par ippon 2014
Formation html5 CSS3 offerte par ippon 2014
 
Mule ESB Summit 2010 avec Ippon
Mule ESB Summit 2010 avec IpponMule ESB Summit 2010 avec Ippon
Mule ESB Summit 2010 avec Ippon
 
Formation Gratuite Total Tests par les experts Java Ippon
Formation Gratuite Total Tests par les experts Java Ippon Formation Gratuite Total Tests par les experts Java Ippon
Formation Gratuite Total Tests par les experts Java Ippon
 
Formation JPA Avancé / Hibernate gratuite par Ippon 2014
Formation JPA Avancé / Hibernate gratuite par Ippon 2014Formation JPA Avancé / Hibernate gratuite par Ippon 2014
Formation JPA Avancé / Hibernate gratuite par Ippon 2014
 

Semelhante a Presentation Rex Methodes Agiles

[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement MicrosoftChristophe HERAL
 
20110519 cara tests_agiles_grenoble_all
20110519 cara tests_agiles_grenoble_all20110519 cara tests_agiles_grenoble_all
20110519 cara tests_agiles_grenoble_allCARA_Lyon
 
cours-gratuit.com--id-12146.ppt
cours-gratuit.com--id-12146.pptcours-gratuit.com--id-12146.ppt
cours-gratuit.com--id-12146.pptFatiMa243348
 
Performance ug#1
Performance ug#1Performance ug#1
Performance ug#1Marc Bojoly
 
présentation sur la gestion des projets.pdf
présentation sur la gestion des projets.pdfprésentation sur la gestion des projets.pdf
présentation sur la gestion des projets.pdfghiz-
 
L’informatique efficience
L’informatique efficienceL’informatique efficience
L’informatique efficienceMichel Bruchet
 
Automatisation des tests - objectifs et concepts - partie 2
Automatisation des tests  - objectifs et concepts - partie 2Automatisation des tests  - objectifs et concepts - partie 2
Automatisation des tests - objectifs et concepts - partie 2Christophe Rochefolle
 
La revue de code : agile, lean, indispensable !
La revue de code : agile, lean, indispensable !La revue de code : agile, lean, indispensable !
La revue de code : agile, lean, indispensable !Lucian Precup
 
Université de la performance
Université de la performanceUniversité de la performance
Université de la performancepkernevez
 
De la livraison continue dans mon organisation?
De la livraison continue dans mon organisation?De la livraison continue dans mon organisation?
De la livraison continue dans mon organisation?Goood!
 

Semelhante a Presentation Rex Methodes Agiles (20)

[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
 
REX Scrum mature
REX Scrum matureREX Scrum mature
REX Scrum mature
 
Methodologie projet
Methodologie projet Methodologie projet
Methodologie projet
 
20110519 cara tests_agiles_grenoble_all
20110519 cara tests_agiles_grenoble_all20110519 cara tests_agiles_grenoble_all
20110519 cara tests_agiles_grenoble_all
 
cours-gratuit.com--id-12146.ppt
cours-gratuit.com--id-12146.pptcours-gratuit.com--id-12146.ppt
cours-gratuit.com--id-12146.ppt
 
Cerberus Testing
Cerberus TestingCerberus Testing
Cerberus Testing
 
Performance ug#1
Performance ug#1Performance ug#1
Performance ug#1
 
présentation sur la gestion des projets.pdf
présentation sur la gestion des projets.pdfprésentation sur la gestion des projets.pdf
présentation sur la gestion des projets.pdf
 
L’informatique efficience
L’informatique efficienceL’informatique efficience
L’informatique efficience
 
Automatisation des tests - objectifs et concepts - partie 2
Automatisation des tests  - objectifs et concepts - partie 2Automatisation des tests  - objectifs et concepts - partie 2
Automatisation des tests - objectifs et concepts - partie 2
 
Lunch learn 5 sep2013
Lunch learn 5 sep2013Lunch learn 5 sep2013
Lunch learn 5 sep2013
 
Forum PHP 2014 day 1
Forum PHP 2014 day 1Forum PHP 2014 day 1
Forum PHP 2014 day 1
 
La revue de code : agile, lean, indispensable !
La revue de code : agile, lean, indispensable !La revue de code : agile, lean, indispensable !
La revue de code : agile, lean, indispensable !
 
Valider par des tests - Blend
Valider par des tests - BlendValider par des tests - Blend
Valider par des tests - Blend
 
Maven
MavenMaven
Maven
 
Université de la performance
Université de la performanceUniversité de la performance
Université de la performance
 
Dev opsday case study
Dev opsday   case studyDev opsday   case study
Dev opsday case study
 
1.pdf
1.pdf1.pdf
1.pdf
 
De la livraison continue dans mon organisation?
De la livraison continue dans mon organisation?De la livraison continue dans mon organisation?
De la livraison continue dans mon organisation?
 
L'Agilité chez GEE Montréal
L'Agilité chez GEE MontréalL'Agilité chez GEE Montréal
L'Agilité chez GEE Montréal
 

Mais de Ippon

Quoi de neuf pour JHipster en 2016
Quoi de neuf pour JHipster en 2016Quoi de neuf pour JHipster en 2016
Quoi de neuf pour JHipster en 2016Ippon
 
Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...Ippon
 
Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...
Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...
Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...Ippon
 
Multi criteria queries on a cassandra application
Multi criteria queries on a cassandra applicationMulti criteria queries on a cassandra application
Multi criteria queries on a cassandra applicationIppon
 
Agilité, n’oublions pas les valeurs
Agilité, n’oublions pas les valeursAgilité, n’oublions pas les valeurs
Agilité, n’oublions pas les valeursIppon
 
Formation Spring Avancé gratuite par Ippon 2014
Formation Spring Avancé gratuite par Ippon 2014Formation Spring Avancé gratuite par Ippon 2014
Formation Spring Avancé gratuite par Ippon 2014Ippon
 
Formation GIT gratuite par ippon 2014
Formation GIT gratuite par ippon 2014Formation GIT gratuite par ippon 2014
Formation GIT gratuite par ippon 2014Ippon
 
One Web (API?) – Alexandre Bertails - Ippevent 10 juin 2014
One Web (API?) – Alexandre Bertails - Ippevent 10 juin 2014One Web (API?) – Alexandre Bertails - Ippevent 10 juin 2014
One Web (API?) – Alexandre Bertails - Ippevent 10 juin 2014Ippon
 
Realtime Web avec Akka, Kafka, Spark et Mesos - Devoxx Paris 2014
Realtime Web avec Akka, Kafka, Spark et Mesos - Devoxx Paris 2014Realtime Web avec Akka, Kafka, Spark et Mesos - Devoxx Paris 2014
Realtime Web avec Akka, Kafka, Spark et Mesos - Devoxx Paris 2014Ippon
 
Cassandra Java Driver : vers Cassandra 1.2 et au-delà
Cassandra Java Driver : vers Cassandra 1.2 et au-delàCassandra Java Driver : vers Cassandra 1.2 et au-delà
Cassandra Java Driver : vers Cassandra 1.2 et au-delàIppon
 

Mais de Ippon (10)

Quoi de neuf pour JHipster en 2016
Quoi de neuf pour JHipster en 2016Quoi de neuf pour JHipster en 2016
Quoi de neuf pour JHipster en 2016
 
Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...
 
Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...
Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...
Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...
 
Multi criteria queries on a cassandra application
Multi criteria queries on a cassandra applicationMulti criteria queries on a cassandra application
Multi criteria queries on a cassandra application
 
Agilité, n’oublions pas les valeurs
Agilité, n’oublions pas les valeursAgilité, n’oublions pas les valeurs
Agilité, n’oublions pas les valeurs
 
Formation Spring Avancé gratuite par Ippon 2014
Formation Spring Avancé gratuite par Ippon 2014Formation Spring Avancé gratuite par Ippon 2014
Formation Spring Avancé gratuite par Ippon 2014
 
Formation GIT gratuite par ippon 2014
Formation GIT gratuite par ippon 2014Formation GIT gratuite par ippon 2014
Formation GIT gratuite par ippon 2014
 
One Web (API?) – Alexandre Bertails - Ippevent 10 juin 2014
One Web (API?) – Alexandre Bertails - Ippevent 10 juin 2014One Web (API?) – Alexandre Bertails - Ippevent 10 juin 2014
One Web (API?) – Alexandre Bertails - Ippevent 10 juin 2014
 
Realtime Web avec Akka, Kafka, Spark et Mesos - Devoxx Paris 2014
Realtime Web avec Akka, Kafka, Spark et Mesos - Devoxx Paris 2014Realtime Web avec Akka, Kafka, Spark et Mesos - Devoxx Paris 2014
Realtime Web avec Akka, Kafka, Spark et Mesos - Devoxx Paris 2014
 
Cassandra Java Driver : vers Cassandra 1.2 et au-delà
Cassandra Java Driver : vers Cassandra 1.2 et au-delàCassandra Java Driver : vers Cassandra 1.2 et au-delà
Cassandra Java Driver : vers Cassandra 1.2 et au-delà
 

Presentation Rex Methodes Agiles

  • 1. Open-REX – Utilisation des méthodes agiles 25/03/2010 Clément BERTHELOT
  • 2. Licence d'utilisation • Cette présentation vous est fournie sous licence Creative Commons Attribution Share Alike • Vous etes libres : – De reproduire, distribuer et communiquer cette création au public • Selon les conditions suivantes : – Paternité. Vous devez citer le nom des auteurs originaux mais pas d'une maniere qui suggérerait qu'ils vous soutiennent ou approuvent votre utilisation de l'œuvre. – A chaque réutilisation ou distribution de cette création, vous devez faire apparaitre clairement au public les conditions contractuelles de sa mise a disposition sous licence identique Creative Commons Share Alike. – Chacune de ces conditions peut etre levée si vous obtenez l'autorisation du titulaire des droits sur cette œuvre. – Rien dans ce contrat ne diminue ou ne restreint le droit moral de l'auteur ou des auteurs.
  • 3. Open-REX – Utilisation des méthodes agiles • Contexte du projet – Présentation rapide du projet – Organisation de l'équipe projet – Quelques pré-requis pour faire de l'agile • Focus sur une itération en mode agile – Principales phases d'une itération – Organisation de l'équipe MOE – Les outils • Retour sur l'utilisation des méthodes agiles – Au fil des itérations – Les phases de livraison
  • 4. Présentation du projet • Portail web d'un grand opérateur d'internet et des annuaires – Gestion des produits – Gestion de leurs comptes – Suivi des audiences de leurs produits – Informer les professionnels de l'entreprise • Application tres évolutive – Mise en production tous les 3 mois – Besoin tres changeant; nécessité de reprioriser fréquemment les tâches a faire – De nombreux partenaires • Organisation de l'équipe
  • 6. Quelques pré-requis • Une équipe motivée et acceptant de changer les habitudes • Des processus clairs, établis par tous et connus de tous • Une MOE et une AMOA tres rapprochées • Une plateforme d'intégration continue fonctionnelle
  • 7. Les phases du mode agile • Quelques définitions de base : – Chaque livraison en recette est un sprint – Un sprint est une succession de n itérations – Une itération débute par une présentation de User Stories et se termine par une rétrospective de l'itération
  • 8. Les phases du mode agile • Schéma du cycle d'une itération
  • 9. Les phases du mode agile • Quelle durée pour une itération ? • Plus c'est court, plus c'est bon – Vrai au début – 1 semaine pendant la phase d'initiation – Permet de répéter rapidement les différents rituels de l'agile • Ensuite, nous sommes passés sur 15 jours
  • 10. La présentation des User Stories • Ensemble limité d'exigences qui répondent a un besoin spécifique – En tant que « utilisateur », je veux « action » pour « resultat » • Chaque US a une valeur métier MOA et une complexité estimée (estimation grosse maille) par le TechLead et le Bureau d'Etude • Toute US est livrée avec un lot de tests automatisés souhaités par la MOA
  • 11. Evaluation de la complexité • Pas d'évaluation en jours/homme (trop dépendant de la personne qui va développer) • Deux nouveaux indicateurs – La complexité • 0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ? – La vélocité • Nombre de points réalisés pendant une itération • Principe : une tâche a la meme complexité pendant toute la durée du projet. C'est la vélocité qui varie • La complexité est évaluée par toute la MOE
  • 12. Choix des US par la MOE • C'est la MOE qui « choisit » le nombre de US qu'elle peut traiter (en respectant la priorisation MOA) • La MOE s'engage a terminer les US choisies – Définir ensemble MOA/MOE ce que « terminé » signifie – Ex : commité, tests unitaires OK, couverture de test OK, tests fonctionnels automatisés OK, Environnement de démonstration bouchonné, ... • Prise en compte des tâches techniques supplémentaires – Ex : Portlets d'administration, Mise en place d'une PIC, amélioration de performances, ... • Répartition des tâches dans l'équipe – Faire tourner les sujets, binomage, ...
  • 13. Agile au quotidien – Organisation plateau • Le backlog indexe toutes les US • Les US sont documentées dans un wiki, accompagnés des tests de recette • Toute évolution est faite sous forme de US • Tout bug est répertorié dans un bugtracker • Les tableaux post-it – Road map – Tableau de suivi – Planning de livraison – Zoom suivi MOE • Question : de quels tableaux se sert-on vraiment ?
  • 14. Agile au quotidien – Organisation plateau • De quels tableaux se sert-on vraiment ? – Road map [AMOA] – Tableau de suivi [personne] – Planning de livraison [tout le monde] – Zoom suivi MOE [MOE] → Presque tous • Quels avantages – Une vision du projet en grand format partagée par tous – Facile de gérer le travail a faire de l'équipe sur une itération
  • 15. Agile au quotidien – Organisation MOE • Ensemble des tâches affichées sur le tableau de suivi – Zoom détaillé sur les tâches MOE proche de l'équipe • Stand-up meeting tous les matins – Uniquement MOE + coach AMOA si une annonce a faire – Chaque développeur indique ce qu'il a fait hier, ce qu'il prévoit de faire aujourd'hui, s'il rencontre des problemes – Proposition de binomage (Diffusion de la connaissance, meilleure ambiance) – Tres bon suivi au quotidien pour le TechLead et le chef de projet
  • 16. Agile au quotidien – Les outils • La météo du projet avec Hudson.
  • 17. Agile au quotidien – Les outils • Les Tests Unitaires – Implémentation fake de tous les services extérieurs et des services Liferay « service buildé » – Services bouchonnés au plus proche de la réalité • Bases de données de test • Fichiers xml ou html pour les requetes http • Utilisation de yaml pour les webservices
  • 18. Agile au quotidien – Les outils - yaml
  • 19. Agile au quotidien – Les outils - yaml • Classe de mapping DTOYml
  • 20. Agile au quotidien – Les outils - yaml • Exemple de bouchon – Méthode remplaçante du service réel
  • 21. Agile au quotidien – Les outils - yaml • Exemple de bouchon – Méthode de lecture du fichier yaml
  • 22. Agile au quotidien – Les outils - yaml • Exemple de bouchon – Mapping vers l'objet reel
  • 23. Agile au quotidien – Les outils - yaml • Exemple de classe Manager
  • 24. Agile au quotidien – Les outils • Les Tests Unitaires – Implémentation fake de tout les services extérieurs et des services Liferay « service buildés » – Services bouchonnés au plus proche de la réalité • Bases de données de test • Fichiers xml ou html pour les requete http • Utilisation de yaml pour les webservices • Les bouchons ont une double utilité – Bouchons pour les tests unitaires – Bouchons pour l'environnement de démo (données AMOA) • Possibilité de switcher entre environnements bouchon ou réel par fichier properties. Utilisation de Managers
  • 25. Agile au quotidien – Les outils • Les tests fonctionnels automatisés avec GreenPepper – Tests écrits en collaboration MOE/AMOA – Fixtures GP rédigées dans un wiki et transformées en java – Tests principalement selenium [Projet d'agrégation de données – l'IHM permet de valider un grand nombre de regles fonctionnelles] • Attention : – On ne peut pas tout tester, mais ça réduit la charge de l'équipe qui s'occupe de la recette – Question a se poser avant l'écriture d'un test : • La répétition manuelle de ce test en recette sera-t-elle toujours plus rapide que le temps passé a l'automatiser ? • Cette fonctionnalité ne sera-t-elle pas déja testée autrement ? • Fonctionnement basique de GP – Ecriture des fixtures grâce a quelques mots clés
  • 26. Agile au quotidien – Les outils - GP • Do with : permet de créer une fixture = un test java • Check : Vérifie une ou plusieurs valeur • List of : permet au check de tester une liste de valeur
  • 27. Agile au quotidien – Les outils - GP • Do with : permet de créer une fixture = un test java • Check : Vérifie une ou plusieurs valeurs • Set of : permet au check de tester un ensemble de valeurs
  • 28. Agile au quotidien – Les outils • Les tests fonctionnels automatisés avec GreenPepper – Tests écrits en collaboration MOE/AMOA – Fixtures GP rédigées dans un wiki et transformées en java – Tests principalement selenium • Fonctionnement basique de GP – Ecriture des fixtures grâce a quelques mots clés – Enrichissement par notre propre grammaire complémentaire • Plus simple pour l'AMOA
  • 29. Agile au quotidien – Les outils - GP • Grammaire specifique au projet
  • 30. Agile au quotidien – Les outils • Les tests fonctionnels automatisés avec GreenPepper – Tests écrits en collaboration MOE/AMOA – Fixtures GP rédigées dans un wiki et transformées en java – Tests principalement selenium • Fonctionnement basique de GP – Ecriture des fixtures grâce a quelques mots clés – Enrichissement par notre propre grammaire complémentaire • Plus simple pour l'AMOA – injection des données utiles et exécution dans un environnement fermé.
  • 31. Fin d'itération - Démo • Préparation de la démo – Vérification sur la PIC des exigences demandées avec l'AMOA concernée – Déploiement sur une machine spécifique a partir de la PIC – La machine de démo servira de plateforme de test, bouchonnée avec les données de la MOA pendant l'itération suivante – Présentation démo dans la MOE pour partage de connaissances • Démo + Ptit dej = tout le plateau réuni – US pour validation / US pour background avancement – Validation des exigences MOA – Calcul du niveau de complexité développé sur l'itération – Report de la complexité dans le burndown chart
  • 33. Fin d'itération - Rétrospective • Note d'itération → humeur de l'équipe • Annonces du pilote du projet • Keep/drop/start/ ?
  • 34. Fin d'itération - Rétrospective • Note d'itération → humeur de l'équipe • Annonces du pilote du projet • Keep/drop/start/ ? • PDCA • Exemple d'action a suivre: – Chaque développeur relit avec l'AMOA concernée par la US les exigences demandées avant de passer la US a « FAIT »
  • 35. Fin de sprint - Livraison • Par la livraison de chaque sprint, le mode agile doit permettre d'aller en production avant l'ouverture de service. – Éprouver les processus de mise en production – Ouverture de flux • Difficulté majeure : – L'intégration, la recette, la préprod et la prod sont faites par trois équipes différentes → Nécessité d'avoir des processus clairs et d'automatiser le plus de traitements possible – Pb : pour résoudre de nombreux problemes lors des mises en préprod/prod la MOE devrait avoir beaucoup de droits sur un grand nombre de machines → Droits impossibles a obtenir et énorme perte de temps lors des mises en production
  • 36. Ma conclusion sur l'utilisation de l'agile • Les avantages – Dév au fil de l'eau → Idées de la MOA encore fraiches – Peu de gros bugs livrés – La majorité des développeurs connaissent bien plus que ce qu'ils ont développé – Avancement régulier et visible du projet – Communication facilitée. Problemes rapidement remontés au plus haut niveau de hiérarchie – Conception émergente – on fait au plus simple • Les inconvénients – Environnements de développement complexe – Conception émergente – refactoring parfois dangereux – Rythme différent de celui de beaucoup de partenaires – Difficultés a amener de l'agilité au dela du plateau de dév.