Category : Témoignages

Méthodologies Agiles à la chaire de gestion de projet de l’UQAM

Quelques contacts ont remarqué que mon profil LinkedIn indique que je suis chargé de cours. Effectivement, je suis chargé de cours à la Chaire de gestion de projet de l’UQAM. Je donne avec Shayne Mitchell, sur invitation de Claude Besner, le cours « Méthodologie Agile en gestion de projet ». Nous avons donné 8 cours sur 15 à ce jour.

Continue Reading

Achievements : seulement pour les jeux ou pour l’Agilité aussi?

J’ai récemment découvert un ajout intéressant à Visual Studio : les achievements (réalisations). Il s’agit d’un plugiciel que l’on peut installer dans notre environnement de développement et qui permet d’obtenir des médailles (ou badges) que l’on appelle achievements.

Un jeu d’enfants, pas vraiment

Le concept est inspiré des plateformes de jeu. Dans la plupart des jeux modernes, il existe ce concept d’achievement que l’on peut débloquer en réalisant certains exploits lors de nos quêtes. Par exemple, réussir à ramasser tous les jetons d’un niveau ou réussir sans se servir de pouvoir spécial.

Continue Reading

Vous avez dit DDD, Demo Driven Design?

Être agile

Pour moi être agile c’est savoir s’adapter, éviter les mauvais coups. Un boxeur agile ne frappera pas nécessairement plus fort ou précis mais il recevra moins de coup. Un joueur de hockey agile ne comptera pas nécessairement plus de but mais il pourra se rendre plus souvent dans la zone pour le faire.

Un développeur agile n’est pas vraiment plus rapide qu’un autre, il sait juste éviter les récifs comme s’il descendait les rapides en kayak. Le développeur agile voit venir les coups et sait les éviter. Il sait même se mettre dans une situation où il sera en meilleure posture pour les éviter.

S’adapter c’est développer ses forces pour contrer les problèmes rencontrés. S’adapter c’est aussi laisser de côté ce qui ne fonctionne pas et utiliser ce qui fonctionne. La nature a évolué depuis des millions d’années comme ça. Il faut arrêter de faire ce qui ne fonctionne pas pour ne pas se faire déclasser pas les autres.

Continue Reading

Orange Online Multimedia

Orange a lancé le 15 octobre 2007 un nouveau projet de site Internet avec l’ambition de le mettre en ligne avant la fin de l’année… avec, bien sûr, un ensemble de fonctionnalités assez ambitieux. Grâce à Scrum, le client a pu se concentrer sur les éléments prioritaires et modifier ses choix à mesure que le logiciel se construisait. L’objectif de mise en ligne a été tenu avec un passage en production le 13 décembre, après 5 sprints.

En tant que Scrum Master, je souhaitais faire vivre au directeur de produit (Product Owner) l’expérience de l’émergence des fonctionnalités au cours du projet. C’est pourquoi nous avons ‘oublié’ le travail considérable fourni en avance par le client sur l’analyse de son besoin et la conception de son futur service. Cette démarche n’a pas été bien accueillie au début mais lorsqu’il a fallu définir sur quoi l’équipe de développement allait commencer à travailler, il a bien fallu considérer que les 100 pages d’analyse du besoin n’avaient pas toutes la même priorité. Scrum, et de manière plus générale la démarche Agile, était nouvelle pour la plupart des personnes impliquées dans le projet côté client. Pour cela, il a fallu expliquer que l’engagement de l’équipe de développement se faisait sprint par sprint et qu’elle ne s’engagerait pas lors du démarrage du projet à couvrir l’ensemble des fonctionnalités souhaitées en production à la mi-décembre. Le directeur de produit n’en était pas à son premier projet Scrum, et il a su rassurer les inquiets… où assumer seul le risque fonctionnel, selon le point de vue.

Nous sommes alors partis sur un rythme de sprints de 2 semaines pour permettre au directeur de produit de modifier la direction suivie plusieurs fois avant son échéance marketing de mise en production. Un sprint de deux semaines est, en fait, une bonne durée pour l’équipe de développement qui parvient assez bien à déterminer les items du carnet du produit (product backlog) qu’elle peut convertir en fonctionnalités pendant le sprint. Plus long, cela devient plus difficile car le potentiel d’incertitudes augmente. Plus court, l’ensemble des items choisis ne permettait pas de livrer un ensemble cohérent de fonctionnalités ni de définir un but à l’itération. De plus, cette capacité d’appréhender sur deux semaines nous a permis de démarrer le premier sprint sans connaître la vélocité de l’équipe. Nous avons par la suite constaté une vélocité moyenne d’environ 50 points, ce qui permettait de faire tinter la sonnette d’alarme lorsque nous étions trop loin de cette valeur lors d’une rencontre de planification.

Vous avez sans doute songé qu’entre le 22 octobre et le 13 décembre, il n’y a pas la place pour 5 sprints de 2 semaines. Effectivement! Nous avons terminé anormalement le sprint 3 et dédié le sprint 5 à la mise en production en ramenant sa taille à une seule semaine.

Côté outils, nous avons utilisé JIRA pour gérer notre carnet du produit et notre carnet du sprint. De plus, le plugiciel GreenHopper nous a permis de générer simplement notre graphique d’avancement du sprint. Cet outil offre une visualisation du travail en cours sous forme de tableau des tâches.

Mon meilleur souvenir (pour l’instant)? La personne du marketing qui, au début, avait voulu qu’on s’engage à livrer tout ce qui était dans leur dossier d’analyse. Cette personne découvrait les méthodes Agiles, et Scrum a fortiori. Lors de la revue du sprint 1, en ayant sous les yeux une application qui tourne, elle a eu une nouvelle idée à laquelle personne n’avait pensé et qui devenait évidente avec l’application sous les yeux. Je crois qu’elle a réalisé ce jour-là l’intérêt des méthodes Agiles et l’absurdité d’un monde dans lequel on essaie de tout prévoir à l’avance.

Le client est très satisfait de cette expérience. La preuve? On continue! Nous sommes repartis pour une série de sprints et une future livraison (livraison 2) du produit au début de l’année prochaine. À suivre…

réf: Orange Business Services – Online Multimedia