Velocity in Scrum: Wie man Leistung misst und verbessert

Atlassian Von Atlassian
Themen durchsuchen

Möchtest du wissen, wie schnell dein Scrum-Team wirklich arbeiten kann? Velocity ist ein Geschwindigkeitsmesser für dein Agile-Projekt und bietet beispiellose Einblicke in die Arbeitsleistung deines Teams. In diesem Leitfaden werden die Geheimnisse der Geschwindigkeit in Scrum gelüftet. Du erfährst, wie man sie berechnet und wie du diese wichtige Messgröße nutzen kannst, um die zukünftige Leistung deines Teams vorherzusagen.

Was ist Velocity in Scrum?

In Scrum und anderen Agile-Projektmanagement-Frameworks dient die Velocity (Geschwindigkeit) als Agile-Kennzahl für die Schätzung des Arbeitsaufwands, den ein Scrum-Team innerhalb eines bestimmten Zeitraums – typischerweise eines einzelnen Sprints – erledigen kann.

Du kannst die Geschwindigkeit in Story Points ausdrücken, einer Maßeinheit für die Dimensionierung von User Storys oder Tasks in Bezug auf Komplexität, Risiko und Unsicherheit. Story Points bieten eine differenziertere Methode zur Schätzung der Arbeit als zeitbasierte Messgrößen wie Stunden oder Tage.

Stell dir zum Beispiel eine User Story für die Entwicklung eines Anmeldebildschirms in einer App vor. Das Team könnte dieser Task einen Story-Point-Wert von 3 zuweisen, basierend auf der wahrgenommenen Komplexität und dem Aufwand, sie zu erledigen. Die Integration eines komplexen Zahlungs-Gateways könnte aufgrund der höheren Komplexität und potenzieller Risiken den Wert 8 erhalten.

Viele Faktoren beeinflussen die Anzahl der Story Points, die jedes Teammitglied während eines zweiwöchigen Sprints abschließen kann, wie zum Beispiel die jeweilige Erfahrung, die Komplexität der Tasks und die Arbeitsdynamik des Teams. Neue Scrum-Teams haben in der Regel durchschnittlich 5–10 Story Points pro Person für jeden zweiwöchigen Sprint.

Die Velocity des Teams zu verstehen, kann bei der kontinuierlichen Verbesserung helfen, sodass Teams Prognosen für zukünftige Sprints erstellen sowie realistische Ziele planen und setzen können. Diese Kennzahl hilft Teams dabei, einen stabilen Arbeitsrhythmus zu entwickeln, Projektzeitpläne vorherzusagen und die Erwartungen der Stakeholder zu berücksichtigen.

Wie berechnet man die Geschwindigkeit in Scrum?

Normalerweise berechnest du die Geschwindigkeit am Ende jedes Sprints, indem du die Story Points oder andere Maßeinheiten für alle vollständig abgeschlossenen User Storys summierst.

Hier ist der Schritt-für-Schritt-Prozess zur Berechnung der Geschwindigkeit in Scrum:

1. Plane einen Sprint

Bevor ein Sprint beginnt, skizziere alle User Storys im Produkt-Backlog und weise ihnen Punkte zu. Zum Beispiel:

  • Benutzerauthentifizierung zuweisen: 5 Punkte
  • Payment-Gateway-Integration hinzufügen: 8 Punkte
  • Suchfunktion implementieren: 3 Punkte
  • Eine Benutzerprofilseite erstellen: 13 Punkte
  • E-Mail-Benachrichtigungen implementieren: 2 Punkte
  • Datenbankabfragen optimieren: 21 Punkte
  • Ein Admin-Dashboard erstellen: 5 Punkte

Das Team sollte besprechen, wie es im kommenden Sprint die User Storys fertigzustellen gedenkt und dabei die Durchschnittsgeschwindigkeit früherer Sprints und andere Faktoren wie Feiertage oder externe Abhängigkeiten einbeziehen. Wenn die Durchschnittsgeschwindigkeit beispielsweise ohne Feiertage oder externe Abhängigkeiten 15 Punkte beträgt, könnte sich das Team für den nächsten Sprint auf User Storys mit insgesamt etwa 15 Punkten festlegen.

2. Abgeschlossene User Storys auflisten

Erstelle am Ende jedes Sprints eine Liste aller vollständig erledigten User Storys. Das sollten Storys sein, die ihre Akzeptanzkriterien erfüllt haben und die der Scrum Master und der Produktinhaber genehmigt haben.

Wenn eine User Story zu 90 % fertig ist, ist sie keine vollständig abgeschlossene Arbeit. Das Team sollte sie auf den nächsten Sprint verschieben und die Punkte anhand der verbleibenden Aufgaben neu bewerten.

3. Punkte überprüfen

Das Team sollte jeder abgeschlossenen User Story bereits Story Points zugewiesen haben. Falls Story Points aus irgendeinem Grund neu gewichtet werden müssen, ist dies der richtige Zeitpunkt dafür.

Nehmen wir zum Beispiel an, das Team hat im aktuellen Sprint drei User Storys fertiggestellt – "Benutzerauthentifizierung zuweisen", "Payment-Gateway-Integration hinzufügen" und "Suchfunktion implementieren". Du könntest diesen Aufgaben die folgenden Story Points zuweisen:

  • Benutzerauthentifizierung zuweisen: 5 Punkte
  • Payment-Gateway-Integration hinzufügen: 8 Punkte
  • Suchfunktion implementieren: 3 Punkte

4. Addiere die Punkte, um die Geschwindigkeit zu ermitteln

Als Nächstes musst du die Story Points für alle abgeschlossenen User Storys zusammenzählen. Die Summe der Story Points entspricht der Sprintgeschwindigkeit.

Im obigen Szenario wäre die Summe 5 Punkte + 8 Punkte + 3 Punkte = 16 Punkte. Die Geschwindigkeit für diesen Sprint wäre also 16 Punkte.

5. Durchschnittliche Geschwindigkeit

Du erhältst ein zuverlässigeres Maß für zukünftige Sprints, indem du die Durchschnittsgeschwindigkeit über die Anzahl der Sprints berechnest, die das Team absolviert. Das ist besonders nützlich für neu gegründete Teams oder solche, die sich in Größe oder Struktur geändert haben.

Wenn zum Beispiel die Geschwindigkeiten der letzten drei Sprints 14, 16 und 15 waren, dann wäre die Durchschnittsgeschwindigkeit (14 + 16 + 15)/3 = 15 Punkte.

Faktoren, die die Geschwindigkeit in Scrum beeinflussen können

Verschiedene Faktoren können die Scrum-Messgrößen und die Geschwindigkeit beeinflussen. Wenn du das verstanden hast, kannst du die Leistung des Teams besser planen und kontinuierlich steigern.

Teamgröße und Fähigkeiten

Die Anzahl der Personen in einem Team und ihre jeweiligen Fähigkeiten können die Arbeit beeinflussen, die das Team während eines Sprints erledigen kann. Ein größeres Team könnte in einem Sprint mehr Story Points abschließen. Allerdings können mehr Beteiligte den Kommunikations- und Koordinationsaufwand erhöhen.

Umgekehrt könnte ein kleines, hochqualifiziertes Team ein großes, weniger qualifiziertes Team übertreffen, indem es komplexe Aufgaben effizienter bewältigt.

Stabilität und Erfahrung im Team

Wenn Mitglieder des Scrum-Teams an mehreren Sprints zusammenarbeiten, werden sie wahrscheinlich viele der Macken ausbügeln können, die neue Teams behindern. Sie sind besser eingespielt und wissen, wer welche Aufgaben besonders gut erledigen kann.

Diese Teams haben gemeinsam viel Erfahrung gesammelt, was ihnen zugutekommt, wenn Probleme auftreten. Diese Vertrautheit kann die Geschwindigkeit erheblich erhöhen.

Komplexität von User Storys

Ein Sprint voller komplexer Storys bremst die Arbeit eines Teams normalerweise aus. Der Geschwindigkeitswert kann irreführend sein, wenn die Komplexität in den Story Points nicht korrekt abgebildet ist.

Um eine konstante Geschwindigkeit aufrechtzuerhalten, streben einige Teams deshalb ein Gleichgewicht zwischen "Quick Wins" und komplexeren Tasks innerhalb eines Sprints an.

Externe Abhängigkeiten und Einschränkungen

Wenn dein Team auf ein anderes Team angewiesen ist, um Datenbank-Updates oder API-Integrationen durchzuführen, und dieses Team spät dran ist, kann das die Geschwindigkeit deines Teams direkt verringern. Sich dieser Abhängigkeiten bewusst zu sein und sie durch eine effektive Kommunikation zwischen den Teams unter Kontrolle zu halten, kann negative Auswirkungen auf die Geschwindigkeit abmildern.

Beziehe auch Feiertage oder wichtige Firmenveranstaltungen in die Sprintplanung ein, da sie die verfügbare Arbeitszeit reduzieren.

Velocity in Scrum verwenden

Sobald du die Geschwindigkeit deines Teams kennst, wird sie zu einem leistungsstarken Tool für verschiedene Aspekte der Sprint-Planung und des Projektmanagements, darunter:

Schätzung zukünftiger Sprints

Die Durchschnittsgeschwindigkeit deines Teams zu kennen, hilft dir, Rätselraten zu vermeiden. Wenn dein Team in den letzten drei Sprints eine Durchschnittsgeschwindigkeit von 50 Story Points erreicht hat, hast du eine datengestützte Baseline für die Planung des nächsten Sprints. Wenn dein nächster Sprint-Backlog ungefähr 50 Story Points hat, kannst du davon ausgehen, dass dies realistisch ist.

Projektzeitpläne prognostizieren

Stakeholder verlassen sich eher auf datengestützte Schätzungen als auf Vermutungen oder Wunschdenken. Wenn dein Projekt-Backlog 200 Story Points hat und die durchschnittliche Geschwindigkeit des Teams 50 Story Points pro Sprint beträgt, kannst du getrost voraussagen, dass das Team wahrscheinlich etwa vier weitere Sprints benötigen wird, um das Projekt abzuschließen.

Über- und Unterengagement erkennen

Wenn die Geschwindigkeit eines Teams plötzlich auf 30 Story Points abfällt oder auf 70 steigt, ist das ein Alarmsignal. Ein stetiger Rückgang könnte bedeuten, dass sich das Team überfordert fühlt, und ein Anstieg könnte bedeuten, dass Teammitglieder unterfordert sind. Wenn du das beachtest, kannst du Anpassungen in Echtzeit vorzunehmen, wie zum Beispiel Tasks neu zuweisen oder Sprintziele überdenken.

Verbesserungen und iterativen Fortschritte kontrollieren

Wenn du die Geschwindigkeit über die Zeit verfolgst, kannst du herausfinden, ob dein Team effizienter wird oder ob bestimmte Probleme deine Aufmerksamkeit erfordern. Wenn deine Geschwindigkeit über mehrere Sprints von 40 auf 60 steigt, ist das ein Zeichen dafür, dass deine Prozessverbesserungen zu Ergebnissen führen.

Velocity in Jira verfolgen

Neben weiteren Agile-Berichten bietet Jira ein Velocity-Diagramm, damit dein Softwareteam die Velocity verfolgen, die künftige Leistung vorhersagen und die Sprintplanung vereinfachen kann. Dieses zentrale Tool zur Visualisierung des Arbeitsumfangs deines Teams hilft dir dabei, zukünftige Sprintziele genauer zu planen.

Jira bietet dir außerdem agile Kennzahlen, kontextbasierte Einblicke und Funktionen für die Berichterstellung und das Projektmanagement, die dein Team benötigt, um seine Planung und Leistung zu optimieren.

Velocity in Scrum: Häufig gestellte Fragen

Ist die Geschwindigkeit in Scrum dasselbe wie die Produktivität?

Nein, die Geschwindigkeit in Scrum ist nicht dasselbe wie die Produktivität. Die Geschwindigkeit ist in erster Linie eine Kennzahl zur Planung und Abschätzung, wie viel Arbeit ein Team in zukünftigen Sprints bewältigen kann.

Die Produktivität ist normalerweise eine umfassendere Kenngröße, die Faktoren wie die Qualität der Arbeit, die Effizienz der Prozesse und den Nutzen für das Unternehmen beinhalten kann.

Wie kann ein Team seine Velocity verbessern?

Teams können ihre Velocity verbessern, indem sie regelmäßige Retrospektiv-Treffen abhalten, um zu besprechen, was gut gelaufen ist und was nicht, und Verbesserungen für den nächsten Sprint planen. Die Minimierung von Kontextwechseln – die Reduzierung häufiger Wechsel zwischen verschiedenen Aufgaben oder Projekten – kann zu einer höheren und konsistenteren Velocity führen.

Welche Einschränkungen gibt es bei der Verwendung von Velocity in Scrum?

Velocity ist zwar ein nützliches Planungstool, hat aber Einschränkungen und sollte nicht die einzige Leistungskennzahl für die Bewertung eines Teams sein. Für einen umfassenderen Überblick über die Teamleistung solltest du erwägen, andere Agile-Kennzahlen zu verfolgen.

Eine wichtige Einschränkung ist, dass Velocity nicht die Qualität der Arbeit oder den erbrachten Geschäftswert misst. Es ist ein quantitatives Maß, das die qualitativen Aspekte der Komplexität einzelner User Storys nicht berücksichtigt.

Velocity ist teamspezifisch – sie ist kein Maßstab für den Vergleich der Leistung verschiedener Teams. Jede Gruppe innerhalb eines Teams kann unterschiedlich arbeiten, was zu unterschiedlichen Velocitys führt. Eine geringere Gesamt-Velocity bedeutet nicht automatisch, dass ein Team weniger erfolgreich ist als ein anderes.