Was ist die beste Erklärung für Story Points?


36

Wir fangen an, Story Points für unsere Agile-Entwicklung zu verwenden, aber ich finde es schwierig zu erklären und kann auch keine definitive Antwort darauf finden, was sie sind. Das Beste, was ich tun kann, ist auf andere Websites (wie http://blog.mountaingoatsoftware.com/tag/story-points ) zu verweisen und eine vage Verallgemeinerung dessen zu geben, was sie sind. Ich suche eine gute Erklärung mit einigen Anwendungsbeispielen, die für andere hilfreich wären. Gibt es gute Ressourcen zum Erklären von Story-Punkten?


1
Erklärung an wen oder wünschen Sie eine allgemeine Erklärung? Das Problem mit letzterem ist, dass es mit einigem Augenzwinkern behaftet sein kann, da nicht jeder eine ausführliche Antwort haben möchte.
JB King

Ein Link zu einer ausführlichen Antwort wäre ausreichend. Ich wurde von Managern, Produktmitgliedern, Teamleitern und Programmierern gleichermaßen gefragt. Es ist ein neues Konzept für die meisten von ihnen (auch für mich).
Six8

Antworten:


36

Das kann als Starthilfe dienen: Mike Cohn über Story Points . Aber dieses ist weitaus besser: Agile Entwicklungsteams: Umfang und Umfang mit Mike Cohn

Mikes Lösung für Softwareschätzungsmetriken ist einfach und effektiv. Biologische Fakten:

  • Das menschliche Gehirn ist einfach nicht in der Lage, die Zeit korrekt einzuschätzen. Vor allem, wenn mehr als ein paar Stunden.
  • Dies wird durch die Unsicherheiten beim Softwareentwickler, den psychologischen Druck durch das Management (wenn Sie schätzen, dass Sie sich verpflichten ...) und die unterschiedlichen Fähigkeiten im Team noch verstärkt.
  • Wir sind jedoch ziemlich gut darin, Dinge zu vergleichen. Wir sind dort ziemlich genau.

Die Idee ist, eine Referenz-User-Story zu nehmen und ihr dann eine willkürliche Anzahl von (Story-) Punkten zuzuweisen, während andere Storys Punkte erhalten, die mit dieser Referenz zusammenhängen.

Wenn Ihre Referenzgeschichte 100 Punkte und eine andere Geschichte dreimal so groß ist, sind es 300 Punkte.

Um Story Points in Zeitpunkte für Ihre Planung umzuwandeln, müssen Sie Ihre Geschwindigkeit kennen .

Um eine genaue Geschwindigkeit zu erhalten, müssen Sie nur wenige Iterationen durchführen und berechnen, wie viele Punkte Ihr Team in einer bestimmten Zeitspanne erzielt hat.

Es funktioniert .


5
+1 beste Erklärung. Es ist jedoch keine gute Idee, die Referenzstory 100 zu erstellen. wie es impliziert, dass Sie in Bezug auf die Referenz genau schätzen können. Dh meine nächste Aufgabe sind 42% der Arbeit der Referenz. Wie Sie bereits erwähnt haben, ist das menschliche Gehirn beim Schätzen schrecklich. Wir haben also eine Referenzgeschichte von 2 Punkten. Verwenden Sie dann die Fibonacci-Sequenz (je weiter Sie von der Referenzgeschichte entfernt sind, umso ungenauer ist die Genauigkeit). Planning Poker ist dein Freund.
Martin York

1
Wenn Sie nicht sehen wollen, Mike Cohn auf Youtube, hat er auch einen sehr guten Blog-Artikel über dieses Zeug: blog.mountaingoatsoftware.com/tag/story-points . Interessant ist, dass er selbst mit Punktesystem sagte, die Menschen seien nur bis ungefähr 8 gut, dann fangen sie an, zu unterschätzen.
DXM

Ich habe diese Antwort positiv bewertet und sie enthielt sehr wertvolle Informationen. Die Frage war jedoch eher technisch, was genau einen Story Point ausmacht, als wie man sie effektiv einsetzt.
Panzercrisis

5

Ich stimme mit allem überein @Pierre 303: sagte oben: (abgesehen von den 100 Bezugspunkten).

Das einzige, was ich hinzufügen möchte (Hervorhebung), ist, dass wir nicht gut darin sind, Aufgaben abzuschätzen. Wir können Aufgaben relativ zu anderen Aufgaben schätzen, solange sie ungefähr gleich groß sind. Je größer der Unterschied zwischen den Aufgaben ist, desto schlimmer wird es.

Daher bin ich nicht einverstanden, einen Startpunkt von 100 zu verwenden.

Es ist nicht so, als würden Sie die nächste Aufgabe auf 42% der Referenzaufgabe schätzen. Es ist entweder die gleiche Hälfte der Arbeit, die doppelte Arbeit, die dreifache Arbeit usw.

Unser Team nutzt Planing Poker : Hier haben wir eine Referenzaufgabe von 2 Story Points. Wir verwenden dann die Fibonacci-Reihe, um Aufgaben zu schätzen: 1,2,3,5,8,13,21, Huge ,? relativ zur Referenzaufgabe (Anstelle der Fibonacci habe ich gesehen, dass andere Teams Potenzen von 2 verwenden. 1,2,4,8,16,32, Huge ,?) Ich habe gesehen, dass andere Teams (kleine (1), mittlere ( 2), groß (3), XLarge (4), als sie die Geschwindigkeit berechneten, funktionierte sie immer noch.).

Der Punkt ist, dass wir mit zunehmender Größe der Aufgabe im Verhältnis zur Referenzaufgabe weniger in der Lage sind, ihre Kosten genau abzuschätzen. Es macht also keinen Sinn, es zu versuchen. Dies spiegelt sich in der größeren Steigung am Ende des Schätzpfads wider.

Also, wenn Ihre Referenzaufgabe 2SP ist. Dann ist es relativ einfach, eine Schätzung von 1/2/3/5 vorzunehmen, da die Aufgaben von ähnlicher Größe sind. Sobald Sie die 3-fache Größe der Referenzaufgabe (5SP) überschritten haben, wird die Schätzung schwieriger (Ist 8/9 / 10SP wichtig?) Alles, was Sie sagen können, ist, dass es größer als 5SP und kleiner als 13SP ist, dann passt 8SP zur Rechnung.

Alles mit einem SP-Wert von 13/21 / Huge ist zu groß für den Sprint-Rückstand. Dies sind Schätzungen für Dinge, an denen Sie noch nicht bereit sind, tatsächlich zu arbeiten (und die daher nicht in kleinere Aufgaben zerlegt wurden (zerlegen Sie sie erst, wenn Sie sie auch benötigen)). Sie geben Ihnen jedoch eine Schätzung für die Größe einer Aufgabe im Produkt-Backlog (was eine zukünftige Planung ermöglicht). Wenn Sie an dem Punkt angelangt sind, an dem Sie sie bearbeiten möchten, sollten Sie über ausreichende Kenntnisse verfügen, um sie für den Sprint-Rückstand in kleinere Aufgaben aufzuteilen und sie einzeln neu zu schätzen (Hinweis: Es ist ein häufiges Missverständnis, dass die Summe aus die Teile entsprechen dem Original).

  • Alles, was Sie als riesig einschätzen, muss in kleinere Aufgaben unterteilt werden.
  • Etwas, das geschätzt wird als? bedeutet, dass es nicht gut genug definiert ist, um abzuschätzen.
    Sie müssen eine bestimmte Aufgabe hinzufügen, um die Aufgabe zu definieren
    (dh eine Dokumentation oder Präsentation schreiben).

2

Story Points sind ein relatives Maß dafür, wie schwierig eine Aufgabe ist. Dies liegt daran, dass der Mensch tatsächlich bessere relative Schätzungen als genaue Messungen hat.

Die Art und Weise, wie Sie Story Points verwenden, besteht darin, dass Sie zwei Aufgaben im Projekt ausführen und ihnen zwei unterschiedliche Story Point-Werte zuweisen. Anschließend schätzen Sie die anderen Aufgaben anhand dieser beiden Geschichtspunkt-Näherungen als Grundlage für Ihre Schätzung. Dh Aufgabe C ist nicht viel schwieriger als Aufgabe A, aber unglaublich einfacher als Aufgabe B, so dass es nur um 2 Story Points mehr Arbeit als Aufgabe A geht.

Wenn Sie alle Anforderungen, die Sie bisher haben, abgeschätzt haben, schätzen Sie, wie viele Sie in einem Sprint erledigen können. In den nächsten Sprints schätzen Sie, wie viele Sie bereits absolviert haben. Die Story Points einer Anforderung werden nur dann als erledigt gezählt, wenn die Anforderung erfüllt ist. Es gibt keine "80% vollständig" in Scrum. Dies liegt daran, dass Menschen die Vollständigkeit eigentlich schlecht einschätzen können. Nach ein paar Sprints sollten Sie eine Vorstellung davon haben, wie viele Story Points Sie pro Sprint machen können.

Wie schätzen Sie? Sie können Planning Poker verwenden , um zu bestimmen, wie viel Arbeit Ihre Entwickler im Verhältnis zu Ihren Basisanforderungen für erforderlich halten.

Ich würde auch empfehlen, The Agile Samurai zu lesen . Ich finde es gut, diese und andere agile Konzepte zu erklären.

Hier ist ein Link mit mehr zu Story-Punkten.

Hier ist ein weiterer Link.


2

Sie sind Zeitverschwendung.

Bildbeschreibung hier eingeben

http://www.amazon.com/Lean-Trenches-Managing-Large-Scale-Projects/dp/1934356859/

Interessant, dass diese Meinung jetzt von dem Typ stammt, der Scrum und XP von den Trenches geschrieben hat und dessen Firmenname ( Crisp ) auf so vielen Decks von Planungspokerkarten zu finden ist, die von so vielen Teams auf der ganzen Welt verwendet werden.

Der letzte Satz des OP: "Gibt es gute Ressourcen für die Erklärung von Handlungspunkten?" Ja, dieses Buch ist eine gute Ressource. Denkanstoß.


Eine Meinung darüber abzugeben, ob sie nützlich sind oder nicht, beantwortet nicht die Frage, was sie sind.
Bryan Oakley

0

Die einfachste Erklärung, die ich finden kann, ist die Verwendung eines Objekts, das greifbar ist und ein konkretes Beispiel liefern kann.

Nehmen Sie ein Wohnmobil mit. Wenn ich im Geschäft mit Mobilheimen tätig wäre, würde ich wissen, dass das Erstellen einer einzelnen Breite normalerweise 5 Punkte (Punkte, Frösche, Widgets ... die Messform ist willkürlich) und daher das Erstellen einer doppelten Breite etwa das Doppelte des Aufwands oder 10 Punkte erfordern sollte , Frösche, Widgets).

Die Denkweise des Programmierers wird an dieser Stelle einschreiten und über einen rationalisierten Ansatz sprechen. Es dauert nicht doppelt so lange, da die Infrastruktur den größten Teil der Zeit in Anspruch nimmt. Das ist unvermeidlich. Harp auf die Tatsache, dass dies eine Schätzung in (Punkten, Fröschen, Widgets) ist, da wir NIEMALS in der Zeit genau schätzen können und somit die Schätzung in (Punkten, Fröschen, Widgets) den Glauben aufhebt, dass wir können.

Um zu wissen, wie lange es dauern wird, etwas aufzubauen, werden wir unsere Trends im Laufe der Zeit nutzen. Daher werden unsere Schätzungen im Laufe der Zeit immer genauer.

Vergessen Sie nicht, Poker zu planen, wenn das Team bereit ist.


0

Wie andere bereits erwähnt haben, sind Story Points ein relatives Maß für die Komplexität einer User Story. Der wahre Nutzen von Story Points wird realisiert, wenn

  1. Die Punkte werden von der für die Umsetzung zuständigen Einheit (entweder eine Einzelperson oder das Team) gemessen.
  2. Metriken werden für die Anzahl der Gesamtpunkte gespeichert, die innerhalb einer konstanten Dauer (Geschwindigkeit) von derselben Einheit vervollständigt werden.

Nach einigen Iterationen der Messung von Story-Punkten und der Verfolgungsgeschwindigkeit sollten Sie in der Lage sein, genau abzuschätzen, wie viele Story-Punkte in einen bestimmten Zeitblock passen (Iteration oder Sprint bei Verwendung von Scrum). Beachten Sie, dass das Anwenden dieser Technik auf eine Gruppe und der Versuch, diese Metriken für ein anderes Team zu verwenden, nicht gut funktionieren. Das heißt, wenn Team A in einem zweiwöchigen Sprint 120 Story-Punkte erreichen kann, ist es unrealistisch, von Team B die gleichen Ergebnisse zu erwarten.

Wie bereits erwähnt, ist das Planen von Poker eine große Hilfe bei der Verwendung dieser Methode, da es dabei hilft, Geschichten zu identifizieren, die einer weiteren Verfeinerung bedürfen.


1
"Wie andere bereits erwähnt haben, sind Story Points ein relatives Maß für die Komplexität einer User Story." Beachten Sie, dass Mike Cohn tatsächlich argumentiert, dass "Es ist Mühe, nicht Komplexität". Eine ausführliche Diskussion zu diesem Thema finden Sie unter mountaingoatsoftware.com/blog/its-effort-not-complexity .
Datentyp
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.