LU03f - Scrum

Sequenzielle Vorgehensmodelle setzen voraus, dass ein Projekt von Anfang bis Ende planbar ist und die Projektergebnisse frühzeitig und weitgehend vollständig spezifiziert werden können. Agile Vorgehensmodelle wie Scrum dagegen gehen davon aus, dass bei Beginn eines Projekts vieles noch unsicher ist und erst während des Projekts geklärt werden kann. Sie eignen sich daher besonders gut für komplexe IT-Projekte.

Eine Besonderheit des Scrum-Verfahrens besteht darin, dass sich die Entwicklerteams selber organisieren und kein Projektleiter vorgesehen ist. Entsprechend hoch sind die Anforderungen an alle Projektbeteiligten.

Bei Scrum wird der Projektverlauf in feste Zeitabschnitte, sogenannte «Sprints» unterteilt. In jedem Sprint wird das Endprodukt inkrementell weiterentwickelt. Ein Sprint kann erst abgeschlossen werden, wenn die für diesen Zeitabschnitt geplante Funktionalität fertig entwickelt und abgenommen worden ist. Gleichzeitig gelten bei Scrum die in der Softwareentwicklung bewährten Schritte «Anforderungsspezifikation - Design - Implementierung - Test». Diese stellen aber keine eigenen Phasen dar, sondern finden jeweils innerhalb eines Sprints statt.

Die spezifizierten Anforderungen werden im “Product Backlog” festgehalten. Dieser umfasst somit die komplette Funktionalität des erwarteten Endprodukts. Funktionen oder Teilfunktionen, die in einem bestimmten Sprint zu realisieren sind, werden in den «Sprint Backlog» übernommen. Folgende Grafik verdeutlicht dieses Arbeitsprinzip:

Abbildung 5: Arbeitsprinzip bei Scrum

Ein Sprint-Zyklus dauert typischerweise 30 Arbeitstage, wobei täglich (im «Dailv Scrum») die Aktivitäten der nächsten 24 Stunden geplant werden.

Ein Projekt, das nach Serum abgewickelt wird, muss folgende Rollen besetzen:

Ohne Planung und Koordination geht es auch bei einem Scrum-Projekt nicht. An die Stelle von Projektsitzungen treten hier folgende «Zeremonien»: