Alle Beiträge von

Stefan Bister

Qualität

Das SCRUM-Framework

Was ist SCRUM?

SCRUM (engl.) ist ein Begriff aus dem Rugby und bedeutet wörtlich “angeordnetes Gedränge”. Die beiden SCRUM Gründer Jeff Sutherland und Ken Schwaber haben die SCRUM Methode 1995 erstmals auf einer Konferenz öffentlich vorgestellt. Seitdem wurde die SCRUM Methode permanent weiterentwickelt und hat maßgeblich zu einem heutigen Verständnis agiler Arbeitsweisen beigetragen. Die beiden SCRUM -Väter waren auch maßgeblich an der Formulierung des agilen Manifestes in 2001 beteiligt.

SCRUM ist ein Rahmenwerk für die Zusammenarbeit von Teams basierend auf einer Definition von Rollen, Meetings und Werkzeugen, die einem Team Struktur und einen klar definierten Arbeitsprozess, basierend auf agilen Prinzipien geben. Auf die Definition dieser einzelnen „Bausteine“ kommen wir später noch zu sprechen.

Die Ziele von SCRUM

Das oberste Ziel in einem SCRUM-Projekt besteht darin, das bestmögliche Produkt unter Berücksichtigung der Kosten, der Funktionalität, der Zeit und der Qualität abzuliefern!

Weitere Ziele der SCRUM Methodik sind:

  • eine höhere Rektionsfähigkeit des Unternehmens auf sich ändernde Kundenanforderungen
  • kürzere „Time to Market“
  • höhere Qualität und Kundenzufriedenheit
  • bessere Nahtstellen zwischen Vertrieb, Einkauf, Engineering und Fertigung

Die Vorteile von SCRUM

  • wenige Regeln, leicht verständlich und schnell einführbar
  • kurze Kommunikationswege
  • hohe Flexibilität/Agilität durch adaptives Planen
  • hohe Effektivität durch Selbstorganisation
  • hohe Transparenz durch regelmäßige Meetings und Backlogs
  • zeitnahe Realisation neuer Produkteigenschaften bzw. Inkremente
  • kontinuierlicher Verbesserungsprozess
  • kurzfristige Problem-Identifikation
  • geringer Administrations- und Dokumentationsaufwand

Die Prinzipien von SCRUM

Vision
Das heißt, jedes Scrum Team folgt einem langfristigen Ziel, das als übergreifender Orientierungspunkt dient.

Wertorientierung
Scrum Teams messen ihre Ergebnisse am erzielten Wert für Kunden und Unternehmen.

Transparenz
Ziele, Entscheidungen und anstehende Aufgaben sind allen Beteiligten und Stakeholdern frei zugänglich und bekannt.

Fokussierung
Eine konsequente Priorisierung der zu erledigenden Aufgaben sorgt für einen hohen Fokus.

Autonomie
Das Scrum Team ist ein autonomes Team, das selbstbestimmt und selbstorganisiert arbeitet.

Prozesstreue
Der Scrum Prozess ist nicht verhandelbar. Denn der Prozess gibt einem Team Sicherheit, senkt durch eine hohe Standardisierung die Overhead-Kosten und trägt gleichzeitig zu hoher Transparenz bei.

Feedback
Kunden, Anwender und Stakeholder werden eng und regelmäßig in den Scrum Prozess eingebunden und tragen mit ihrem Feedback zu einer kontinuierlichen Verbesserung bei. Zudem verbessert das Scrum Team seine Zusammenarbeit durch regelmäßige Retrospektiven.

Die Werte von SCRUM

Offenheit/Transparenz:
Offenheit bzw. Transparenz betont die Wichtigkeit, dass zwischen allen Teammitgliedern des SCRUM Teams offene Kommunikation stattfinden muss. Alle Mitglieder dürfen und sollen alles äußern können.

Mut/Courage:
Mut, oder auch gerne Courage genannt ist für die Mitglieder eines SCRUM Team essentiell, denn manchmal ist nämlich die „Wahrheit“ nicht unbedingt positiv, oder leicht zu formulieren. Im agilen Prozess benötigt man auch genügend Mut, um sich schwierigen Problemen zu stellen und diese in die Hand zu nehmen.

Respekt:
Was oft als selbstverständlich angesehen wird, aber auf keinen Fall fehlen darf, ist der Respekt. Ein Team funktioniert nur, wenn alle Mitglieder einander mit Respekt begegnen. Außerdem muss auch vom Unternehmen ausgehend das notwendige Vertrauen aufgebracht werden, dass dies geschieht. Nur wer einander respektiert, kann auch erfolgreich miteinander arbeiten.

Fokus:
Mit klar definierten Zielen, richtigem Fokus und knappen Iterationen fallen im agilen Arbeiten weniger Hindernisse an. Alle Beteiligten können mit genügend Fokus effizient und im besten Fall ohne Ablenkung ihr Ziel verfolgen.

Commitment/Hingabe:
„Nachhaltiger Erfolg ist nur mit absolutem und vor allem intrinsischen Commitment möglich“, sagt Agile Hero und SCRUM-Experte Richard Mittag.

Die Verantwortung liegt hierbei allerdings auch beim Unternehmen, um das notwendige Commitment zu erzeugen. Teammitglieder, die nur ihre Aufgaben erledigen und nicht wissen, welchem Zweck sie eigentlich dienen können sich nur schwer für das große Ganze begeistern und werden deshalb nicht ihr Bestes geben.

Die Rollen im SCRUM-Projekt

Die Stakeholder

Die Stakeholder sind die Kunden eines Scrum-Teams. Dies sind die Benutzer des zu entwickelnden Produkts. Mit dem Input der Stakeholder stellt das Entwicklungsteam das gewünschte Produkt bzw. die gewünschte Dienstleistung her. Dies geschieht mit Unterstützung durch den Product Owner. Der Product Owner steht mit den Stakeholdern in Kontakt und sorgt dafür, dass das Entwicklungsteam über deren Vorstellungen, Anforderungen und Anmerkungen informiert ist.

Aufgaben:äußern Ihre Produktwünsche
geben Feedback
„Geldgeber“
Eigenschaften: sind interessiert am Produkt
finanzieren häufig das Projekt

Der Product Owner

Der Scrum Product Owner ist dafür verantwortlich, dass sowohl der Produktwert als auch der Wert des Projektteams maximiert werden. Wie dies genau gemacht wird, hängt oft vom Unternehmen und dem Scrum-Team ab.

Aufgaben:bestimmt, was umgesetzt wird
verantwortlich für die Produktvision
betreibt das Stakeholder Management
priorisiert das Backlog
stellt sicher, dass dem Entwicklungsteam alle notwendigen Informationen zur Umsetzung zur Verfügung stehen
Eigenschaften: Visionär
Erwartungsmanager
Entscheider

Der SCRUM-Master

Der Scrum Master ist für die korrekte Durchführung des Scrum-Ansatzes verantwortlich. Dies erreicht er, indem er dafür sorgt, dass das gesamte Team die Scrum-Theorie, die Arbeitsweisen und Regeln befolgt. Der Scrum Master ist dem Product Owner, dem Scrum-Team und dem Unternehmen behilflich

Aufgaben:verantwortlich für das Verständnis und die Durchführung von SCRUM
Coach für das Entwicklungsteam
Berater für den Product Owner
Moderator
vertritt die agilen Werte innerhalb der Organisation/des Unternehmens
beseitigt Hindernisse
Eigenschaften: Visionär
Erwartungsmanager
Entscheider

Das Entwicklungsteam

Das Entwicklungsteam besteht aus Fachleuten, die mit Aufgaben beschäftigt sind, welche zur Produktentwicklung gehören. Diese Aufgaben werden vor jedem Sprint in Rücksprache mit dem Product Owner festgelegt, der sie auf der Grundlage des Product Backlogs auswählt. Am Ende des Sprints sollte das Entwicklungsteam alle ausgewählten Aufgaben erledigt haben.

Aufgaben:bestimmt das „Wie“
arbeitet selbstorganisiert, eigenverantwortlich
interdisziplinär aufgestellt
entscheidet, wie viele Features umgesetzt werden (Pull-Prinzip)
Eigenschaften: interdisziplinär
Umsetzer
selbstorganisiert

Die Meetings im SCRUM-Projekt

„Kick-Off“-Meeting | 1 x vor Projektstart

Das „Kick-Off“-Meeting ist streng genommen kein Bestandteil des SCRUM-Frameworks. Es kann genutzt werden, um vor Projektstart durch den Product Owner die Vision des zu entwickelnden Produktes vorstellen zu lassen. Die einzelnen Teilnehmer nehmen Ihre Rollen an, ein grober Fahrplan und ggf. Zeithorizont für das Projekt wird besprochen.
Die Wünsche und Forderungen der Stakeholder werden als „User Stories“ protokolliert und in den Product Backlog übertragen.

Sprint Planning I | 1 x pro Sprint (60 Min./Sprintwoche)

Zu Beginn jedes Sprints stellt der Product Owner im Sprint Planning I seine wichtigsten Features aus dem Product Backlog vor – er legt fest, was im nächsten Sprint umgesetzt werden soll. Der Aufwand dieser Aufgabenpakete wird vom Entwicklungsteam geschätzt.

Sprint Planning II | 1 x pro Sprint (60 Min./Sprintwoche)

Nach dem Sprint Planning I plant das Entwicklungsteam im Sprint Planning II den eigentlichen Sprint. Hier wird beschlossen, wie genau die gewünschten Features aus dem Product Backlog umgesetzt werden und welche Aufgaben die jeweiligen Teammitglieder übernehmen.

Refinement | optional, 1 – 2 x wöchentlich

Im Refinement Meeting wird der Product Backlog (alle Features, die das Produkt haben soll), aktualisiert, priorisiert und geschätzt. Dieses Meeting dient auch dazu, etwaige Unklarheiten im Product Backlog zu beseitigen und ein einheitliches Verständnis zu schaffen.

Daily | täglich – max. 15 Minuten

Hier werden täglich von jedem Mitglied des Entwicklungsteams die folgenden Fragen beantwortet:
• Was habe ich gestern für das Team gemacht?
• Was plane ich heute für das Team zu machen?
• Was behindert mich bei meiner Arbeit, um etwas für das Team zu machen?

Review | 1 x pro Sprint – 60 – 120 Minuten

Das Entwicklungsteam stellt die umgesetzten Features dem Product Owner und ggf. den Stakeholdern vor, die an den umgesetzten Features interessiert sind.

Retrospective | 1 x pro Sprint – 45 Minuten / Sprintwoche

Das Entwicklungsteam reflektiert, mit Unterstützung des Scrum-Masters, den letzten Sprint und erarbeitet Lösungsansätze, wie es in Zukunft noch besser zusammenarbeiten kann.
• Was wollen/müssen/können wir ändern?
• Was wollen/müssen/können wir zukünftig unterlassen?
• Was lief gut, was können wir beibehalten?