Suchen

Definition „Scrum (Softwareentwicklung)“ Was ist Scrum?

Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Stephan Augsten

Scrum stammt aus der Softwareentwicklung und beschreibt agile Methoden der Softwareerstellung. Es hat sich als generelle Vorgehensweise etabliert und ist nicht auf die Softwareentwicklung beschränkt. Scrum kommt in der Produktentwicklung zum Einsatz.

Firmen zum Thema

Das Scrum Team arbeitet und organisiert sich selbständig, die Koordination erfolgt in Meetings (Daily Scrum) sowie durch den Scrum Master.
Das Scrum Team arbeitet und organisiert sich selbständig, die Koordination erfolgt in Meetings (Daily Scrum) sowie durch den Scrum Master.
(© aa_amie - Fotolia.com)

Die wichtigsten Grundzüge von Scrum

Da komplexe Entwicklungsprojekte oftmals nur schwer im Vorfeld zu erfassen und zu planen sind, nutzt Scrum eine alternative Vorgehensweise. Scrum beruht im Gegensatz zu herkömmlichen Modellen nicht auf detailliert ausformulierten Lasten- und Pflichtenheften oder auf abstrakten Beschreibungen, sondern auf iterativen Verfahren mit vielen empirischen Zwischenschritten.

Mit Scrum sollen die in großen, komplexen Projekten zu Beginn oft üblichen Unklarheiten mit konkreten Zwischenergebnissen ersetzt werden. Anhand dieser Zwischenergebnisse findet eine kontinuierliche Verbesserung und Verfeinerung der Anforderungen statt. Eine Detailplanung erfolgt nur, um das nächste Zwischenergebnis zu erzielen.

Die Anforderungen lassen sich dadurch Schritt für Schritt umsetzen. Ziel ist es, hochwertige Produkte in kurzer Zeit und mit möglichst geringen Kosten zu entwickeln, indem der komplette Prozess auf das Wesentliche konzentriert bleibt.

Ein wichtiger Grundsatz innerhalb von Scrum ist die Transparenz für alle Beteiligten. Die Fortschritte im Projekt und die auftretenden Probleme und Hindernisse werden für alle nachvollziehbar festgehalten. Die Gesamtkomplexität eines Projekts versucht Scrum durch das Erstellen von kleinen, weniger komplexen Zwischenschritten aufzubrechen.

Scrum richtet sich gegen exakte Kontroll- und Befehlsstrukturen mit genauen Arbeitsanweisungen. Die Scrum-Vorgehensweise lässt den Entwicklungsteams große Freiheiten in der Umsetzung der Zielvorgaben. Durch diesen Freiraum kann sich Kreativität besser entfalten als in starren Projektstrukturen.

Das Rollenmodell von Scrum

Ein so genanntes Scrum Team umfasst in seiner Gesamtheit drei Rollen und besitzt keinen typischen Projektleiter. Die einzelnen Scrum-Rollen sind:

  • der Product Owner
  • das Entwicklungsteam
  • der Scrum Master

Die verschiedenen Rollen interagieren mit den Projektbeteiligten, den so genannten Stakeholdern. Um für maximale Transparenz zu sorgen, werden die Stakeholder bei den meisten Aktivitäten zumindest passiv einbezogen.

Der Produkt Owner trägt die Hauptverantwortung für die Eigenschaften des zu entwickelnden Produkts und für den Erfolg. Seine Aufgabe ist es, die Produkteigenschaften im so genannten Product Backlog zu definieren und die Umsetzung in den einzelnen Phasen zu beurteilen. Er entscheidet über die Implementierung und beeinflusst Kosten und Zeitpläne. Um für eine bedarfsgerechte Umsetzung zu sorgen, tauscht er sich kontinuierlich mit den Stakeholdern aus.

Das Scrum-Entwicklungsteam arbeitet und organisiert sich selbständig. Es setzt die vom Product Owner gewünschten Funktionalitäten in der vorgegebenen Reihenfolge um und erfüllt die geforderten Qualitätsstandards. Wie die Umsetzung der Funktionen erfolgt, entscheidet das Entwicklungsteam selbst. Um die gesteckten Ziele zu erreichen, ist das Entwicklungsteam interdisziplinär mit allen benötigen Kompetenzen zu besetzen. Damit der Aufwand zur Koordination innerhalb des Team möglichst gering bleibt, sind Scrum-Entwicklungsteams oft mit drei bis maximal neun Mitgliedern besetzt.

Der Scrum Master ist eine Art Moderator und ermöglicht, dass Scrum funktioniert. Er moderiert beispielsweise Meetings, sorgt für eine gute Kommunikation im und außerhalb des Teams und blockt Störungen von außen oder nicht zum Projekt gehörende Aufgaben ab.

Der Sprint als wichtiger Arbeitsabschnitt von Scrum

Der Sprint stellt einen einzelnen Arbeitsabschnitt in Scrum dar. Innerhalb eines Sprints werden inkrementelle Fortschritte einer Produktfunktionalität implementiert. Während der Phase eines Sprints dürfen keine Veränderungen der Zielvorgabe erfolgen. Meist umfassen einzelne Sprints Zeiträume von ein bis vier Wochen.

Zu Beginn jedes Sprints steht das Sprint Planning. Abgeschlossen werden die Sprints mit einem Sprint Review und einer Sprint Retrospective. Im Sprint Preview wird die Implementierung überprüft und mit dem Product Owner und den Stakeholdern besprochen.

Die Sprint Retrospective überprüft die Arbeitsweise des Scrum-Teams. Nach Abschluss eines Sprints erfolgt ein neuer Sprint mit einer weiteren Implementierung einer Produktfunktionalität. Zu Beginn dieses Sprints steht wieder das Sprint Planning.

Daily Scrum zu Beginn jedes Arbeitstags

Der Daily Scrum steht am Beginn eines jeden Arbeitstags. Das Team trifft sich zu einem maximal 15 Minuten langen Meeting, in dem sich die Teammitglieder untereinander austauschen. Alle Probleme, die sich nicht innerhalb dieser Viertelstunde lösen lassen, werden dem Scrum Master übergeben.

(ID:44474623)

Über den Autor