Velocity

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.

Tipp

Wenn Sie noch Fragen bez├╝glich Apache haben, dann k├Ânnen Sie gerne den jeweiligen Glossar dazu besuchen und sich ├╝ber das Thema informieren.

├ť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