Eine der populärsten Methoden, Software (und andere Produkte) zu entwickeln, ist heute das Agile Development geworden. Es basiert auf der Annahme, dass ein Produkt in inkrementellen Schritten entwickelt wird und das es statt einem ausformulierten Plan Zielvorgaben gibt. Eine dieser agilen Methoden ist Scrum. Das Wort kommt aus dem englischen Rugby und bezeichnet Gewühle – weil sich in der Tat zunächst ein Projekt als ein Knäul aus Anforderungen darstellt, das dann Stück für Stück entwirrt wird.
Bei Scrum gibt es relativ wenig Bürokratie und Formalien. es ist stark kollaborativ und setzt darauf dass Menschen zusammen besser arbeiten als jeder für sich alleine.
Wichtige Bestandteile sind:
Produkt-Owner
Er ist verantwortlich für die Features des Produkts, für die finanziellen Aspekte und für die Kommunikation zwischen Entwicklern und Shareholdern, wie Kunden und Mitglieder anderer Abteilungen.
Scrum-Master
Der Scrum-Master kümmert sich im wesentlichen darum, dass die Prozesse funktionieren. Er hat ein Augenmerk auf die Einhaltung der Scrum-Richtlinien und vermittelt, wenn es Probleme im Team gibt.
Entwicklungsteam
Dieses besteht aus den verschiedenen Webdesignern, Programmierern und Testern. Sie machen die eigentliche Arbeit und haben dabei weitgehend Freiheiten. Eingeschränkt sind sie nur durch die Länge eines Sprints.
Produkt-Backlog
In diese Liste werden alle Features einer Software eingetragen, die gewünscht sind. In der Regel werden die am Anfang als so genannte User-Stories formuliert. Diese sind erst sehr allgemein gehalten und werden dann immer detaillierter.
Sprint
Ein Sprint ist der Zeitraum, in dem Produktteile entwickelt sind. Er kann von einer Woche bis zu vier Wochen lang sein, aber in der Regel werden zwei Wochen eingerichtet. Innerhalb dieses Zeitraums organisiert sich das Entwicklungsteam selbst und verteilt die Aufgaben unter sich.
Sprint-Backlog
Das ist so etwas wie die Aufgabenliste der Entwickler. Gemeinsam mit dem Produkt-Owner werden Entwicklungsteile aus dem Produktbacklog entnommen und in das Sprintbacklog überführt. Diese Teile werden dann im nächsten Sprint entwickelt.
Daily Scrum
Jeden Tag treffen sich alle Beteiligten zu einem kleinen, nicht länger als 15 Minuten dauernden Meeting und besprechen notwendige Angelegenheiten. Hier liegt in der Kürze die Würze.
Burndown-Charts
Auf ihnen wird aufgezeichnet, wie der Fortschritt des Teams ist. Eine Ideallinie gibt an, welche Entwicklungsteile in den jeweiligen Sprints erledigt werden sollen und eine andere Linie gibt an, wie der tatsächliche Status ist. So kann ein Produkt-Owner jederzeit sehen, ob er im Plan ist.