Scrum

Scrum ist ein auf begrenzte Durchlaufzeit basiertes agiles Management-Rahmenwerk, das häufig zur Produkt-Entwicklung und Weiterentwicklung eingesetzt wird. In der Regel handelt es sich um digitale Produkte,  d.h. Scrum hilft bei der Software-Entwicklung in Unternehmen mit Agiler Unternehmenskultur, wenn bekannte Missverständnisse und Fallen in der ersten Zeit der Einführung vermieden werden: siehe "Agile Missverständisse".

Scrum beinhaltet auch Elemente des Change-Managements. Die erwähnten "Produkte" müssen sich nicht auf Software für Endbenutzer beschränken, es können auch ganze Prozesse und die zugehörigen Werkzeuge zur Softwareentwicklung, oder Kernprozesse und die zugehörigen Prozesse in einem ganzheitlichen Ansatz mit Hilfe des Rahmenwerks weiter entwickelt werden.

Zitat aus dem aktuellen "Scrum Guide" von Jeff Sutherland Ken Schwaber, der frei über die "Creative Commons 4.0" Lizenz verfügbar ist:

"Das Scrum-Rahmenwerk besteht aus Scrum-Teams und den zu ihnen gehörenden Rollen, Ereignissen, Artefakten und Regeln. Jede Komponente innerhalb des Rahmenwerks dient einem bestimmten Zweck und ist unentbehrlich für den Einsatz von Scrum und dessen Erfolg. ... Scrum basiert auf der Theorie empirischer Prozesssteuerung ... und deren drei Säulen: Transparenz, Überprüfung [Inspection] und Anpassung [Adaptation]."

Scrum schreibt vier formale Ereignisse (Meetings) für die erwähnte Überprüfung und Anpassung vor:

  • Sprint Planning
  • Daily Scrum
  • Sprint Review
  • Sprint Retrospektive

Scrum definiert die folgenden Rollen und damit verbundene Aufgaben:

  • Product Owner ... trägt Verantwortung für das Produkt und die Produkt-Anforderungen
  • Mitglieder des interdisziplinären Entwicklungsteams
  • Scrum Master ... unterstützt bei der Anwendung von Scrum

Es folgt ein Zitat aus dem Scrum Guide zu den vom "agilen Manifest" und der "kontinuierlichen Verbesserung" inspirierten Werten.

Zitat: "Wenn die Werte Selbstverpflichtung, Mut, Fokus, Offenheit und Respekt durch das Scrum-Team verkörpert und gelebt werden, werden die erwähnten Scrum-Säulen Transparenz, Überprüfung und Anpassung lebendig und bauen bei allen Beteiligten Vertrauen zueinander auf. Der erfolgreiche Einsatz von Scrum beruht darauf, dass alle Beteiligten kompetenter bei der Erfüllung dieser fünf Werte werden."

Zitate zu im Zusammenhang mit "Backlogs" geforderten Dokumentations- und Planungsaufgaben:

Zitat: "... Das Product Backlog dient als einzige Anforderungsquelle für alle Änderungen am Produkt. Der Product Owner ist für das Product Backlog, seine Inhalte, den Zugriff darauf verantwortlich. ... Das Product Backlog entwickelt sich mit dem Produkt und dessen Einsatz weiter. ... Sofern ein Produkt existiert, gibt es auch das dazugehörige Product Backlog. Im Product Backlog werden alle Features, Funktionalitäten, Verbesserungen und Fehlerbehebungen aufgelistet, die die Änderungen an dem Produkt in zukünftigen Releases ausmachen. Ein Product-Backlog-Eintrag enthält als Attribute eine Beschreibung, die Reihenfolge, die Schätzung und den Wert. Product-Backlog-Einträge enthalten oft Testbeschreibungen, die ihre Vollständigkeit nachweisen, wenn sie fertig [Done] sind.

Das Product Backlog entwickelt sich mit dem Einsatz eines Produktes, dessen Wertsteigerung sowie durch das Feedback des Marktes zu einer längeren, ausführlicheren Liste. Anforderungen werden nie aufhören, sich zu ändern. Daher ist das Product Backlog ein lebendes Artefakt. Höher eingeordnete Product-Backlog-Einträge sind generell klarer und weisen mehr Details auf als niedrigere."

Zitat: "Das Sprint Backlog ist die Menge der für den Sprint ausgewählten Product-Backlog-Einträge, ergänzt um einen Plan, um ... das Sprint-Ziel zu erreichen. Das Sprint Backlog ist eine Prognose des Entwicklungsteams darüber, welche Funktionalität im nächsten ... fertigen [„Done“] Inkrement enthalten sein wird.Das Sprint Backlog macht die gesamte Arbeit sichtbar, die das Entwicklungsteam für notwendig erachtet, um das Sprint-Ziel zu erreichen ... und um den Fortschritt innerhalb des Sprints im Daily Scrum erkennen zu können."

Scrum wird oft in Verbindung mit agilen Anforderungs-Notationen wie "User Stories" und mit agilen Vorgehensweisen zur Erarbeitung und Strukturierung von Anforderungen (z.B. ATDD, DDD) sowie evolutionären Architekturmustern (Event Sourcing) eingesetzt. Im Scrum Rahmenwerk wird ohne derartige Empfehlungen lediglich eine "geeignte Form der Dokumentation" der Anforderungen, und der Sicherung der Produkt-Qualitäts verlangt.

Hilfreiche Links:

_______

Warnung: In der Praxis führt die unreflektierte Wahl von Anforderungs-Notationen und Architekturmustern häufig zu Problemen, die nicht dem schlanken Rahmenwerk angelastet werden können. Zudem legt das erwähnte Domain Driven Design [DDD] technische Schnitte (Boundaries) durch die identifizierten Domänen nahe, die bei näherer Betrachtung des fachlich gewünschten Verhaltens (Behavior) und der dadurch vorgegeben Abhängigkeiten (Coupling) ungeeignet für die technische Realisierung sind.