Quel est le but de planifier le poker dans un sprint?

15

Notre analyste d'affaires et nos chefs de projet nous disent les exigences du client en tant que récits. A chaque planification de Sprint, nous (développeurs) sommes invités à jouer à la planification de poker.

Ils nous ont tous demandé de considérer la «complexité» plutôt que «l'effort». Nous sommes vraiment confus et nous perdons du temps dans nos réunions. Un développeur a posé une question: «Que devrions-nous vraiment vouloir considérer? S'agit-il du changement de code / DDL que nous devons faire dans cette exigence (estimation du temps) ou s'agit-il de savoir si nous avons ou non compris l'exigence? »

Mais qu'entendent-ils (analyste commercial et chefs de projet) par «comprendre l'exigence» et «élever une carte»?

De plus, nous avons des réunions de découpage pour les équipes Scrum individuelles, où chaque développeur donne une estimation du temps pour une tâche donnée pour chaque équipe Scrum. Alors, de quoi parlent-ils vraiment dans Planning Poker?

Quelqu'un peut-il expliquer cela à l'aide d'un exemple? Essayez de différencier ce dont ils parlent vraiment lorsqu'ils disent «complexité» et «effort».

Jude Niroshan
la source
3
Je voudrais juste ajouter qu'il existe des contre-arguments et que certaines personnes intelligentes considèrent la planification du poker comme une perte de temps - alors prenez les réponses que vous obtenez avec un grain de sel.
Benjamin Gruenbaum
Cela ressemble à une mêlée de mêlée. Quelle est la taille des équipes de mêlée, et toutes les équipes de mêlée participent-elles, dans leur intégralité, à la planification du poker? Y a-t-il des instructions raisonnablement définies de la part des propriétaires de produits avant ces sessions? De manière générale, les équipes de développement se composent de rôles de pairs, mais il y aura inévitablement quelqu'un de plus senior qui pourra probablement fournir des estimations de complexité suffisantes et suffisantes dans ces événements de coordination; un rôle vaguement comparable à un responsable de programme / projet technique, par exemple. Comme vous n'évaluez pas la durée des tâches, tout le monde n'a probablement pas besoin d'être impliqué.
JoeBrockhaus
Dans les petites équipes / projets, la planification du poker est probablement moins identifiable comme une cérémonie de mêlée distincte, car le produit lui-même n'est pas suffisamment complexe pour justifier la surcharge supplémentaire d'estimation d'histoires / épopées relativement inconnues, non détaillées ou de haut niveau, en dehors de planification de sprint standard.
JoeBrockhaus
Une autre chose à considérer est si vous aviez une histoire / un pic pour empaqueter essentiellement un tas de données brutes (disons une feuille Excel). Sa complexité est très faible (copier / coller), mais cela prendra beaucoup de temps.
Zymus
1
Planifier le poker, c'est obtenir une estimation de tout le monde sans entendre d'abord les estimations des autres.
Thorbjørn Ravn Andersen

Réponses:

20

Tenez compte du point de vue du chef de projet

En demandant de la complexité, ils veulent un nombre qu'ils peuvent comparer avec votre prochain sprint pour trouver votre vitesse en équipe. Ils peuvent également essayer de l'utiliser pour additionner votre résultat avec les estimations d'autres équipes pour fournir une estimation globale sur le moment où toutes les histoires seront terminées.

Le chef de projet cherche une estimation de la date à laquelle le projet sera terminé, ou s'ils sont flexibles des autres côtés du triangle temps-fonction-coût, quels autres sortants peuvent être tirés pour l'adapter au temps restant. Ce n'est pas déraisonnable. Les décisions commerciales devront être prises sur la base de cette estimation. Le problème est qu'il est vraiment difficile d'estimer cela pour un logiciel. Planifier le poker est l'un des moyens de résoudre ce problème. Plutôt que de le voir simplement en additionnant le nombre de points d'histoire, pensez plutôt à cela comme une fonction plus complexe d'estimation aussi bien que possible, de faire le travail, de mesurer combien de temps cela a pris, d'itérer, puis d'extrapoler.

La discussion est plus importante qu'un certain nombre

Je trouve que la partie la plus importante des réunions de pointage est les discussions qui ont lieu. Si quelqu'un dans l'équipe n'est pas sûr de suggérer un nombre, alors il ne comprend probablement pas complètement l'histoire et il doit y avoir plus de discussions. Extrait du Manifeste Agile "Collaboration client sur négociation de contrat". Plutôt que de simplement spécifier un contrat écrit comme une histoire d'utilisateur et de dire que l'équipe a échoué si elle ne fait pas exactement ce que vous voulez, il est toujours préférable de parler de ce que le client veut vraiment jusqu'à ce que vous le compreniez.

Complexité contre effort

Pour répondre à votre question spécifique sur la complexité par rapport à l'effort, tout le monde semble avoir une opinion différente à ce sujet. Mountain Goat , qui sont les personnes qui fabriquent les cartes de planification de poker qui ont des chèvres sur le dos et dont le propriétaire Mike Cohn est grand dans le monde Agile / Scrum, dit que cela devrait être l'effort et non la complexité.

Il n'est généralement pas considéré comme une mesure du temps (voir l'exemple ci-dessous pour un contre-exemple) car les gens sont mauvais pour estimer le temps, avec d'autres facteurs affectant le nombre qu'ils donnent: par exemple, la pression pour maintenir le nombre bas afin que vous puissiez adapter plus de fonctionnalités dans, la pression pour donner un nombre plus élevé pour vous donner de la place si vous rencontrez un problème. La création de logiciels est difficile. Lorsque vous construisez votre 100e maison, vous pouvez estimer le temps qu'il vous faudra, car vous avez déjà construit 99 maisons. Si le logiciel que vous construisez est le même que les programmes précédents que vous avez construits, vous pouvez copier et coller, tout projet de logiciel vaut la peine et aura donc des problèmes que vous n'aviez pas prévus au début.

Comme pour les estimations de temps contenant des pressions cachées, une mesure de l'effort présente également des problèmes. Si un développeur junior estime une grande complexité, il peut avoir le sentiment de se laisser attaquer comme n'étant pas assez bon des autres qui lui donneraient une estimation inférieure. Cela est non seulement préjudiciable à vos estimations, mais aussi aux membres de l'équipe.

Les numéros de poker de planification ne sont pas des «nombres de jours» ou une autre mesure du temps, ils sont une mesure relative pour pouvoir comparer deux user stories. La première chose que vous devez faire dans une nouvelle équipe est d'établir une base de référence. Choisissez une histoire d'utilisateur qui se trouve au milieu de la plage de complexité et convenez en équipe d'un numéro au milieu de la plage que vous souhaitez lui attribuer. Désormais, toutes les autres user stories peuvent être numérotées par rapport à celle-ci. J'ai trouvé que cela le rend beaucoup plus facile.

Raisons pour lesquelles vous ne pouvez pas donner d'estimation

Lorsque les chefs de projet vous demandent quand un projet sera terminé, ils doivent comprendre la complexité de la question qu'ils posent. Les programmeurs ne sont pas des ouvriers d'usine, où leur productivité peut être mesurée en multipliant la vitesse à laquelle ils tapent par la durée de leur travail. Ils trouvent des réponses aux problèmes et c'est difficile. En jouant au poker de planification, vous identifiez d'abord les membres de l'équipe qui pensent qu'ils ne peuvent pas répondre à la question du numéro à attribuer, puis vous vous demandez pourquoi ils ne peuvent pas répondre à cette question. Je pense qu'il y a au moins quatre raisons:

  1. L'histoire est trop grande. Décomposez-le en histoires d'utilisateurs plus petites et plus spécifiques. N'oubliez pas que chaque user story doit fournir une valeur à l'utilisateur; entrée - processus - sortie = valeur.
  2. Ils ne comprennent pas assez bien le domaine problématique pour pouvoir dire combien de temps cela leur prendra ou même poser correctement toutes les questions. Allez parler à des gens qui en savent plus sur le domaine des intervenants / la programmation de ce type d'application, quoi que vous n'ayez jamais vu auparavant. Si cela n'est pas possible ou ne vous y mène pas, vous pouvez utiliser un pic de conception. Allez créer un prototype de solution, mais uniquement pour une durée limitée et spécifiée . Définissez la durée de la phase de prototypage, pas trop longtemps, puis revenez en arrière pour partager votre nouvelle compréhension.
  3. Vos parties prenantes ne sont pas suffisamment spécifiques. "Build me a cloud" n'est pas une user story acceptable. "Construisez-moi un système où je peux faire tourner des machines virtuelles à la demande" est préférable car il est plus détaillé, mais il n'est toujours pas au niveau où vous pouvez donner une estimation précise du temps qu'il vous faudra car il y en aura une centaine cachées hypothèses dans cette déclaration que votre partie prenante a que vous ne découvrirez pas jusqu'à ce que vous leur montriez quelque chose.
  4. Enfin, même si vous pouvez donner une estimation, ce sera probablement faux la première fois. L'estimation est un problème difficile et la meilleure façon que je connaisse pour résoudre des problèmes difficiles est d'utiliser la méthode scientifique. Collectez des données sur le nombre estimé par chaque membre de l'équipe, puis collectez des données sur le temps qu'il leur a réellement fallu ou sur la complexité de ce processus, bien que ce soit plus difficile, puis comparez-les au fil du temps. Finalement, vous aurez une idée de qui surestime et de qui sous-estime, puis vous devriez partager cela avec l'équipe. Les gens peuvent s'entraider à mieux estimer. Ces chiffres peuvent également être réinjectés dans votre outil de suivi pour aider à mieux prévoir la durée des histoires.

Conclusion

Je pense que le point devrait vraiment être la discussion, mais si vous avez vraiment besoin de donner un numéro à quelqu'un, essayez simplement d'en faire un qui soit indépendant du membre de l'équipe qui y travaille et de l'ordre dans lequel les histoires sont travaillées. L'important est d'accéder à un journal de retour qui est à la fois priorisé, de sorte que vous travaillez dessus dans le bon ordre et de la taille, afin que le chef de projet puisse voir à peu près combien de personnes vous pouvez intégrer avant votre date limite. Vous devriez pouvoir vous arrêter à la fin de toute itération et expédier avec toutes les fonctionnalités terminées qui avaient été démarrées.

avertissement

Vous pouvez estimer le temps nécessaire pour effectuer les tâches au sein de votre équipe autant que vous le souhaitez tant que vous gardez les chiffres pour vous. Une fois que vous avez permis à n'importe quel numéro d'échapper à l'équipe et d'être vu par d'autres personnes, ils feront des choses avec ce numéro que vous ne vouliez pas. Ils essaieront de l'utiliser pendant plusieurs jours pour terminer les tâches. Ils essaieront de vous maintenir à la cote de complexité relative et vous demanderont pourquoi il vous a fallu plus de temps pour terminer une user story qu'une autre avec le même nombre de points. Ils additionneront vos chiffres et les compareront aux numéros des autres équipes et vous demanderont pourquoi l'autre équipe `` fait plus de travail '' alors qu'elle complète plus de points d'histoire dans une période de temps. Vous pouvez'

De côté

Les numéros de poker de planification sont normalement distribués de telle sorte que les écarts entre les numéros continuent de s'agrandir. Je crois que cela vise à décourager les gens de se demander si une histoire d'utilisateur est un 16 ou un 17, si elle est plus grande qu'un 13, alors faites-en un 20.

Exemple

Je connais au moins une équipe qui n'utilise que les numéros 1, 2, 3 et 4 pour planifier le poker. Contrairement à la convention et contrairement à la discussion ci-dessus, ils les définissent comme des jours de programmation (en fait, des jours de programmation en paire, c'est-à-dire combien de jours il faudrait deux programmeurs travaillant ensemble sur la même machine pour terminer la user story). Si l'équipe pense qu'il faudrait plus de 4 jours pour terminer une user story, celle-ci n'est pas indiquée et le responsable du produit est invité à travailler avec l'équipe pour décomposer davantage l'histoire ou la spécifier plus précisément afin qu'elle puisse dans cette fourchette pour une future réunion de planification. Mais ceci est agile avancé et ne devrait probablement être utilisé que par des personnes qui sont déjà expérimentées dans l'utilisation des autres techniques.

Encaitar
la source
9

Je pense que les réponses de Frank et d'Encaita le couvrent à peu près, mais il y a d'autres choses à considérer:

Pourquoi utiliser des points d'histoire

Le but de l'estimation avec des points d'histoire est de donner la complexité relative du développement de fonctionnalités pour votre application. Une façon simple d'y penser est de prendre une histoire que vous avez dans le sprint à venir, par exemple un changement d'URL. Vous savez que c'est simple en termes de complexité, et a des critères d'acceptation clairement définis, donc toute l'équipe convient que même avec les tests, c'est un 1 (en utilisant l'échelle Fibo).

L'histoire suivante à estimer consiste à agréger un ensemble de données utilisateur et à les visualiser en amont. Maintenant, en tant que développeur, vous savez immédiatement que c'est beaucoup plus complexe que de changer une URL. Vous discutez de l'histoire et des critères d'acceptation et vous avez beaucoup de questions et pouvez voir plusieurs solutions possibles pour ce faire. Les autres développeurs et QA conviennent également que c'est très complexe. Vous êtes donc tous d'accord pour dire qu'il s'agit d'une histoire en 34 points. Il convient de noter que l'échelle de Fibo vous permet également d'indiquer le degré de confiance que vous avez dans l'esimate - plus les écarts entre les chiffres sont importants, moins vous avez confiance en votre estimation.

À ce stade, votre Scrum master devrait sauter et dire que cette histoire est trop grande et doit être décomposée en histoires plus petites et moins complexes. Vous pouvez aborder cela en faisant ce que l'on appelle des pointes - c'est juste un peu de temps réservé pour enquêter sur quelque chose. Donc, pour cet exemple, vous et les autres développeurs convenez que vous voulez 4 heures pour discuter et étudier les solutions techniques possibles.

Pour résumer une longue histoire, vous divisez cette grande histoire en quatre autres histoires de 5, 8, 8 et 13 points. N'oubliez pas que ces estimations portent toutes sur la complexité relative - elles n'ont pas à s'additionner à l'estimation d'origine et vous disposez maintenant de plus d'informations pour faire une estimation plus précise.

Vous convenez ensuite en équipe que pour ce sprint, vous viserez à faire l'histoire de 13 points, une histoire de 8 points plus le changement d'URL de 1 point que vous aviez déjà identifié. Soit un total de 22 points. Le sprint suivant, vous obtenez 27 points, le sprint suivant, vous obtenez 18 points. Après 3 sprints, vous pouvez commencer à avoir confiance en votre vitesse (la vitesse est la quantité de travail que votre équipe peut effectuer en un seul sprint). Pour obtenir la vitesse, prenez la moyenne des sprints précédents. Donc, dans cet exemple, la moyenne est (22 + 27 + 18) / 3 = 22,3 alors arrondissez-la au plus proche sur l'échelle de Fibo qui est 21.

Maintenant, pour le prochain sprint, visez simplement à obtenir 21 points.

Ne vous attardez pas à obtenir votre estimation de point d'histoire exactement - ce n'est pas une science exacte. Vous savez qu'un changement d'URL est beaucoup moins complexe que l'agrégation de données, il suffit donc de le noter en conséquence.

De plus, discuter de ces choses en équipe est une bonne chose. Revoyez vos estimations lors de la révision du sprint et discutez si vous en êtes satisfait ou non, puis insérez-les dans la prochaine session de planification du sprint.

L'estimation de toute l'équipe

Toute l'équipe doit se mettre d'accord sur une estimation unique pour chaque histoire. Une fonctionnalité n'est pas terminée tant qu'elle n'est pas prête pour la production. Le simple fait d'écrire le code n'est en aucun cas fait. D'après mon expérience, les équipes Scrum ont été beaucoup plus efficaces lorsqu'elles travaillaient en équipe. Prenons un exemple de l'équipe avec laquelle je travaille en ce moment. Quand j'ai rejoint, ils faisaient toutes les réunions de sprint et planifiaient le poker mais pendant le sprint le processus était de 1. Les BAs / Product Owners définissent les exigences comme des histoires avec des critères d'acceptation et des tests d'acceptation 2. Ils remettent ces exigences au développeur qui écrit ensuite le code 3. Le développeur a fusionné le code dans la branche de développement pour QA à tester 4. Test QA puis ils commencent à poser des questions et les tests échouent donc il revient dans le développement.

Qu'est-ce qui manque ici? Il n'y a pas assez de discussions à l'avance et chaque membre de l'équipe n'a vu que sa propre tâche. Maintenant, le BA / PO, les développeurs et le QA se réunissent avant d'écrire n'importe quel code pour discuter des exigences en détail et poser des questions à l'avance, puis poursuivre la discussion tout au long du sprint. Ceci est beaucoup plus efficace et conduit à des solutions de meilleure qualité.

La planification du poker facilite ce processus car elle oblige l'équipe à discuter de la fonctionnalité et à convenir, en équipe, de la complexité de la livraison de cette fonctionnalité. Dans le développement de logiciels traditionnels, le chef de projet était responsable de la livraison du projet, mais toute personne ayant une expérience de cette approche sait que cela ne fonctionne pas parce que le plus souvent, les gens ne prennent pas la responsabilité de leur part dans la livraison de l'application. Dans Agile, vous ne devriez pas avoir besoin de chefs de projet car l'équipe prend la responsabilité dans son ensemble de la livraison de l'application.

Estimation ponctuelle des tâches

À mon avis, avoir travaillé avec des équipes qui estiment le temps consacré à des tâches et des équipes qui ne font que des estimations de point d'histoire est NE PAS FAIRE D'ESTIMATIONS DU TEMPS! Ils ne sont en fait qu'une perte de temps. Ils ne sont pas aussi précis que les points d'histoire parce qu'ils sont spécifiques aux individus et non à l'équipe, et chaque individu aura une idée différente de l'estimation du temps (allumez la flamme).

Les points d'histoire acceptent que les choses, c'est-à-dire les exigences, changent tout le temps, donc vous avez vraiment besoin d'un indicateur de ce que l'équipe peut accomplir dans un sprint.

Une fois que vous avez compris la vitesse, vous pouvez mesurer vos livrables dans le temps car vous savez ce que vous pouvez faire à chaque sprint, par exemple toutes les deux semaines, vous savez quelles fonctionnalités peuvent être livrées. Votre Scrum Master et les propriétaires de produits devraient avoir des séances d'estimation pour anticiper les futurs sprints, puis vous pourrez obtenir un indicateur de la quantité de travail que vous ferez dans les prochains mois. Cela permet aux propriétaires de produits de prendre des décisions de priorisation sur les fonctionnalités à inclure dans l'application finale.

J'ai eu des développeurs qui demandent que nous estimions le temps pour les tâches afin de planifier, mais je suis en fait en désaccord avec cette approche (en fait, je suis fortement en désaccord avec cette approche) parce qu'elle n'est pas précise, par exemple ce que cela me prendra 4 heures signifie vraiment: un développeur peut inclure uniquement le temps sur la tâche elle-même, quelqu'un d'autre peut ajouter du temps pour faire des tasses de thé!

Les estimations de temps sont toujours remises à quelqu'un d'autre à des fins de création de rapports et surestiment également les éléments individuels de la fourniture d'une fonctionnalité par rapport à l'effort de toute l'équipe.

L'estimation n'est pas le plus gros problème

Soit dit en passant, déterminer l'estimation n'est pas le plus gros problème que les équipes doivent résoudre, je pense. La chose la plus importante est de travailler ensemble en équipe pour faire avancer les choses tout au long du sprint, afin de ne pas tout remettre pour les tests du dernier jour. Vous voulez voir un filet constant de fonctionnalités tout au long du sprint de 2 semaines. La dynamique d'équipe que j'ai expliquée ci-dessus en est une grande partie. L'estimation des points d'histoire vous aidera à planifier cela, car vous verrez quelles sont les grandes histoires qui doivent être décomposées en plus petites qui peuvent être livrées régulièrement dans les tests.

br3w5
la source
on dirait que la complexité est une sorte de mesure relative qui va donner une idée de l'effort que nous devons y consacrer. N'est-ce pas?
Jude Niroshan
C'est une mesure relative, et oui, cela donne juste une idée ou une indication approximative. La complexité n'est pas exactement la même chose que l'effort, mais ils peuvent être assimilés. Quelque chose peut être très complexe ou très simple. Ce qui pourrait signifier que c'est beaucoup d'efforts ou très peu. Les deux concepts peuvent certes être assimilés mais ils sont légèrement différents.
br3w5
Ne vous en faites pas trop, donnez simplement l'estimation qui vous convient le mieux. Vous aurez besoin d'expliquer votre pensée mais une fois que vous l'avez fait plusieurs fois avec l'équipe, vous comprendrez. Aucune technique d'estimation n'est parfaite mais je pense que les estimations ponctuelles sont meilleures que les estimations temporelles.
br3w5
Je pense que cette réponse illustre ma rancune avec les points d'histoire: ils confondent complexité et temps. Le temps et la complexité sont souvent corrélés, mais à mon avis, il n'y a pas de lien de causalité. J'ai travaillé sur des exigences extraordinairement complexes qui ont pris une heure, et j'ai travaillé sur des exigences d'une semaine fastidieuses mais simplement ennuyeuses. Le poker sprint ne fait pas la différence. J'ai par exemple 8 jours dans un sprint. J'ai besoin de savoir combien de temps prend une exigence afin de savoir si je peux l'entasser dans ce sprint. Connaître la complexité est bien, mais cela ne me dit pas ce que je dois savoir.
Cela vous dit qu'une fois que vous avez compris la complexité à laquelle vous pouvez vous adapter en 2 semaines - ce qui peut certainement changer, mais si vous avez besoin d'un indicateur et je pense qu'il est plus précis que les estimations de temps
br3w5
8

Wikipedia explique assez bien la planification du poker . Permettez-moi de récapituler certains de ce qui s'y trouve en mettant l'accent sur votre cas:

Pourquoi planifier le poker?

Tout d'abord, vous devriez tous être à bord pour savoir pourquoi vous faites un poker de planification par opposition à une estimation "normale". La raison est en fait assez simple: nous aspirons tous beaucoup de temps lorsqu'il s'agit d'estimer du temps pour une tâche. Presque toutes les études ont révélé que le cerveau humain est tout simplement incapable d'estimer une tâche qui prend un temps raisonnablement long. (C'est également une raison pour laquelle les billets qui dépassent 2-3 jours dans leur estimation sont à peu près sans valeur en termes d'estimation.)

Pourquoi la complexité plutôt que l'effort?

Cela va de pair avec ce qui précède. L'effort signifie généralement du temps , et nous aspirons à cela. La complexité est plutôt difficile à quantifier objectivement, ce qui est une bonne chose dans ce cas. C'est votre instinct qui vous dit que cette histoire va être complexe. Pour quelqu'un d'autre, cela peut être moins complexe. Mais vous n'avez pas besoin de quantifier exactement à quel point c'est vraiment complexe. Vous n'avez pas besoin d'obtenir ce nombre Xde complexité - par opposition à un effort chronométré, où vous devez finalement convenir que cela prend des Xjours ou plus.

Pourquoi cacher les cartes?

Les cartes avec votre complexité d'invité sont jouées cachées puis révélées d'un coup. Ceci est fait pour vous assurer que vous n'êtes pas influencé par les opinions des autres avant de faire votre propre estimation initiale. Si tout le monde a à peu près le même sentiment d'intestin en termes de complexité, alors vous avez terminé. S'il y a des nombres extrêmement différents, vous savez qu'il y a quelque chose à discuter caché là-bas. De cette façon, vous pouvez traiter très rapidement des histoires pour lesquelles tout le monde a la même idée de la complexité / de l'effort requis.

Pourquoi les numéros de Fibonacci?

Les nombres sur vos cartes sont typiquement des nombres de Fibonacci ou un autre type de séquence avec beaucoup de lacunes dans les nombres. C'est pour vous forcer à faire pleinement confiance à votre intuition. Si vous devez choisir entre 8 et 13, c'est beaucoup plus une affirmation que d'aller pour 9 ou 10. En outre, comme mentionné ci-dessus, les grandes différences sont là où se trouvent les problèmes cachés, donc en élargissant les écarts, vous augmentez les chances de mieux détecter ces problèmes.

Pourquoi est-ce que cela fonctionne?

Fait intéressant, les premières fois que vous faites un poker de planification, cela ne fonctionnera pas. C'est aussi simple que ça. Que signifie "3" ou "5"? Il n'y a pas de définition de la signification de chaque numéro (exprès!) Et c'est à toute votre équipe de découvrir la signification réelle de chacun de ces chiffres. Ce n'est qu'après avoir accepté d'estimer vos histoires dans ces chiffres - et après en avoir réalisé plusieurs - que vous avez une meilleure idée du moment où vous devriez augmenter un 5 et quand c'est plutôt un 8.

Une fois que vous combinez cela avec le concept de vitesse et mesurez vos progrès de sprint via ces points d'histoire, vous avez une toute nouvelle échelle d'efficacité qui est plus ou moins indépendante des estimations de temps traditionnelles.

Néanmoins, pour moi personnellement, le point le plus avantageux de la planification du poker est qu'en utilisant des nombres de fibonacci au lieu d'estimations de temps, vous avez beaucoup plus de facilité à détecter les incertitudes. Avec les estimations de temps classiques, vous n'êtes pas obligé de prendre des décisions aussi «extrêmes» (en raison des écarts de nombre), par conséquent, les estimations peuvent être assez rapprochées et l'équipe peut croire à tort qu'elle a assez bien compris l'histoire.

Exemple

Un exemple simple de ce qui se passe généralement est qu'une histoire est présentée, puis la personne A émet une objection. C'est quelque chose du genre "veuillez ne pas oublier que cette fonctionnalité affecte X et cela peut signifier qu'elle est plus coûteuse que ce que nous pensions jusqu'à présent". Le principal problème est qu'il y a toujours cette personne A à la table. Il y a toujours quelque chose qui inquiète quelqu'un. Si vous avez une discussion ouverte, vous n'avez aucune idée de l'ampleur de l'inquiétude de cette chose X.

Si vous faites des estimations cachées en fonction du temps, cela s'améliore un peu. Mais encore, une personne A avec une objection valable peut ne pas être une valeur aberrante claire dans son estimation pour le moment. D'un autre côté, avec la planification du poker, la personne A doit réfléchir davantage à l'ampleur du problème réel X. Pour deux problèmes différents, vous ne pouvez pas correctement distinguer leur importance par le "texte d'objection prononcé" ci-dessus. Même avec des estimations de temps, il est assez difficile de voir lequel pose le plus de problèmes. L'espoir d'utiliser le poker de planification ici est que vous vous retrouvez avec une objection à seulement 2-3 points différente des estimations des autres, mais l'autre objection qui s'est retrouvée à 5 ou 8 points de la médiane peut être l' incertitude la plus importante de votre planification de sprint.

Franc
la source
1
Monsieur, est-ce une question d'estimation du temps? Mais nous avons organisé des réunions de découpage pour chaque équipe de mêlée afin de donner des estimations de temps individuelles pour un ensemble de tâches donné pour cette équipe de mêlée particulière. Donc, je crois que ce porc de planification ne parle pas directement d'estimation de temps. N'est-ce pas?
Jude Niroshan
1
Oui .. relisez-le attentivement. Planifier le poker N'EST PAS une estimation du temps.
Frank
3

Après des dizaines d'itérations dans mon équipe, nous avons compris que les points d'histoire concernent principalement le pilotage de projet à moyen terme. Ils permettent au propriétaire du produit de se projeter 2 ou 3 sprints à l'avance et de prendre des décisions commerciales et de portée sur une version, en fonction d'une vitesse moyenne.

Nous avons découvert que les points d'histoire ne sont pas tellement utiles au niveau du sprint, car aucun 2 sprints ne sont similaires et il est impossible de prédire la quantité de travail à faire. Par conséquent, nous avons décidé que nous ne devrions pas être obsédés par la partie estimation et prendre simplement la planification de sessions de poker comme prétextes pour une conversation sur les fonctionnalités.

Cela rejoint un point soulevé par Mike Cohn ici .

En remarque, cela est vrai pour une équipe donnée, mais il n'y a pas de règle sur la façon dont les points d'histoire vous aideront. Je vous recommande d'abord de vous en tenir à la méthodologie, mais essayez de découvrir rapidement par vous-même si et comment elles sont utiles. Les rétrospectives vous aideront à y réfléchir.

guillaume31
la source
3

Le problème fondamental ici est qu'il est cassé. Le PM veut utiliser la planification du poker pour avoir une idée de la complexité de chaque histoire, avec l'intention de savoir à peu près combien d'histoires peuvent être intégrées dans un sprint (la vitesse de l'équipe).

En conséquence, c'est un "non basé sur le temps" qui est "basé sur le temps". Ce n'est pas étonnant que tout le monde soit confus.

Il existe des moyens de faire en sorte que cela fonctionne pour vous. Tout d'abord, oubliez l'effort et concentrez-vous sur la complexité. Oubliez tout sur le temps que cela pourrait prendre pour se développer et se concentrer plutôt sur les domaines que chaque histoire affecte. Si vous avez une histoire qui met à jour la base de données, le code du serveur, le code client et la documentation client, vous pouvez dire que c'est une histoire en 4 points. S'il ne s'agit que d'une modification du SQL DB, alors c'est une histoire en 1 point. Cela vous donne un moyen plus compréhensible de comprendre la complexité relative entre les histoires. (Vous devrez trouver des mesures qui conviennent à votre situation, peut-être tester les exigences de couverture ou la complexité de l'interface utilisateur)

Mon opinion générale est cependant que c'est une perte de temps inutile qui encourage simplement la planification du sprint comme s'il s'agissait de mini-projets en cascade. Qui se soucie vraiment du nombre de points d'histoire que vous pouvez intégrer dans un sprint? Si vous avez des histoires restantes à la fin d'un sprint, faites-les simplement dans la suivante. Cela étant, vous pourriez tout aussi bien faire en sorte que votre carnet de commandes soit de la taille de chaque histoire exceptionnelle que vous avez et les réduire progressivement au fil du temps. La livraison prend autant de temps (mais ce sera plus rapide si vous n'avez pas pris la peine de perdre 20% de votre temps dans les réunions de planification du backlog et du sprint). À la fin du projet, personne ne se soucie du nombre de récits qui ont été livrés. Ce qui importe aux gens, c'est le projet livré.

gbjbaanb
la source
2
L'ordre de développement n'a rien à voir avec la planification du sprint, c'est la planification du backlog ... et c'est tout simplement mieux de prioriser tout le backlog et de dire aux développeurs de se frayer un chemin dans (grossièrement) cet ordre Et donc peu importe comment vous aurez beaucoup à faire dans un sprint et combien de débordements dans le prochain sprint. Le client obtient ce qu'il obtient lorsque le temps / budget total est épuisé ou jusqu'à ce que l'arriéré soit terminé. Tout planifier ne changera rien à cela.
gbjbaanb
1
D'après mon expérience, les réunions de planification de sprint se poursuivent pendant un certain temps, et bien que discuter des histoires soit une bonne chose, c'est quelque chose qui n'a pas besoin d'être fait à l'avance, il vaut mieux le faire continuellement.
gbjbaanb
1
Ah, mais c'est tout l'intérêt d'Agile - si vous voulez des délais fixes, allez en cascade. Si vous voulez un développement itératif, où vous expédiez régulièrement / progressez la démo à votre client et qu'il continue à mettre à jour ses besoins, alors allez Agile. Ne combinez jamais les deux!
gbjbaanb
2
WRT: "si quelqu'un veut fixer la date limite et / ou le budget ..." Le problème ici est que sacrifier la portée est inacceptable pour l'utilisateur final, parce qu'il a besoin de tout cela à une date particulière, et parce qu'il a dessiné un arbitraire (souvent une analyse de rentabilisation) dans le sable pendant des mois, ils pensent que c'est tout à fait raisonnable et vous ne planifiez pas bien, car ils ont été amenés à croire que l'agilité résout ce problème pour eux, comme par magie. Ce va-et-vient insensé est le plus trouble pendant le Sprint Zero, ou les premiers. Dans la plupart des cas, les équipes sont repoussées lorsqu'elles se désengagent; et cela continue ad nauseam.
JoeBrockhaus
1
Je peux vous dire pourquoi ce n'est pas inutile ... mais vous n'aimerez pas la réponse. La raison de la planification du poker et de la planification du sprint est d'amener tout le monde à "s'engager" à faire un certain ensemble d'histoires. De cette façon, quand ils "s'engagent" dans trop d'histoires et ne peuvent pas tous les finir, cela devient un échec moral ("Mais vous vous êtes engagé!") Plutôt qu'un simple échec de processus, de planification, etc. Cela permet aux managers de pousser les gens de travailler des heures déraisonnables pour respecter leur "engagement". C'est l'une des nombreuses raisons pour lesquelles Scrum ne doit pas être classé comme une méthode Agile. C'est anti-programmeur.
Kyralessa
0

Le pointage de la user story permet également à l'entreprise de savoir si quelque chose doit être renégocié. si vous avez un mois pour terminer un travail que vous avez noté 100, vous pourriez avoir des ennuis. cela vous donne également la chance de diviser une histoire épique en quelque chose de plus petit qui a encore de la valeur et peut être complété en un sprint.

user2143783
la source