Mises à jour de la certification PMI-ACP :

PMI-ACPSM Mises à jour de Certification

Suite au retour d’informations reçu par le programme pilote et le Comité de pilotage PMI-ACP, le Conseil de Gouvernance de Certification a approuvé 3 mises à jour aux critères d’éligibilité pour la certification Agile Certified Practitioner de PMI (PMI-ACP). Cette certification reconnaît la connaissance d’un praticien des principes agiles, des pratiques, des outils et des techniques à travers les méthodologies agiles.

Le tableau suivant détaille les mises à jour qui sont entrées en vigueur le 26 mars 2012. Les candidats à la certification PMI-ACP devront respecter les critères d’éligibilité suivants :

Expérience Générale en Management de Projet
  • 2,000 Heures Travail Sur des Équipes Projet
  • Ces heures doivent être cumulées sur les 5 dernières années
  • Tout PMP® et PgMP® actif satisfera ce pré-requis
Expérience en Management de Projet Agile
  • 1,500 heures de travail sur équipes projet agiles ou avec méthodologies agiles
  • Ces heures viennent en supplément des 2,000 heures exigées dans « Expérience Générale en Management de Projet »
  • Ces heures doivent être cumulées sur les derniers 2 3 ans
Formation de Management de projet Agile Formation aux Pratiques Agiles
  • 21 Heures
  • Les heures doivent être gagnées dans des pratiques agiles de chef de projet
PMGS Formations en Management de Projet
Partenaire de DantotsuPM

Le changement « de l’expérience en management de projet » pour « expérience projet » clarifie le type d’expérience exigée. Alors que la description déclare que la certification n’est pas limitée aux chefs de projet, « l’expérience en management de projet » créait un peu de confusion en impliquant que nous exigions de l’expérience à manager des projets plutôt qu’à travailler sur des équipes projet.

La recherche PMI Pulse of the Profession indique que beaucoup d’organisations n’ont pas encore implémenté largement les pratiques agiles. Donc, pour encourager autant ‘d’adopteurs précoces’ que possible à atteindre l’expérience exigée, PMI met à jour le critère d’éligibilité aux 3 dernières années au lieu de 2.

Pour commencer à répondre à toute question et commentaire sur la mise à jour des critères d’éligibilité, nous avons préparé une Foire aux Questions en Anglais FAQ qui peut être trouvée sur la page PMI-ACP de PMI.ORG.

Si vous avez des questions supplémentaires, envoyez les s’il vous plaît par courrier électronique à Customercare@pmi.org.

Et voici un rappel en vidéo de ce qu’est Scrum en seulement 7 minutes.

aidez le PMBOK à devenir plus agile

Par Jesse Fewell, Fondateur, Communauté de Pratique PMI Agile – Comité de pilotage, Extension Logicielle au PMBOK Guide

Beaucoup de personnes demandent si le PMI lancera un Corpus des connaissances Agile PMI. La réponse est « Non ». D’une part, il serait presque impossible de se mettre d’accord sur ce qui y entrerait, particulièrement en considérant le désaccord sur ce qui constitue une déclaration officielle sur les structures Agile elles-mêmes (par exemple. Scrum, XP, Kanban). D’autre part, nombreux sont ceux qui pensent qu’un standard officiel Agile serait trop restrictif et irait même à l’encontre de l’intention « adaptative et itérative » du mouvement Agile. Cependant, un Corpus des connaissances Agile PMI n’est pas la seule façon d’avancer. À la place, il y a deux projets passionnants en voie de réalisation qui promettent une nouvelle avancée des techniques Agiles dans la communauté PMI.

D’abord, la 5ème Édition du Guide PMBOK est en revue publique. Pour la première fois dans l’histoire du PMBOK, les termes « le développement progressif itératif » et « Agile » sont explicitement définis.

Deuxièmement, PMI collabore avec l’IEEE pour développer « l’Extension Logicielle au Guide de PMBOK » (the « Software Extension to the PMBOK Guide »). Comme pour les extensions aux domaines de la Construction et des organisations Gouvernementales réalisées auparavant, l’Extension Logicielle fournira des outils et des techniques pour implémenter le Guide de PMBOK dans un environnement spécifique au développement logiciel. Étant donné qu’Agile est devenu une approche dominante pour les projets logiciels, ce document donnera des détails sur les approches « itératives-incrémentales » et « Agiles » brièvement mentionnées dans le nouveau Guide PMBOK. Aussi, vers le troisième trimestre de cette année, PMI vous donnera l’occasion de soumettre votre propre retour d’information sur ce document. Pour plus d’informations, vous pouvez lire un billet de blog de Mike Griffiths qui est membre de ce comité: http://leadinganswers.typepad.com/leading_answers/2011/09/the-new-software-extension-to-the-pmbok-guide.html

Bien qu’il n’y aura pas de Corpus des connaissances Agile PMI officiel dans un avenir proche, ces deux projets fourniront beaucoup de valeur à ceux qui les attendent avec impatience.

Et n’oubliez pas que Agile tient davantage de la philosophie que de la méthode et peut donc être appliquée à bien d’autres domaines que le développement logiciel. Dans cette vidéo, Joe Justice applique les principes Agile qu’il a embrassés dans le développement logiciel à la construction automobile et crée ainsi une nouvelle voiture à la fois performante et efficiente en un temps record.

le site de microsoft projet en français
Partenaire de DantotsuPM

jouer aux dominos, est-ce bien sérieux pour que des chefs de projets appréhendent l’Agilité ?

Et bien OUI !

Lors d’une session organisée par Eurogiciel, un groupe d’une vingtaine de chefs de projet et développeurs ont pu mieux appréhender les méthodes Agile grâce à une approche ludique et fort éducative. Cette session de travail de 3 heures commença par une introduction des concepts Agile par Yves Schneider et Fabien Massol.

Les principes de base de Scrum :

  • Adaptatif vs. déterministe
    • Temps limité : création d’un planning détaillé impossible dans le temps imparti
    • Nécessité de démarrer l’activité au plus vite pour montrer un résultat
    • Planification limitée à l’itération en cours
  • Souplesse et stabilité
    • Le Product Owner peut changer le Contenu comme il le souhaite sauf celui de l’itération en cours
    • L’équipe a un objectif figé pour l’itération en cours
  • Inspection et adaptation
    • Augmente les chances d’atteindre l’objectif dans un environnement empirique
    • Amélioration continue en cours de projet
  • Itératif et timeboxé
  • Équipe autogérée
  • Transparence

Un rappel des rôles clés:

1. Le Product Owner

  • les maitres du jeuDéfinit les fonctionnalités du produit
  • Est responsable de l’ordonnancement des fonctionnalités du produit
  • S’assure que l’équipe va travailler sur les fonctionnalités à plus forte valeur ajoutée
  • Maintient le Product Backlog

2. Le Scrum Master

  • Est garant des règles de fonctionnement
  • Protège l’équipe des interférences extérieures
  • Est garant de la stabilité du sprint en cours
  • Supprime les obstacles
  • Conduit les réunions
  • Est responsable du « temps »

3. La Scrum Team

  • S’engage sur une itération
  • Définit les tâches et les assignations
  • Est auto-organisée et autogérée
  • Implémente les fonctionnalités

Petit rappel des réunions et des objets :

scrum methodologie agilea. Sprint Planning Meeting

  • L’équipe clarifie les exigences des entrées prioritaires du Product Backlog
  • L’équipe sélectionne les entrées prioritaires du Product Backlog sur lesquelles elle s’engage pour le Sprint
  • L’équipe définit son Sprint Backlog (todo list du Sprint)

b. Sprint Review

  • L’équipe présente le résultat au Product Owner
  • Le Product Owner accepte ou pas le résultat

c. Sprint Rétrospective

  • Qu’est-ce qui s’est bien passé ?
  • Qu’est-ce qui peut être amélioré ?

d. Product backlog

  • Liste des fonctionnalités désirées
  • Ordonnancé
  • N’importe qui peut ajouter des entrées à tout instant
  • Chaque entrée doit avoir une valeur métier

e. Sprint backlog

  • Todo list du sprint
  • Créé par l’équipe
  • À partir des fonctionnalités définies comme les plus importantes par le Product Owner

f. Task board

  • Visible
  • Objectif du sprint
  • Contient les activités du sprint
  • Activités à réaliser, en cours, et faites
  • Points de blocage

Les dominos !

Puis commença la partie pratique pour les participants répartis en équipes de 5 personnes avec 1 Product Owner, 1 Scrum Master et 3 membres.

Sprint zéro

À partir de la priorisation par le product owner d’une série de figures à réaliser comportant des nombres variables de dominos et divers degrés de difficulté. Chaque figure (besoin du client) rapportera un certain nombre de points à l’équipe fonction de sa valeur pour le client. Le Scrum Master aida les membres de l’équipe à comprendre le Product Backlog avec le Product Owner. Puis vint la détermination de l’objectif collectif que l’équipe allait décider de se donner pour un premier sprint. Les membres de l’équipe Scrum sélectionnèrent certains items de la liste de besoins (le Product Backlog) qui seraient embarqués sur ce Sprint zéro. Puis, les 3 équipiers se répartirent le travail à réaliser et bossèrent pour une durée prédéterminée (celle du Sprint) afin d’atteindre les objectifs agréés : Analyse, construction/réalisation et tests devaient être compris et intégrés dans le cycle de temps imposé pour le Sprint. À la fin du Sprint se tint une rétrospective pour voir ce qui avait bien et moins bien fonctionné pui tests d’acceptation du livrable par le client !

Un nombre de points atteints pour ce Sprint pu alors être facilement calculé pour chaque équipe, mettant en évidence les écarts entre les ambitions de chacune et le réalisé.

Sprint 1

Puis, un deuxième Sprint fut organisé dans la foulée avec les mêmes équipes qui commençaient déjà à mieux appréhender la difficulté de réalisation des besoins exprimés. Besoins qui bien sûr avaient évolués depuis le Sprint zéro.

Un enseignement qui devint rapidement très visible pour les participants est que l’équipe avait non seulement gagné une meilleure appréciation de la difficulté technique, mais aussi des compétences de chacun des membres de l’équipe, de la vitesse d’exécution, des procédures de sécurité et de tests à mettre en place… Bien que novices dans la méthode, les bénéfices étaient évidents.

Et d’ailleurs nos résultats le prouvèrent lors de ce second Sprint où nous atteignirent parfaitement les objectifs que nous nous étions fixés tout en respectant les délais.

Et, enseignement supplémentaire de cette seconde rétrospective : notre vélocité ayant crû, nous aurions pu être plus agressifs. À envisager pour les sprints suivants…

…mais c’était déjà la fin de cette belle introduction pratique à Scrum.

Merci  beaucoup aux coaches et membres d’Eurogiciel qui nous recevaient et à Muriel Janel, directrice de l’agence de Sophia Antipolis, pour son invitation et la qualité de cette session. Muriel répondra comme toujours à vos demandes d’information avec plaisir, en particulier si vous souhaitez bénéficier de l’expérience de ses équipes pour appréhender et développer votre agilité.

J’invite les autres participants à cette session ou autres exercices similaires à poster leurs commentaires à ce billet.

SCRUM est ouvert à modifications et extensions

Scrum is Open for Modification and Extension

http://www.scrum.org/news/2011/10/6/scrum-is-open-for-modification-and-extension.html

Scrum.org et Scrum Inc. ont annoncé en Octobre dernier un modèle formel pour modifier et étendre Scrum. Les créateurs de Scrum, Jeff Sutherland et Ken Schwaber, invitent les pratiquants du monde entier à contribuer à l’avenir de Scrum.

Scrum a été créé il y a plus de 15 ans et développé et adapté depuis. En se basant sur leurs expériences et de celles de la communauté Scrum, Jeff et Ken ont soigneusement codifié la structure dans le « Scrum Guide », qui documente les règles de base, les artefacts et les événements de Scrum.

Cette annonce marque une nouvelle ère dans l’évolution de Scrum en donnant un mécanisme à tous de fournir un retour d’information sur le Guide Scrum et un modèle pour proposer des extensions à la structure de base.

Le processus formel pour proposer et intégrer des changements dans Scrum est disponible en ligne sur Scrum.org. Pour en apprendre davantage sur Scrum ou soumettre votre propre contribution à Scrum, vous pouvez utiliser les liens suivants :

Soumettez vos suggestions.

un guide de planification de sprint

A Guide to Sprint Planning de Derek Huether

http://thecriticalpath.info/2011/07/22/a-guide-to-sprint-planning

En réalisant une évaluation de Agile, l’autre jour, j’ai pris place dans une réunion de planification de sprint. Bien que nombreux soient  projets Agile qui en aient au début de chaque sprint, obtiennent-ils le meilleur du temps et des efforts investis ? En tant que partie intégrante du service fourni à mon client, je lui fournirai une petite antisèche pour la planification de sprint. Ce sera à la fois un guide et un ordre du jour, pour les aider à rester concentrés.

Qu’est-ce que la planification de Sprint (d’itération) ?

Le but de la réunion de planification de sprint est pour que l’équipe s’accorde à compléter un ensemble d’articles de plus forte valeur du «product backlog» (l’arriéré de produit ou liste des articles demandés pour un produit). Cet accord définit le contenu du sprint et est basé sur la vélocité ou la capacité de l’équipe et la longueur du sprint qui est limité dans le temps.

Qui le fait ?

scrum methodologie agileLa planification de sprint est un effort collaboratif impliquant :

  • ScrumMaster – Facilite la réunion
  • Propriétaire de Produit (Product Owner) – Présente le détail des items du product backlog et leurs critères d’acceptation
  • Équipe Agile – Définit les tâches et l’effort nécessaire pour accomplir l’engagement

Avant que vous ne commenciez

Avant de commencer nous ne devons assurer que :

  • Les items dans le product backlog ont été estimés par l’équipe qui leur a assigné une valeur de points d’histoire relative
  • Le product backlog est trié pour refléter les priorités du Product Owner
  • Il y a une compréhension générale des critères d’acceptation pour ces items

Les Backlogs

Le product backlog peut adresser aussi bien une nouvelle fonction que des corrections à une fonctionnalité existante. Pour la planification de sprint, les items du product backlog doivent être assez petits pour être achevés dans le sprint et que l’on puisse vérifier qu’ils ont été implémentés correctement. Cette liste d’item du product backlog deviendra le sprint backlog.

Bien calibrer les items du backlog

Les items de product backlog trop grands pour être complétés dans un sprint doivent être divisés en morceaux plus petits. La meilleure façon de les diviser est de se baser sur leur valeur et non pas sur le processus.

Plan basé sur la capacité

Des équipes matures peuvent utiliser la vélocité pour déterminer sur quels items du product backlog s’engager pour le sprint. Des équipes récentes ne peuvent pas connaître leur vélocité ou celle-ci peut ne pas être suffisamment stable pour l’utiliser comme une base de calcul dans la planification du sprint. Une approche pour de nouvelles équipes est de prendre des engagements basés sur la capacité de l’équipe.

Détermination de la capacité

La capacité d’une équipe est tirée de trois mesures simples pour chaque membre de l’équipe :

  • Nombre d’heures idéales dans un jour ouvrable
  • Nombre de jours pendant le sprint où la personne sera disponible
  • Le pourcentage de temps que la personne dédiera à cette équipe

Les étapes de planification

  1. Le Product Owner décrit l’item du product backlog de plus forte valeur
  2. L’équipe détermine les tâches nécessaires de compléter cet item du product baclog
  3. Les membres de l’équipe se portent volontaire pour être propriétaire de certaines tâches
  4. Les propriétaires de tâche évaluent les heures dont ils ont idéalement besoin pour réaliser leur tâche
  5. La planification continue tant que l’équipe peut s’engager à délivrer sans excéder sa capacité
le site de microsoft projet en français
Partenaire de DantotsuPM

management de projet Agile : « où est le steak » ?

Agile Project Management—Driving Value or Where’s the Beef?

http://www.projecttimes.com/robert-galen/agile-project-managementdriving-value-or-wheres-the-beef.html par Robert ‘Bob’ Galen

Il y a des années il y avait une merveilleuse publicité dont je me rappelle où une matrone nommée Clara Peller jugeait des hamburgers par la quantité de bœuf qu’elle y trouvait. Souvent elle était déçue dans sa recherche et, de frustration, criait « Où est le steak ? ». Wendy’s était la chaîne de restauration qui a inventé cette idée publicitaire et à ce jour la phrase est devenue une accroche pour délivrer de la valeur et répondre aux attentes des clients.

Je pense que Clara était sur quelque chose de vraiment important. Dans mon expérience, les business loupent souvent le « steak » quand ils essayent de délivrer de la valeur à leurs clients particulièrement dans le domaine du logiciel. Je ne sais pas exactement pourquoi. Parfois je pense que les développeurs sont trop distants de leurs clients. Ils peuvent rarement les toucher ou les observer. Ou comprendre leurs vrais défis. Donc ils font des suppositions quand on en vient à la priorisation des besoins puis jettent le logiciel « par-dessus le mur » pour un retour d’information.

Assez souvent ils sont sous pression pour livrer un maelström de fonctionnalités. Même si quasiment personne ne sait ce que sont les besoins clients, donc ils fournissent des solutions en ratissant large espérant atteindre les besoins. En croisant les doigts. Même si cela peut connaître certaines réussites, on aboutit aussi à la livraison de fonctionnalités de faible valeur qui diluent la concentration de l’équipe et augmentent les coûts de développement.

Ne serait-ce pas merveilleux si nous pouvions nous concentrer entièrement sur le « Steak » dans le développement d’application ? Dépenser la majorité de notre énergie, en nous concentrant sur la livraison de solutions à forte valeur et répondant aux plus forts besoins de nos clients. Éliminer le désordre de la déception et de l’ambiguïté et travailler simplement sur qui compte le plus ?

Même si cela ressemble à un conte de fées, les méthodes agiles aspirent justement à atteindre ce but. Mais il n’est pas facile de l’atteindre et le Chef de projet Agile efficace joue un rôle merveilleux dans cette quête. Dans ce billet, je veux partager quelques idées sur la façon de concentrer l’équipe sur la livraison de vraie valeur.

Un « backlog » priorisé !

Un des premiers mécanismes qui pilotent la valeur est le « Backlog de Produit » – la liste priorisée des besoins qui pilote ce que les équipes agiles vont construire. Chaque équipe devrait être focalisée comme un laser sur la priorisation de leur « backlog » de 1 à N. Il ne peut pas y avoir trois ou quatre fonctionnalités de priorité 1, seulement une; puis une seule deuxième, une seule troisième, et cetera.

Croyez-moi, vos clients et parties prenantes voudront jouer indéfiniment avec les priorités. J’ai vu des cas où ils avaient fait des regroupements dans un tableur qui donnaient la priorité de chaque fonctionnalité, puis des sous-fonctionnalités de chacune d’entre elles également priorisées. Ils insisteront pour dire qu’ils ne peuvent pas décomposer davantage la valeur quand ils essaieront d’augmenter la priorité. Cette approche (1.a, 1.b..1.z) leur permet d’échapper à la vraie priorisation et à la sélection. Elle indique aussi leur incapacité innée à faire des choix difficiles quant à ce qui est réellement le plus important. Ne les laissez pas le faire!

Un backlog de produit efficace est toujours dans un ordre linéaire et priorisé. L’équipe délivrera toujours les fonctionnalités de priorité les plus hautes en premier. Ils travailleront d’abord sur celles-ci, les finiront en premier, et s’assureront que le client est bien engagé.

Et, puisque le client est l’arbitre final des priorités, il ne devrait pas vraiment se plaindre de cette approche. Il est vrai qu’historiquement nous leur avons permis de nous donner de longues listes de fonctionnalités sans faire cette distinction et ils sont devenus un peu paresseux.

Quand encouragée à prioriser, je n’ai jamais vu de partie prenante qui en soit incapable.

Valeur Pilotée par le client

La priorisation peut aussi être pilotée par la valeur perçue, le changement, qui devrait être conduit. Une technique utilisée par beaucoup d’équipes agiles est la notion de Poker de valeur. C’est une variation de la populaire technique de Poker de Planification (Planning Poker) qui est utilisée pour l’évaluation de la taille d’une « User Story ». Mais au lieu de déterminer la taille des « User Stories » en points d’histoire, nous utilisons des Points de Valeur comme déterminant.

Dans ce cas vous utilisez un jeu de cartes étiquetées de 1-10, un étant la valeur la plus basse et dix la plus haute. Pour chaque « User Story » ou thème d’histoires vous demandez à un groupe mixte de clients et de parties prenantes ‘de voter’ sur la valeur de l’Histoire. Vous prenez une approche tournante et discutez ‘le pourquoi’ derrière la valeur la plus haute et la valeur la plus basse et vous laissez les membres de l’équipe exprimer leurs avis sur la nuance de valeur.

Une fois que la discussion est finie, vous faîtes un second vote et rediscutez jusqu’à ce que vous rétrécissiez la fourchette de valeurs autant que possible. Parfois vous atteignez un accord sur une valeur de l’ensemble de l’équipe. Parfois vous obtenez simplement une fourchette.

Vous pourriez même compartimenter les valeurs selon les différentes perspectives de l’équipe. Par exemple, les personnes de la qualité et des tests estiment une histoire particulière à cinq, tandis que la valeur des gens du métier cela la valorise à trois et les développeurs ou les gens de la technologie à un. Toutes leurs estimations fournissent des données importantes sur combien vous estimez transversalement la fonctionnalité.

Cette logique pourrait aussi être appliquée à de multiples parties prenantes. Par exemple, les parties prenantes Nord-Américaines pourraient estimer une fonctionnalité à six, tandis que les parties prenantes EMEA la jugent seulement à trois. Dans tous ces cas, discuter de la VALEUR comme d’un attribut distinct aide l’équipe dans la priorisation et dans la décision de combien de finition il faut apporter aux fonctionnalités individuelles.

Une Variation

Une variation vraiment efficace sur la technique de Poker de Valeur est de donner à chaque votant ou contributeur associé un montant de financement à dépenser pour leur vote. Alors, non seulement ils votent sur une valeur, mais ils doivent aussi investir une partie d’un montant fixe de dollars sur la fonctionnalité.

Très souvent de l’argent de Monopoly ou un équivalent amusant sont utilisés à cette fin. Disons que chacun possède 5,000 $ à dépenser sur leurs fonctionnalités pendant le Poker de priorisation. Dans un cas spécifique, une partie prenante vote neuf sur une caractéristique.

Pour souligner l’importance, ils déposent 1,500 $ sur la caractéristique soit environ 30% de leurs fonds disponibles. En fait, ils dépensent leurs fonds sur un total de seulement sept fonctionnalités. Pendant qu’ils continuent à prioriser les fonctionnalités ultérieures, ils ont clairement communiqué leurs avis sur la valeur. En fait, cette caractéristique à 1,500 $ finit en première priorité avec une valeur totale de 12,000 $ à travers l’équipe de vote entière soit 25% des fonds disponibles.

Aussi, voici une question intéressante. Si vous implémentez cette approche, que transmet Priorité n°1 par rapport à Priorité n°1 ET 25% de la valeur ? Selon moi, il y a une grande différence. Cette fonctionnalité représente une part beaucoup plus significative de la valeur et exige un soin particulier dans l’exécution. J’espère que vous voyez la différence.

Fonctionnalité Minimale Commercialisable (Minimal Marketable Feature : MMF)

Souvent dans les équipes agiles, des « User Stories » singulières n’ont pas la masse ou l’impact suffisant pour être estimées efficacement par le client. Plus tôt, j’ai parlé en termes de thème d’histoires. C’est une façon commune de grouper ensemble des histoires qui ont une valeur et de la signification en tant que groupe. Non seulement cela aide dans le développement des jeux de fonctionnalités significatives, mais si vous priorisez au niveau des thèmes, cela simplifie votre priorisation. Cela a aussi plus de signification du point de vue des clients.

Une variation sur ce thème est la Fonctionnalité Minimale Commercialisable (Minimal Marketable Feature : MMF). Ce concept est originaire de Kanban et de LEAN. Essentiellement, c’est comme un thème, mais il apporte les notions de faisabilité, possibilité de commercialisation et l’utilisation d’ensemble client.

Très souvent un MMF est plus grand qu’un thème. Cela pourrait être équivalent à une épopée d’histoires d’utilisateur et exiger que plusieurs sprints soient achevés. Cependant, une fois réalisé, l’équipe délivrera d’habitude physiquement le MMF au client, par exemple, le faisant passer dans l’environnement de production.

Suivi de Valeur

Un des merveilleux ajouts à votre ensemble d’outils de Chef de projet Agile est de brûler complètement la valeur d’histoires, de thèmes, ou MMFs. Vous voudrez installer le graphique de « Burndown Chart » dans un emplacement bien visible qui mette en évidence la valeur livrée par l’équipe. Comme avec tout graphiques « Burndown » vous voudrez garder les yeux de chacun sur le progrès et interagir avec l’équipe sur le progrès et le flux.

Vous voudrez calculer la valeur totale pour une version ou un projet. Alors configurez votre « Burndown » sur une base itération-par-itération.

Si vous obtenez un comportement agile sain dans votre équipe, vous verrez que la valeur est livrée d’une façon chargée sur l’amont. Vous devriez aussi voir les fonctionnalités de forte valeur livrées très tôt. En fait, je m’attends habituellement à ce que des équipes factorisent la valeur dans la qualité globale et dans les stratégies de test.

stop arrêt de projet "no go"Savoir conclure

Les chefs de projet Agiles ne se soucient pas juste d’exécuter par cœur de tâches ou des « user stories ». Non! Au lieu de cela ils concentrent leurs équipes sur une vue nuancée et à multiples facettes et vers une exécution orientée client et pilotée par la valeur.

Non seulement espèrent-ils en premier délivrer de la valeur, mais ils espèrent aussi qu’en ce faisant, le client peut atteindre un niveau « assez bon » avec les incréments de produit livrés de façon incrémentale et permettre ainsi à l’équipe d’arrêter le projet plus tôt que prévu.

S’arrêter après la livraison des fonctionnalités et de la fonction qui leur importe vraiment le plus. En quelque sorte atteindre leur valeur et se déplacer ensuite vers le projet suivant de valeur la plus haute. C’est cette sorte de recherche de valeur qui peut vraiment faire qu’une équipe agile se détache de ses homologues traditionnelles et se déplace tellement plus rapidement.

le site de microsoft projet en français
Partenaire de DantotsuPM

INVEST(issez) dans vos User Stories

Le modèle INVEST est décrit sur Wikipedia

Letter Meaning Description
I Independent The user story should be self contained, in a way that there is no inherent dependency on another user story.
N Negotiable User stories, up until they are part of a Sprint, can always be changed and rewritten.
V Valuable A user story must deliver value to the end user.
E Estimable You must always be able to estimate the size of a user story.
S Sized appropriately or Small User stories should not be so big as to become impossible to plan/task/prioritize with a certain level of certainty.
T Testable The user story or its related description must provide the necessary information to make test development possible.

Et cette vidéo en décrit les grands principes.

le site de microsoft projet en français
Partenaire de DantotsuPM

have you heard of IBM’s DAD process?

In a white paper available free of charge IBM proposes a Disciplined Agile Delivery (DAD) process to make the best use of existing Agile methodologies (Scrum, RUP, XP..) while scaling up and putting them in the context of a complete solution life-cycle.

I invite you to read the full introductory document. PMs will find there a terminology they recognize and can easily relate with rather than the sometimes hermetic one of Agile for new comers with its scrums, sprints, poker planning… Through inception, construction and transition phases, the authors position along the DAD Process the tasks to be done, of course in an Agile way and using many of the scrum and RUP techniques .

So, if you’re still Agile adverse, read this white paper, and you may well see some of these approaches like Scrum, XP, RUP in a new and brighter light.

le site de microsoft projet en français
Partenaire de DantotsuPM

Scrum Guide 2011 – une version non officielle en français de Pierre Neis

En juillet 2011, Ken Schwaber et Jeff Sutherland ont édité une nouvelle version du Scrum Guide. Ce “Scrum Body of Kowledge” a l’air anodin, mais du point de vue de Pierre Neis, il annonce de profonds changements dans le “framework”.

« Scrum est en amélioration permanente, pourquoi cette version serait-elle différente des autres? »

Voici une traduction non-officielle que Pierre nous invite à découvrir.

le site de microsoft projet en français
Partenaire de DantotsuPM

apprends moi à dessiner Scrum

The Scrum Framework
Lyssa Adkins qui se présente comme une coach de Coach Agile (les ScrumMasters par exemple), montre dans cette vidéo comment expliquer Scrum à quiconque en reprenant dans un graphique les principes clés de cette approche. Lyssa est l’auteur du livre Coaching Agile Teams.

The Wedding Cake
Elle va plus loin avec cette démonstration de comment expliquer très simplement les différences et les bénéfices qu’il y a à adopter une approche Agile.

le site de microsoft projet en français
Partenaire de DantotsuPM

l’empirisme ou l’acte de prendre des décisions basé sur ce qui est

Empiricism, the act of making decisions based on what is

http://kenschwaber.wordpress.com/2011/05/03/empiricism-the-act-of-making-decisions-based-on-what-is/

Par Ken Schwaber

L’empirisme est l’acte de prendre des décisions basé sur ce qui est. Scrum est un processus empirique, parfois décrit comme “l’art du possible.” Par cela, je veux dire que nous faisons du mieux nous pouvons avec ce que nous avons.

Un Propriétaire de Produit (« Product Owner ») planifie une version (« release ») basée sur toutes les informations actuellement disponibles. Il ou elle définisse les objectifs, les fonctionnalités et les capacités qui délivreront ces buts ainsi que le coût probable et la date de livraison. À partir de ce moment-là, le travail du Propriétaire de Produit est d’évaluer ce qui est possible vu les capacités de l’Équipe et de prendre les meilleures décisions pour atteindre l’objectif souhaité. Étant donné la nature de la technologie, des marchés, des besoins et des personnes, des compromis sont faits. Parfois le but ne peut pas être atteint pour un prix raisonnable. Parfois le but sera atteint, mais d’une manière différente de ce que le Propriétaire de Produit pensait initialement. C’est l’empirisme en pleine action.

L’Équipe (de développeurs) sur l’Équipe Scrum fait de même. Elle rencontre le Propriétaire de Produit et évalue ce que le Propriétaire de Produit voit comme les choses les plus importantes à faire ensuite. Si réalisées, celles-ci dirigeront le produit émergent dans la meilleure direction vers le but désiré. L’équipe choisit autant de choses qu’elle croit pouvoir en faire pendant le prochain Sprint. Le coût de l’équipe et la longueur de Sprint est fixe. Seule la quantité d’items du « Product Backlog » choisie peut varier. Le Propriétaire de Produit et l’Équipe définissent souvent un objectif pour le Sprint. C’est un sous-ensemble des objectifs de la version (« release »).

Quand l’équipe choisit des items lors d’une réunion de Planification de Sprint, elle s’engage à le faire pendant le Sprint.

Une définition « s’engager » est : « Se lier moralement par une promesse : Il s’est engagé à payer ses dettes dans les huit jours. » selon le Larousse. (ndlt)

Cela correspond à ma compréhension du mot s’engager, qui est une promesse, un engagement à un plan d’action.

Cependant, beaucoup d’équipes Scrum utilisent le mot « s’engager » comme si c’était « une garantie ». C’est un reste des méthodes en cascade, où une évaluation était un contrat. Cependant, cela résonne toujours dans les têtes de propriétaires de produit et des développeurs. J’ai trouvé équipes après équipes qui estiment qu’elles doivent tout faire pour respecter leur engagement. La victime est habituellement la qualité.

prédire l'avenirJe me demande si nous devrions échanger le mot « s’engager » pour celui de “prédire” ?

Ceci pourrait donner la même impression que la présentatrice météo essayant de nous fournir les meilleures informations possibles. Elle fait avec que l’on connaît et avec la science de la météorologie. Elle ne fournit pas de garantie, mais quelque chose que nous pouvons utiliser pour prendre des décisions. Les prévisions sont également utilisées par les organisations de ventes. Peut-être cette clarification nous aidera-t-elle à comprendre qu’ « un engagement » dans Scrum est une promesse de faire de notre mieux avec ce que nous avons.

le site de microsoft projet en français
Partenaire de DantotsuPM

10 bonnes raisons de faire du développement Agile

10 Good Reasons To Do Agile Development

http://www.allaboutagile.com/10-good-reasons-to-do-agile-development/

by Kelly Waters

Voici 10 bonnes raisons d’appliquer les principes et pratiques de développement agiles …

vitesse, time to market1. Revenus

La nature itérative du développement Agile implique que des fonctionnalités sont livrées de façon incrémentale, ce qui permet de commencer à encaisser des revenus pendant que le produit continue d’être développé.

2. Vitesse de commercialisation

La recherche suggère qu’environ 80 % de tous les leaders du marché ont été les premiers à commercialiser sur ce marché. En sus d’un revenu plus élevé grâce à une livraison progressive, la philosophie de développement Agile supporte aussi la notion de sorties en avant-première et de versions régulières et les versions « perpétuellement bêta ».

3. Qualité

Un principe clé de développement Agile est que les tests sont intégrés tout au long du cycle de vie. Ce qui permet une inspection régulière d’un produit fonctionnel en cours de développement. Cela permet au propriétaire de produit (le « product owner ») de faire des ajustements si nécessaire et donne à l’équipe de produit la primeur de tout problème de qualité.

4. Visibilité

Les principes de développement Agile encouragent la participation active des utilisateurs tout au long du développement du produit dans une approche collaborative très coopérative. Cela fournit une excellente visibilité aux principales parties prenantes, à la fois sur l’avancement du projet et sur le produit lui-même, ce qui aide à son tour à s’assurer que les attentes sont gérées efficacement.

5. Management des risques

surmonter les risques avec agilitéDe petites versions progressives donnent de la visibilité au « product owner » et à l’équipe produit pendant le développement, permettent d’identifier les problèmes au plus tôt et  facilitent la réponse à ceux-ci. La visibilité claire dans le développement Agile aide à s’assurer que les décisions nécessaires peuvent être prises le plus tôt possible, pendant qu’il reste du temps pour apporter une différence substantielle sur le résultat.

6. Flexibilité / Agilité

Dans des projets de développement traditionnels, nous écrivons de grandes spécifications au préalable et disons ensuite aux responsables business combien il est coûteux de changer quoi que ce soit, particulièrement quant le projet avance. Dans la crainte de dérive du contenu et de projet interminable, nous résistons aux changements et faisons passer les personnes par un comité de contrôle des changements pour les réduire au minimum vital. Les principes de développement Agile sont différents. Dans le développement Agile, le changement est accepté. En fait, on s’y attend. Parce qu’une chose certaine dans la vie est le changement. Au lieu de cela la durée est fixe et les exigences apparaissent et se développent comme le produit est développé. Bien sûr, pour que cela fonctionne, il est impératif d’avoir des parties prenantes impliquées qui comprennent ce concept et prennent les décisions de compromis nécessaires, négociant le contenu existant pour un nouveau.

7. Contrôle des dépenses

La susdite approche de durées fixes et besoins en évolution permet d’avoir un budget fixe. Le contenu du produit et ses fonctionnalités sont variables, plutôt que le coût.

statisfaction des clients8. Satisfaction du client/business

La participation active d’un représentant des utilisateurs et/ou un propriétaire de produit (« product owner »), la forte visibilité du produit et de l’avancement et la flexibilité de changer quand le changement est nécessaire, créent un bien meilleur engagement du business et la satisfaction du client. C’est un bénéfice important qui peut créer des relations de travail beaucoup plus positives et durables.

9. Le bon produit

Par-dessus tous les autres points, la capacité des besoins de développement Agile à émerger et à évoluer et la capacité d’embrasser le changement (avec le compromis approprié), fait que l’équipe construit le bon produit. Il est trop commun dans des projets plus traditionnels de livrer un projet « réussi » coté informatique et de constater que le produit n’est pas ce à quoi on s’attendait, dont on avait besoin ou que l’on espérait. Dans le développement Agile, l’accent est mis absolument sur la construction du bon produit.

10. Plus agréable !

L’engagement actif, la coopération et la collaboration font des équipes de développement agiles un endroit beaucoup plus agréable pour la plupart des personnes. Au lieu de grandes spécifications, nous discutons des besoins dans des ateliers. Au lieu des longs rapports d’avancement, nous collaborons autour d’un tableau des tâches, discutant du progrès. Au lieu des longs plans de projet et des Comités de Gestion de Changement, nous discutons de ce qui est juste pour le produit et le projet et le L’équipe est autorisée à prendre des décisions. Dans mon expérience, cela donne une approche beaucoup plus utile pour chacun. À son tour, cela aide à créer des équipes fortement motivées, à haute performance qui sont fortement coopératives.

Les implications d’embrasser des principes de développement Agile

Mais il y a des implications. Il n’existe rien de tel qu’un déjeuner à l’œil ! Et il n’y a aucune baguette magique pour le développement logiciel. Désolé, non, cela n’existe pas 🙂 En échange de tous ces avantages, vous obtenez moins de prévisibilité, le logiciel et les personnes restent complexes, vous ne pouvez plus blâmer quelqu’un d’autre si les choses ne se passent pas bien et cela exige généralement beaucoup plus d’engagement et d’effort de chaque personne impliquée – c’est-à-dire que la collaboration est encore plus importante.

Néanmoins, les bénéfices du développement Agile sont vraiment irrésistibles.

le site de microsoft projet en français
Partenaire de DantotsuPM

un glossaire en anglais de termes utilisés en développement Agile

http://www.accurev.com/software-development-glossary.html

Une brève explication des termes les plus fréquemment rencontrés dans le développement en mode Agile.

passer de chef de projet à coach Agile, pas si facile !

Voici une vidéo qui donne à réfléchir pour tous ceux qui sont actuellement chefs de projet dans le développement logiciel et qui commencent à adopter les méthodes et approches Agiles sur certains de leurs projets.

Lyssa Adkins nous confie quelques pensées radicalement opposées à ce que les chef de projet dans le modèle « en V » ou « en cascade » ont pu apprendre :

  • éliminer tous les obstaclesSe détacher du résultat, du livrable, pour se focaliser sur comment l’équipe travaille ensemble
  • Demander à l’équipe. Quelque soit le problème à résoudre, ne le faites pas vous-même et demander plutôt à l’équipe de le faire
  • Refléter vers l’équipe sans jugement de votre part ce que vous observez
  • Maîtriser votre communication orale et gestuelle (ok, pas vraiment nouveau…)
  • être confortable avec le silence pour laisser un espace d’expression à chacun dans l’équipe
  • être « déraisonnable », challenger le status quo et l’équipe ainsi que toute assomption
  • Laisser l’équipe apprendre de ses (petites) erreurs
  • être leur plus grand et plus fidèle fan

Au bout du compte, Lyssa mentionne que le coach Agile doit avoir 4 fonctions principales:

  1. Bulldozer qui élimine tout ce qui entrave le progrès de l’équipe
  2. Berger qui mène tout son « troupeau » au succès
  3. Leader au service de l’équipe, facilitateur, supporter
  4. Gardien de la qualité et de la performance

PMI commence à nous donner plus de visibilité sur la certification Agile

PMI a publié le document que vous obtiendrez en cliquant sur l’image ci-contre pour nous fournir davantage de détails sur la Certification Agile. Les inscriptions débutent en mai pour les premières sessions d’examen en Septembre.

Vous y découvrirez notamment que l’examen consistera en 100 questions dont la moitié sur les outils et techniques Agiles et la seconde partie sur les compétences et connaissances Agile.

Coté outils et techniques, les aspects suivants seront couverts: Communications, Estimations, Planification, Suivi et Amélioration continue, Analyse et Design, Qualité et Tests, Compétences relationnelles, Priorisation,  Management des risques, mesures et indicateurs, anamyse de la valeur.

Les compétences et connaissances sont organisés en domaines qui sont eux mêmes triés par niveau d’importance sur les projets agiles.

PMI nous propose également quelques pointeurs vers des documents et publications utiles pour préparer cet examen.

Une page dédiée sur le site PMI contient de nombreuses réponses aux questions que vous vous posez peut-être sur Agile.

PMGS Formations en management de projet
Partenaire de DantotsuPM

le planning poker dans la méthode Agile Scrum

La définition des « bonnes » estimations sur un projet est un savant mélange d’expérience, d’échanges entre experts, de comparaison par analogies, de calculs… Le Planning Poker est l’un des outils de la méthode Scrum qui permet à une équipe lors d’une réunion de planification de donner des estimations pour le développement d’une fonctionnalité.

Lors de la réunion, le product owner (directeur de produit), qui représente comme toujours le client, définit les priorités de développement des nouvelles fonctionnalités du produit logiciel. L’équipe projet doit donner des estimations d’efforts au product owner afin que celui-ci comprenne ce que va coûter chaque nouvelle fonctionnalité. Et c’est là qu’intervient le Planning Poker. Pour jouer au planning poker, l’équipe doit donc avoir la liste de fonctionnalités à livrer (le product backlog) et un jeu de cartes de planning poker.

Dans ce jeu de carte, au lieu de porter des valeurs entre le 2 et l’as, les cartes portent des valeurs qui sont plus pertinentes à l’évaluation de durée de tâches. Typiquement ces valeurs sont : 0, ½, 1, 2, 3, 5, 10, 20, 50, 100. Ces valeurs correspondent au nombre de jours qu’une fonctionnalité donnée prendrait à être développée.

La session de planning poker est habituellement facilitée par un modérateur qui est souvent le ScrumMaster ou bien le coach Agile de l’équipe, les participants sont donc le « product owner » et l’équipe de développement.

Quel est le processus ?

1. Le modérateur lit la description de l’histoire utilisateur (« user story ») ou fonctionnalité que l’équipe doit estimer. Le product owner peut fournir des clarifications sur la fonctionnalité. Chaque expert est doté d’un jeu de cartes.

2. Chaque expert choisit une carte dans son jeu qui correspond à son estimation initiale de l’effort de développement. Chaque expert pose sa carte à l’envers sur la table pour ne pas influencer les autres experts.

3. Quand toutes les évaluations sont sur la table, les cartes sont retournées.

4. S’il y a une palette très large entre les estimations, les experts qui ont suggéré les plus fortes et plus basses évaluations fournissent le raisonnement qui les a amené à ces valeurs.

5. Une fois que la discussion sur la palette d’estimations a été conduite, les étapes 2 à 4 sont répétées jusqu’à ce qu’un consensus soit atteint.

Quel est l’avantage principal ?

L’avantage principal du planning poker est d’encourager une discussion ouverte sur les estimations. Cela aide l’équipe à atteindre une proposition plus précise au lieu de compter sur l’avis d’un membre de l’équipe plus influent ou plus vocal que les autres. Cela permet aussi à l’équipe de bénéficier de l’expérience de tous les membres de l’équipe.

Où obtenir les cartes ?

Les cartes de planning poker peuvent être créées à partir de zéro. Ce lien vous permettra d’imprimer vos propres cartes de planning poker: http://www.sprintplanning.com/planningpoker_cards_1.gif et celui-ci de jouer en ligne: Http://www.planningpoker.com/

Voici une brève vidéo qui explique comment est née cette méthode.

le site de microsoft projet en français
Partenaire de DantotsuPM

la dernière version du Scrum Guide en Français et les certifications ScrumMaster et Scrum Developer

Scrum
Connaissez-vous le site Scrum.org?

On peut y trouver des guides, dont les dernières versions du  Scrum Guide écrit par Ken Schwaber et Jeff Sutherland et ce en différentes langues dont le Français: Scrum Guide en français

On y trouve aussi des détails sur les programmes Professional ScrumMaster et Professional Scrum Developer avec des tests payants en ligne ($100) pour valider votre niveau de connaissance de Scrum et des rôles des différents intervenants sur les projets Agiles.

PMGS Formations en management de projet
Partenaire de DantotsuPM

SCRUM ne serait pas l’apanage des seuls projets de développement de logiciels

Un point de vue original de Craig Brown sur SCRUM en tant que méthode universelle et non pas seulement réservée aux projets de développement de logiciels.

Voici ce que je retiendrais de la description qu’il en donne et qui s’applique à tout projet:

  1. Commencez avec un objectif. Puis, décomposez-le en étapes incrémentales.
  2. Discutez les étapes avec l’équipe qui doit livrer la solution.
  3. Définissez des périodes de temps standards (timeboxing) pour les itérations. Faites de votre mieux pour livrer quelque chose de pratique et d’utile à chaque itération.
  4. L’équipe doit prendre ses « ordres » du client au début de chaque itération et faire un rapport sur ce qui a été « fait » à la fin de chaque itération.
  5. L’équipe doit mettre du temps de coté au début de chaque itération pour planifier son travail.
  6. L’équipe doit mettre du temps de coté pour une brève session journalière d’échanges entre membres sur les progrès et les problèmes.
  7. L’équipe doit s’engager à l’amélioration continue et mettre du temps de coté à chaque itération pour réfléchir sur ce qui est allé bien ou pas et où l’on peut s’améliorer.
  8. La planification, la revue et les sessions de réflexion et réunions d’équipe quotidiennes doivent avoir lieu à des heures régulières pour aider l’équipe à acquérir un tempo.

10 false ideas about Agile Methods

For once, I decided to translate French articles for our English speaking readers and those of us based in France who work in an international context and would like to share these with our foreign colleagues.

The original articles (2 posts in fact) were published by Renaud Choné on the blog of his company, Time Performance: http://www.timeperformance.com/blog/16-generalites/101-5-idees-fausses-a-propos-des-methodes-agiles

The wide variety of agile methods and their practices generates numerous false ideas on this subject. The object of this article is to demystify the most common false ideas found in the debates on Web by answering these factually.

The arrival of the Agile Methods is generating a ditch between their partisans and those of traditional methods. This rupture is strengthened by the fact that 4 founding principles of the agile methods contradict directly the classic approach:

  1. Individuals and interactions over processes and tools
  2. Working software over comprehensive documentation
  3. Customer collaboration over contract negotiation
  4. Responding to change over following a plan

( Cf. the Agile Manifesto, the official site: Http://agilemanifesto.org/)

The idea here is not to take position but to allow healthy debates. Indeed, at Time Performance, we are convinced that there is no good method for every situation. And it is moreover why our management of software projects was designed to be flexible while being inspired by the best practices and tools, agile or classic.

False Idea n°1: the Agile Methods apply only to « small » projects

False, forgery and ultra-false… It is nevertheless the most wide-spread idea. It is also the most false.

1) The reason for being of Agile Methods is to allow the project to adapt itself easily to the changes ( » Reponding to changes « ). It makes sense only for the projects of rather long duration, because the risk of change is strong all the more as the project goes on. Furthermore, the duration is necessary to take the full benefits of the heavy investments made in the tests, their automation and the quality of the code, which are at the heart of the agile methods.

Moreover the Agile methods were designed for the development of software products (hence the term of Product Owner which we find in SCRUM), for which the life cycle extends over several years or even several decades.

This false idea was maybe inspired by the brevity of the development cycles. And precisely, an iterative development aims at avoiding the risk of tunnel effect, which is important all the more as the project is long.

Thus the Agile methods are particularly adapted, even recommended, for long projects and not for the small ones.

2) Concerning the size of the team, it is true that SCRUM limits the size of the teams to 8 or 9 individuals, and XP recommends it in practice, because it is the optimal functioning. But nothing forbids establishing several teams which will work each on a sub-project. Moreover SCRUM embeds it with a coordination mechanism which is called the SCRUM of SCRUMs. A team of several dozens of persons can be so constituted.

False Idea n°2: the classification « Agile Method » determines a homogeneous group

The Agile methods are very different from one to another. They are even sometimes almost totally complementary, as XP and SCRUM. If these last 2 methods mark a real break with regard to the classic approach, some as Unified Process establish intermediate steps in the evolution of the methods during the last 20 years.

All these methods agree only on the 4 principles, that is little. Furthermore, the Agile Manifesto offers certain freedom in interpretation. It is thus risky to speak about Agile Methods generally. It is better to speak about practices proposed by such or such method.

On top, it is necessary to add that the implementations of these methods are even more heterogeneous.

False Idea n°3: the Agile Methods are methods of project management

Firstly, the object of the agile methods is software development and not the management of projects. If certain topics of project management are mentioned such as the estimates and the planning, others are plainly absent (for example costs management).

Secondly, the agile methods are not methods. The authors of XP and SCRUM define them as sets of good practices.

False Idea n°4: the Agile Methods are methods of rapid development or prototyping

Short cycles of delivery do not mean that the developments are rapid. It implies simply to validate the progress regularly and concretely.

There are even chances that the developments will be less fast at first with regard to a V cycle, because of the requirements in quality of code and tests coverage, including of numerous re-developments. It is not thus a good approach to use for prototyping.

The Agile projects are marathon runners and not short-distance runners. That is why they travel light. And on the distance, they are generally the fastest and consume less.

False Idea n°5: the agile developments are with difficult to maintain because of the lack of documentation

The fear of seeing the knowledge of the functioning of the software leaving with developers at the conclusion of the project is perfectly justifiable when the documentation is insufficient.

However it is an error to consider that there is no documentation. Following the example of Open Source, in an Agile approach, the main documentation is the source code. And as numerous deliveries are realized throughout the project, everything is made to guarantee a perfect maintainability.

On one hand, the coding rules are very strict and their validation is automated. Several practices at the heart of the Agile methods (the refactoring, the absence of Code Ownership, the Pair Programming etc.) guarantee in the end an appropriate, well designed, legible and well documented source code.

On the other hand, in the source code it is necessary to include the tests (unit, integration, functional etc.). The tests are similar to a document of detailed specifications and an integrated validation tool. It is a significant but indispensable investment for the maintainability and the evolution.

In an agile approach, the source code and the tests stand for respectively detailed design and detailed specification, expressed in natural language in comments and in IT language. The big advantage is to guarantee that the documentation is always up to date with regards to the code, and that the code corresponds to the specifications thanks to the daily tests execution and continuous integration. An agile development should thus be very easy to maintain.

Really, the true question is: « between a complete documentation (specification, analysis, design etc.) and an appropriate and well tested source code which would you choose? »

The agile methods give the priority to the source code and to the tests. The V cycle favors in practice the documents which are generated upstream in the project, to the detriment of the code and the tests situated downstream in the cycle when the pressure to go fast, too fast, is much stronger.

False Idea n°6: the Agile Methods, it is the freedom to do it its own way

Team in « self-management » mode, questioned project manager’s role, redistribution of the responsibilities, the abolition of the contractual aspects, no detailed planning, absence or almost of documents, mainly verbal communication…

All these elements which seduce the teams have a flavor of freedom and emancipation which will frighten more than a manager.

However it would be false to consider that the Agility is synonymic of absence of rules, constraints and structures.

The Agility is above all a change in priority, as demonstrate the 4 principles of the Agile Manifesto. With more distance, it is also a change in the nature of a project, the objectives of which are not any more the respect for a requirements book, at costs and on time.

Now all these changes rest on different organization models which have their own rules.

To be Agile, it is not enough not to apply the former rules, it is especially necessary to apply the new ones.

False Idea n°7: the Agility, it is simple thus it is easy

Following the example of a chess game, the rules of the Agility are simple but their application is not. Several years of practices are needed to master well the game.

The Agility is synonymic of lightness and simplicity. It is natural to see a promise of ease there.

This promise is confirmed by books on Agility. They are generally less thick and less heavy than their equivalents; the principles and the presented concepts are much less numerous and simpler.

To acquire the theory is thus easy, but what about the practice?

In practice, the Agile methods impose very strong requirements on the individuals and the organizations.

For the individuals, there is at first a requirement in technical skills to produce an evolutionary, quality and easy to maintain software, well tested etc. This does not apply only to the Agile methods. The difference is that it becomes a priority with the Agility.

For the individuals, there is then a requirement of behaving and personal discipline to collaborate, communicate, make a commitment, and demonstrate self discipline… It is very difficult to set up Pair Programming; and Daily Scrum can easily turn into chaos.

Some organizations would need almost reorganization. For example, to involve more the business in the development, to redefine the jobs (project manager, scrum master etc.) etc.

For organizations, there is also a problem of the lack of mid-term and long-term visibility with an impact on how projects are budgeted.

Finally, the Agility rests on a strong requirement of Transparency. It can have heavy implications for organizations and individuals. Ken Schwaber, co-author of the Scrum method, expresses with provocation a direct consequence of this transparency strengthened by fast feedbacks:  » [the Agility] expose  the incompetence « . Stated this way, it makes you think…

In practice, very few teams arrive at the end of an Agile step(initiative). But fortunately, the passage in the Suppleness can be gradually made with immediate gains (cf n°9).

False Idea n°8: the Agile Methods require senior developers

The requirements of Agility on the individuals (cf. N°7) lead to think that the agile methods are reserved for experimented teams, teams of champions of the development. This is exaggerated.

The minimum required by the Agility would be rather a team consisting of an experimented coach and open-minded individuals, capable of questioning, capable of learning and especially who want to progress.

With regard to other methods, an advantage of the agile methods is to facilitate the fast grow in skills of the team members.

How? Simply thanks to the very short iterative cycles which allow fast feedbacks on performance and improving for the following iteration. In SCRUM, it is institutionalized under the shape of a Retrospective at each iteration end.

Besides, practices such as the Pair Programming and the Daily Scrum facilitate largely the transmission of knowledge between the members of the project.

We can retain a principle: the less the team is experimented, the more the « Coach » owes to be.

False Idea n°9: incompatibility with the classic approaches

The agile methods propose practices which, taken separately, are not incompatible with the classic approaches (cascading cycle, CMMI, PMBoK etc.).

For example, it is possible in a cascading cycle to introduce Peer Programming, Retrospect, daily meetings, the Palnning Poker, Burndown charts, continuous integration, the Test Driven… Why not?

If there is incompatibility, it is not at the level of the practices, but rather at the level of the values.

False Idea n°10: the Agility can apply to anything and everything

When, to test its software, it was necessary to reserve several days in advance some machine processing time on the central server and print its software on punch cards, the Agility and its Test Driven and Continuous Integration would have made anyone laugh out loud

To be Agile, it is necessary to have the will but also the means.

In domains, as construction or industry *, the constraints certainly do not allow to be as agile as in the software development.

In a project at fixed price, a purely agile approach is inconceivable. It is inevitably necessary to fix the perimeter.

In a deployment project, the Agility may bring more inconveniences than advantages.

To be able to be Agile, the change has to be desirable but also possible at low-cost. That is why the software development is the privileged domain of the Agility.

* In the industry, there is a Lean Manufacturing. This approach shares some of the values and objectives of the Agility, but with different practices oriented towards the industry.

Comment comparer ScrumMaster et Chef de projet ?

Article lu récemment sur www.pmi.org de Lisa A. Grant, MBA, PMP, CSM: Http://www.pmi.org/eNews/Post/2010_03-26/ScrumMaster-Compare-To-PM.html

Un ScrumMaster peut-il être un manager de projet — les positions sont-elles identiques ? J’ai réfléchi sur cette question pendant environ trois semaines après être devenue ScrumMaster certifiée et ai conclu qu’elles ne sont pas les mêmes, elles sont plutôt deux rôles distincts. Cependant, un chef de projet peut remplir le rôle ScrumMaster et le fait même souvent.

Techniquement, Scrum, qui est une approche de développement logiciel Agile, est idéalement faite justement pour cela : le développement logiciel. En fait, elle est conçue pour le développement logiciel rapide par les membres d’une équipe fortement qualifiés et auto motivés.

Il y a, cependant, beaucoup d’activités dans le cycle de vie du développement logiciel qui ne sont pas directement reliées au développement de fonctions logicielles. Ces activités incluent le développement de Business Case, des activités de préparation opérationnelle, la formation et le déploiement en production, pour en nommer quelques-unes.

Les meilleurs ScrumMasters sont des leaders techniques, des architectes ou des managers. Ceux-ci sont des ingénieurs de développement logiciels seniors qui peuvent évaluer les tâches et offrir des conseils techniques dans le processus de développement. Ils sont destinés à être techniques.

Le chef de projet est la personne qui gère tous les aspects du projet, dont l’un est le cycle de développement du logiciel.

Le chef de projet est le manager d’ensemble, la personne responsable au niveau de projet, tandis que le ScrumMaster est le responsable du développement de livrables logiciels.

À la différence du chef de projet, le ScrumMaster manage :

  • Le processus qui supporte si le logiciel répond vraiment au niveau fonctionnel aux besoins des parties prenantes (sous la direction du propriétaire de produit, le « product owner »);
  • La justesse et l’adaptabilité de la conception technique; et
  • Les tâches requises pour construire le produit de façon itérative en produisant un logiciel fonctionnel après chaque itération.

Le chef de projet s’assure que le business case est clairement défini, les documents de conformité sont correctement complétés, les activités de déploiement du produit bien exécutées — et il ou elle gère tous les autres aspects business du nouveau lancement de produit.

Il y a beaucoup de façons d’allouer les rôles par rapport aux ressources allouées au projet. Cependant, comme ils sont assignés dans un environnement Agile, je veux réitérer que Agile est destiné et a été conçu pour le développement de produits logiciels.

Il est possible d’utiliser Agile pour d’autres types de projets, mais la valeur pourrait être réduite à une liste de tâches avec un alignement de leurs dates de livraisons par itération. Une approche Agile performante fournit de la valeur pour le client à la fin de chaque itération, et pas simplement l’achèvement d’une liste de tâches.

La question à laquelle on doit répondre est : “Est-ce que le client a obtenu de la valeur avec ce que nous avons livré à la fin de l’itération ?” Si la réponse n’est pas positive,  Agile n’est pas vraiment réussi.

Donc votre chef de projet joue-t-il aussi le rôle ScrumMaster ? Posez-vous ces questions :

  • Le chef de projet a-t-il l’expertise technique d’évaluer des tâches techniques et de donner la direction ?
  • Le chef de projet a-t-il été formé à Scrum ?
  • Le chef de projet a-t-il le respect de l’équipe pour son expertise du sujet ?

Si la réponse à l’une ou plus des susdites questions est « Non », alors, laissez la personne qui a vraiment cette expertise exécuter le rôle de ScrumMaster. Si la réponse est « oui, » il ou elle peut probablement exécuter avec succès le double rôle de ScrumMaster et de chef de projet.

Rappelez-vous qu’il est difficile de garder une vue d’ensemble du projet ET une vue des tâches; c’est pourquoi il y a des chefs de projet. Pour équilibrer les deux rôles, les parties « business » du projet devront être mineures en comparaison du développement logiciel. De cette manière, le chef de projet/ScrumMaster peut se concentrer sur la gestion du temps et la facilitation des tâches de développement logiciels et les questions/problèmes et passer e reste du temps sur des activités comme le business case, le déploiement et la formation.

Si votre environnement évolue vers Scrum, ne présupposez pas automatiquement que le chef de projet devrait être le ScrumMaster. De plus, souvenez-vous qu’il y a toujours un rôle à jouer pour le chef de projet.

Ces deux positions devraient travailler de concert de même qu’un chef de projet et un manager de développement le font.