Velocity

Velocity

Copyright © Shutterstock/ESB Professional

Was ist Velocity?

Der Begriff Velocity (aus dem Englischen: Geschwindigkeit) findet in der IT in unterschiedlichen Anwendungsgebieten Verwendung. Neben dem Java-basierten gleichnamigen Apache-Project und der Velocity Template Language spielt der Begriff insbesondere in der agilen Softwareentwicklung mit dem Vorgehensmodell Scrum eine entscheidende Rolle. In diesem Zusammenhang lĂ€sst die Velocity RĂŒckschlĂŒsse darauf zu, wann ein Projekt voraussichtlich fertiggestellt sein wird, welchen Fortschritt es bereits gemacht hat und mit welchen Kosten zu rechnen ist. Die Ermittlung dieser Geschwindigkeit kennt verschiedene Vorgehensweisen. Eine Steigerung dieses Parameters ist mit spezifischen Vor- und Nachteilen verbunden.

Überblick und Allgemeines

Innerhalb des Scrum-Verfahrensmodells beschreibt die Velocity die bei einem Sprint erreichte Geschwindigkeit eines Teams. Diese Team-Geschwindigkeit basiert auf den erledigten User-Storys. Pro erledigter User-Story werden sogenannte Story-Points abgezogen. Die Geschwindigkeit entspricht dann der Anzahl der durchschnittlich erledigten Story-Points. Die einfachste Berechnungsmethode besteht in der Addition der Story-Points abgeschlossener User-Storys am Ende jedes Sprints.

Als Gegenbegriff ist die Bezeichnung Velocity-Offset gebrĂ€uchlich. Dieser besteht in der Summe sĂ€mtlicher nicht-erledigter User-Storys. Davon abgeleitet ist der Velocity-Offset-Faktor. Dieser entspricht den Story-Points, die dazu beitragen, ein Scrum-Team beim folgenden Sprint zu bremsen. Solche User-Storys, die in einem Springt nicht abgearbeitet werden können, werden in den kommenden Sprint delegiert. Geht es nun um die Planung dieses nachfolgenden Sprints, so hat das Team diese Story-Points zu berĂŒcksichtigen und kann sich entsprechend weniger User-Storys annehmen.

Stellenwert in Scrum

Innerhalb eines Projekts der agilen Softwareentwicklung mit Scrum erlaubt die Velocity eine EinschĂ€tzung der Frage nach dem voraussichtlichen Zeitpunkt der Fertigstellung eines Projekts. Der Parameter gibt RĂŒckschluss darauf, welche und wie viele Komponenten bereits fertiggestellt wurden. Auf dieser Basis trĂ€gt die Geschwindigkeit auch dazu bei, die entstehenden Kosten einzuschĂ€tzen.

Die Berechnung beziehungsweise Ermittlung der Velocity kennt grundsÀtzlich zwei Verfahrensweisen. Haben die Scrum-Teams bereits Erfahrung in der Zusammenarbeit, ist eine relativ prÀzise EinschÀtzung der Schnelligkeit bereits im Vorfeld möglich. Handelt es sich um eine erstmalige Kooperation der Scrum-Teams, so existieren noch keine historischen Daten, auf Basis derer Eine EinschÀtzung möglich wÀre. Jedoch besteht die Möglichkeit, die Daten anderer Teams zu Rate zu ziehen. Hierbei muss es sich im Sinne einer belastbaren EinschÀtzung um solche Teams handeln, die bereits vergleichbare Projekte in Angriff genommen und erfolgreich beendet haben.

Eine Alternative Vorgehensweise besteht in der konkreten Planung von Sprints. Werden zwei Sprints durchgefĂŒhrt, entstehen Daten ĂŒber die obere und untere Velocity. Nach Beendigung der Sprints liegen spezifische Werte vor, sodass die SchĂ€tzungen nicht weiter zu berĂŒcksichtigen sind.

Bedeutung und Interpretation

Die durchschnittliche Velocity stellt einen Parameter dar, der eine Prognose der zur Fertigstellung einer User-Story zulÀsst. Dies ist an verschiedenen Schnittstellen eines Scrum-Projekts von Bedeutung. Auch bei der Planung eines Release spielt die Schnelligkeit eine wichtige Rolle. Eine Voraussetzung einer entsprechenden Nutzung der Geschwindigkeit besteht darin, dass die Story-Points der User-Storys bereits in ihrer richtigen Reihenfolge festgelegt und geschÀtzt wurden. Nur wenn diese Werte vorliegen, ist eine EinschÀtzung beziehungsweise Prognose der Fertigstellung denkbar.

Idealerweise wird die Geschwindigkeit am Ende eines Sprints ermittelt. Erst an diesem Zeitpunkt sind die User-Storys abgeschlossen und lassen sich entsprechend deklarieren. Die Ermittlung der Schnelligkeit sowie auch des Velocity-Offsets sollte im Vorfeld des nĂ€chsten Sprints erfolgen. Dies hĂ€ngt damit zusammen, dass dieser Faktor in der Sprint-Planung der Gesamtzahl möglicher User-Storys gegenĂŒbergestellt wird.

Erhöhung der Velocity: Chancen und Risiken

Mit einer zunehmenden Zahl von historischen Daten und anderen Werten erscheint es leichter, die Velocity einzuschĂ€tzen und kĂŒnftig zu erhöhen. Eine optimierte Geschwindigkeit kann zu einer Steigerung der Effizienz beitragen. Zur Steigerung der Schnelligkeit tragen auch eine Verbesserung der Team-Zusammensetzung oder eine optimierte Aufgabenverteilung bei. Auch eine durchdachte Nutzung geeigneter Werkzeuge kann ihren Beitrag zur Erhöhung der Geschwindigkeit leisten. Gleichfalls können diese Faktoren jedoch auch in ihr Gegenteil umschlagen und die Geschwindigkeit bremsen. Bereits eingespielte Teams mĂŒssen sich bei einer Änderung der Team-Stuktur erst neu finden und einarbeiten. Bei EinfĂŒhrung neuer Tools bedarf auch deren Nutzung zunĂ€chst einer Einarbeitung.

Eine naheliegend erscheinende Methode zur Erhöhung der Schnelligkeit liegt in Überstunden. Diese sind geeignet, um kurzfristig zu einer deutlichen Steigerungsrate beizutragen. Allerdings ist ihr nachteiliger Effekt zu berĂŒcksichtigen, dass sie zu erhöhtem Stress im Team beitragen und daher grĂ¶ĂŸere Regenerationsphasen erfordern. Aus diesem Grunde ist die Nachhaltigkeit dieser Maßnahme anzuzweifeln. Ebenso ist ein möglicher QualitĂ€tsverlust in Folge abnehmender Motivation zu berĂŒcksichtigen. Da das Wachstum der Geschwindigkeit Grenzen hat, sind hier Chancen und Risiken der Steigerungsmaßnahmen gegeneinander aufzuwiegen.

Stellenwert von Velocity in der Entwicklung und in Projekten

Eine richtige EinschĂ€tzung und Anpassung der Velocity stellt einen wichtigen Eckpfeiler in Projekten mit dem Verfahrensmodell Scrum dar. Der Parameter unterstĂŒtzt Entwicklungsteams und Scrum-Master bei der Steuerung und Planung der Projekte. Auf diese Weise sind Release-Termine oder Lieferfristen leichter einzuhalten. Ebenso lassen sich durch die verbesserte EinschĂ€tzung der Kosten auch die Preise fĂŒr die Endkunden exakter ermitteln.

Hierbei ist es jedoch von Bedeutung, die Geschwindigkeit stets im Fokus zu behalten. Insbesondere Änderungen dieses Werts sind ernst zu nehmen. Ein Fehler ist es, wenn das Entwicklungsteam unter der Annahme einer konstanten Geschwindigkeit arbeitet, auch wenn eine Änderung stattgefunden hat. Daher ist es erforderlich, die SchĂ€tzungen im Verlaufe eines Projekts zu ĂŒberprĂŒfen und gegebenenfalls Anpassungen vorzunehmen. Werden diese Aspekte berĂŒcksichtigt, so ist die Velocity ein wertvoller Parameter, der Scrum-Master und Entwicklungs-Teams durch die verschiedenen Prozesse eines Projekts begleitet und ihnen dabei hilft, wichtige Fristen einzuhalten.

Tipp

Wenn Sie noch Fragen bezĂŒglich eines Online Marketing Themas haben, dann können Sie gerne unseren Glossar besuchen und sich ĂŒber das Thema informieren, wo Sie noch speziell Fragen haben.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte