Scrum ist ein Modell, wie man agile, also sich ständig verändernde, Produkt- und Softwareentwicklung durchführen kann. Dabei spielen drei Begriffe eine zentrale Rolle – empirisch, inkrementell und iterativ. Empirisch bedeutet, auf der Erfahrung fußend. Dies ist ein wichtiger Faktor, ohne den eine eben an der täglichen Erfahrung getestete Software nicht entwickelt werden kann. Inkrementell wird ein Vorgehen speziell im Bereich der Softwareentwicklung genannt. Es bedeutet, die Software oft mit kleinsten Schritten aber doch kontinuierlich weiterzuentwickeln. Iterativ beschreibt die Wiederholung ein und desselben Vorgang. Dabei soll man sich der Lösung des anstehenden Problems immer weiter annähern.
Transparenz ist wichtig für den Entwicklungsprozess
Über diese drei Vorgänge muss große Transparenz herrschen, denn sonst kann man die gewonnenen empirischen, inkrementellen und iterativen Ergebnisse nicht vergleichen, anschließend überprüfen und wenn nötig anpassen. Scrum ist eine Learing-By-Doing-Herangehensweise – daher kann der Erfolg nicht garantiert werden. Allerdings können im Laufe eines Prozesses auch „Abfallergebnisse“ auftreten. Diese stellen wertvolle Weiterentwicklungen für andere Gebiete dar, sind aber im laufenden Prozess nicht zu verwerten.
Ziel des Scrum-Modells
Das Ziel des Scrum-Modells sind schnelle und kostensparende Schritte einer Produktentwicklung entlang eines definierten Weges. Allerdings wird der Weg niemals ein gerader, der Definition folgender sein. Dies ist dem System aus steter Eigenentwicklung und –anpassung immanent. Wichtig ist auch, dass das Ende des Weges, also das Ziel, immer aus der Sicht eines späteren Anwenders heraus definiert wird. Schritt für Schritt, oder wie es in der Modellsprache heißt, mit kurzen Sprints, wird dieses Ziel erreicht. Nach jedem Sprint beginnt ein transparenter Vergleich zwischen dem vorher gewählten Ziel und dem nun erreichten Zwischenziel. Anschließend wird in den meisten Fällen eine Justierung am eingeschlagenen Weg vorgenommen. Dies treibt man solange voran, bis man entweder das definierte Ziel erreich, oder ein befriedigendes erreicht hat.
Wann und warum soll man Scrum verwenden?
In der Produktentwicklung ist Scrum dann von großer Hilfe, wenn man keine Vorschriften zur Erreichung von Zielen hat, diese Ziele aber bekannt sind. Es hilft, einen großen Brocken in mehrere Zwischenziele zu verwandeln und somit die Aufgaben als machbar zu definieren. Diese Aufteilung hilft auch, die richtigen Experten an den richtigen Stellen im Prozess einzusetzen.