Zum Inhalt

Scrum

In der weiten Welt der agilen Entwicklung steht Scrum, wenn Agile ein Satz von "Werten" ist, der uns lehrt, Veränderungen zu akzeptieren, als das beliebteste und am weitesten verbreitete leichte Framework, das diese Werte in die Praxis umsetzt. Scrum ist kein detaillierter Prozess oder eine Methode, sondern eher ein "Spielregelwerk, das Teams dabei hilft, effizient zusammenzuarbeiten und kontinuierlich Mehrwert zu liefern, wenn komplexe Produkte entwickelt werden. Es bietet Teams durch die Definition klarer Rollen, Ereignisse und Artefakte einen einfachen, klaren, aber mächtigen iterativen Arbeitsrhythmus.

Der Name Scrum stammt aus dem "Scrum" in der Rugbysprache und betont, dass das gesamte Team als eine Einheit zusammenarbeitet, um ein gemeinsames Ziel zu erreichen. Scrum erkennt an, dass wir bei komplexen Problemen am Anfang nicht alle Antworten kennen. Daher besteht der Kern von Scrum darin, ein großes, ungewisses Problem durch kurze, zeitlich festgelegte Iterationen (also Sprints) in eine Reihe kleiner, handhabbarer Experimente aufzuteilen. Am Ende jedes Sprints liefert das Team einen nutzbaren Produktzuwachs und reflektiert sowie justiert den Prozess, um aus Erfahrungen zu lernen und sich trotz Veränderungen weiterzuentwickeln.

Die drei Säulen des Scrum-Frameworks

Das gesamte Scrum-Framework basiert auf drei empirischen Säulen:

  1. Transparenz: Alle wesentlichen Aspekte, die das Ergebnis beeinflussen, müssen für alle Personen sichtbar sein, die für das Ergebnis verantwortlich sind (einschließlich Kunden). Das bedeutet, dass Fortschritte bei der Arbeit, Hindernisse, Backlogs usw. offen und transparent sein müssen.
  2. Inspektion: Scrum-Artefakte und der Fortschritt in Richtung eines Ziels müssen regelmäßig und sorgfältig überprüft werden, um unerwünschte Abweichungen oder Probleme rechtzeitig zu erkennen.
  3. Anpassung: Wenn bei einer Inspektion festgestellt wird, dass die aktuelle Arbeit von akzeptablen Grenzen abweicht und das resultierende Produkt unannehmbar sein wird, muss der Prozess oder das bearbeitete Material so schnell wie möglich angepasst werden.

Die 3-5-3-Struktur von Scrum

Die "Spielregeln" von Scrum lassen sich prägnant als "3-5-3"-Struktur zusammenfassen: 3 Rollen, 5 Ereignisse, 3 Artefakte.

graph TD
    subgraph Scrum Framework (3-5-3)
        subgraph 3 Roles
            A(<b>Product Owner</b><br/><i>Verantwortlich für die Maximierung des Produktwerts</i>)
            B(<b>Scrum Master</b><br/><i>Verantwortlich dafür, dass Scrum ordnungsgemäß praktiziert wird</i>)
            C(<b>Entwickler</b><br/><i>Verantwortlich für die Lieferung von Produktinkrementen</i>)
        end

        subgraph 5 Events
            D(<b>Sprint</b><br/><i>Kernereignis, 1-4 Wochen Iterationszyklus</i>) --> E(<b>Sprint Planning</b>);
            E --> F(<b>Daily Scrum</b>);
            F --> G(<b>Sprint Review</b>);
            G --> H(<b>Sprint Retrospective</b>);
        end

        subgraph 3 Artifacts
            I(<b>Product Backlog</b><br/><i>Gesamtliste der Anforderungen</i>)
            J(<b>Sprint Backlog</b><br/><i>Aufgabenliste für den aktuellen Sprint</i>)
            K(<b>Increment</b><br/><i>Nutzbarer Produktanteil, der im aktuellen Sprint fertiggestellt wurde</i>)
        end
    end

3 Rollen

  • Product Owner: Die einzige Person, die für den "Wert" des Produkts verantwortlich ist. Ihre Hauptaufgabe besteht darin, das Product Backlog zu verwalten und zu optimieren, um sicherzustellen, dass das Entwicklungsteam immer an denjenigen Aufgaben arbeitet, die für Kunden und das Unternehmen den höchsten Wert schaffen. Sie entscheidet, "was getan wird".
  • Scrum Master: Der "Dienstleister" und "Coach" des Scrum-Frameworks. Er leitet das Team nicht, sondern unterstützt es, indem er Hindernisse beseitigt, Veranstaltungen moderiert und dafür sorgt, dass die Scrum-Regeln und -Werte vom Team richtig verstanden und befolgt werden.
  • Entwickler: Ein interdisziplinäres, selbstorganisiertes Team von Fachleuten, das gemeinsam dafür verantwortlich ist, Backlog-Elemente in hochwertige, lieferbare Produktinkremente innerhalb jedes Sprints umzuwandeln. Sie entscheiden, "wie etwas gemacht wird".

5 Ereignisse

  • Sprint: Das Herzstück von Scrum, ein zeitlich begrenzter Zeitraum (typischerweise 1–4 Wochen). Innerhalb eines Sprints konzentriert sich das Team darauf, ein wertvolles "Sprint-Ziel" zu erreichen.
  • Sprint Planning: Wird zu Beginn jedes Sprints abgehalten. Der Product Owner erklärt dem Entwicklungsteam die am höchsten priorisierten Einträge aus dem Product Backlog. Das Team wählt gemeinsam die Arbeiten aus, die es innerhalb des Sprints abschließen kann, und erstellt einen vorläufigen Plan, der das Sprint Backlog bildet.
  • Daily Scrum: Ein täglicher Synchronisations-Termin, der 15 Minuten nicht überschreiten sollte. Jedes Mitglied des Entwicklungsteams berichtet nacheinander über folgende Punkte: "Was habe ich gestern getan?", "Was werde ich heute tun?" und "Welche Hindernisse habe ich?" Der Zweck besteht darin, den Fortschritt schnell abzugleichen und Hindernisse zu erkennen, nicht um Berichte an die Führungsebene abzugeben.
  • Sprint Review: Wird am Ende des Sprints abgehalten. Das Entwicklungsteam präsentiert das fertige, funktionierende Increment dem Product Owner, Kunden und anderen Stakeholdern und sammelt Feedback. Dies ist ein informelles Treffen zum Thema "Produkt".
  • Sprint Retrospective: Wird nach dem Sprint Review und vor Beginn des nächsten Sprints abgehalten. Das Scrum-Team (PO, SM, Entwickler) reflektiert gemeinsam, was gut gelaufen ist und was verbessert werden könnte, bezüglich Menschen, Beziehungen, Prozessen und Tools im gerade abgeschlossenen Sprint, und erstellt einen konkreten Verbesserungsplan für den nächsten Sprint.

3 Artefakte

  • Product Backlog: Eine dynamische, priorisierte, umfassende Liste aller bekannten Produktanforderungen, Features, Korrekturen und Verbesserungen. Es wird ausschließlich vom Product Owner verwaltet.
  • Sprint Backlog: Die Liste der Aufgaben, zu deren Fertigstellung das Entwicklungsteam sich im aktuellen Sprint verpflichtet hat, sowie der Plan zur Erreichung des "Sprint-Ziels". Es gehört ausschließlich dem Entwicklungsteam und wird von diesem verwaltet.
  • Increment: Die Summe aller fertiggestellten Product-Backlog-Elemente am Ende jedes Sprints. Es muss nutzbar sein und der "Definition of Done" entsprechen. Es ist eine direkte Darstellung der Arbeitsergebnisse des Teams.

Anwendungsbeispiele

Beispiel 1: Entwicklung einer Online-Bestell-App für Lebensmittel

  • Product Backlog: Enthält Hunderte von User Stories wie "Benutzerregistrierung", "Speisekarte durchsuchen", "Online-Zahlung", "Bestellverfolgung" usw.
  • Sprint 1 (2 Wochen):
    • Sprint Ziel: "Benutzer können sich erfolgreich registrieren und einloggen."
    • Sprint Backlog: Das Team hat 5 User Stories ausgewählt, die sich auf Registrierung und Login beziehen.
    • Daily Scrum: Das Team synchronisierte täglich den Fortschritt und stellte fest, dass die "instabile Schnittstelle für SMS-Verifikationscodes" ein Hindernis darstellte. Der Scrum Master koordinierte sofort die Lösung.
    • Sprint Review: Das Team präsentierte einen funktionierenden Registrierungs- und Login-Prozess.
    • Sprint Retrospective: Das Team reflektierte, dass die Schätzungen zu optimistisch waren, und beschloss, im nächsten Sprint eine konservativere Schätzmethodik anzuwenden.

Beispiel 2: Ein Marketing-Team plant ein Produkt-Launch-Event

  • Scrum ist nicht nur auf die Softwareentwicklung anwendbar.
  • Product Owner: Marketingleiter.
  • Product Backlog: Enthält alle Arbeitsaufgaben wie "Thema des Launch-Events festlegen", "Hauptvisuals entwerfen", "Medien und KOLs einladen", "Pressemitteilungen schreiben", "Veranstaltungsort buchen" usw.
  • Sprint 1 (1 Woche):
    • Sprint Ziel: "Das Kernthema und das erste Hauptdesign des Launch-Events finalisieren."
    • Das Team erzielte innerhalb einer Woche schnelle Ergebnisse und präsentierte diese der Geschäftsleitung im Review-Meeting. Dadurch erhielt es zeitnahes Feedback und verhinderte, dass zu viele Designressourcen in die falsche Richtung investiert wurden.

Beispiel 3: Eine Studentengruppe, die ein Semesterprojekt abschließt

  • Product Owner: Ein Student übernimmt die Rolle des PO und ist verantwortlich für die Kommunikation mit dem Professor und die Klärung der Projektanforderungen.
  • Product Backlog: Das gesamte Projekt wird in Teile wie "Literaturrecherche", "Datenerhebung", "Datenanalyse", "Berichterstellung", "Erstellung von Präsentationsfolien" aufgeteilt.
  • Sprints: Sie teilten die verbleibenden 8 Wochen des Semesters in 4 zweiwöchige Sprints auf. Jeder Sprint hatte ein klares Ziel, z. B. das Ziel des ersten Sprints war es, "die Literaturrecherche und das Forschungsdesign abzuschließen". Dieser Ansatz verhinderte effektiv das typische "Last-Minute-Cramming" am Ende des Semesters.

Vorteile und Herausforderungen von Scrum

Kernvorteile

  • Erhöhte Produktivität und Geschwindigkeit: Durch kurze Iterationszyklen und Fokus können Teams schneller Mehrwert liefern.
  • Erhöhte Flexibilität und Anpassungsfähigkeit: Kann auf sich ändernde Anforderungen reagieren und rechtzeitig die Richtung anpassen, basierend auf Feedback.
  • Verbesserte Transparenz und Kommunikation: Klare Rollen, Ereignisse und Artefakte erleichtern die Kommunikation und Informationsabstimmung innerhalb und außerhalb des Teams erheblich.
  • Empowerment der Teams und Motivation: Selbstorganisierte Entwicklungsteams haben ein höheres Maß an Autonomie und Verantwortungsgefühl.

Potenzielle Herausforderungen

  • "Einfach zu verstehen, schwer zu meistern": Die Scrum-Regeln sind einfach, aber das tiefere Verständnis des zugrunde liegenden agilen Geistes und die erfolgreiche Umsetzung innerhalb einer spezifischen Organisationskultur sind sehr schwierig.
  • Hohe Anforderungen an den Product Owner: Der Product Owner muss das Geschäft, den Markt und die Kunden gut verstehen und über ausgezeichnete Kommunikations- und Entscheidungsfähigkeiten verfügen.
  • Gefahr von "Scope Creep": Wenn der Product Owner das Backlog und die Erwartungen der Stakeholder nicht gut verwaltet, kann dies zu häufigen Änderungen der Sprint-Ziele führen.
  • Voraussetzung für Teamreife: Selbstorganisierte Teams benötigen Mitglieder mit hohem Verantwortungsbewusstsein, Kooperationsbereitschaft und interdisziplinären Fähigkeiten.

Erweiterungen und Verknüpfungen

  • Agile Entwicklung: Scrum ist ein konkretes, etabliertes Framework, um agile Werte und Prinzipien umzusetzen.
  • Kanban: Eine weitere beliebte agile Methode. Im Gegensatz zum rhythmusbasierten Scrum ("Time-Box" (Sprints)) konzentriert sich Kanban stärker auf "kontinuierlichen Fluss". In der Praxis kombinieren viele Teams beide Ansätze; z. B. Kanban innerhalb eines Scrum-Sprints verwenden, um den Aufgabenfluss zu visualisieren und zu steuern. Dies wird als "Scrumban" bezeichnet.
  • Extreme Programming (XP): Während Scrum das "Management-Framework" bereitstellt, stellt XP eine Reihe hervorragender "Engineering-Praktiken" bereit. Die Integration von XP-Praktiken (wie Test-Driven Development, Pair Programming) in das Scrum-Framework kann die technische Qualität der Produktinkremente erheblich verbessern.

Referenz: Das Scrum-Framework wurde erstmals von Jeff Sutherland und Ken Schwaber in den frühen 1990er Jahren gemeinsam vorgestellt. Ihr gemeinsames Werk, "The Scrum Guide", ist die einzige offizielle Definition des Scrum-Frameworks und wird regelmäßig aktualisiert, um die Weiterentwicklung der Praxis widerzuspiegeln.