Scrum
Was ist Scrum?
Scrum ist eine Methode zur Organisation der Arbeitsabläufe unter Anwendung bestimmter Prinzipien und Praktiken. Genauer gesagt handelt es sich bei Scrum um ein flexibles System oder Framework für die Entwicklung und das Management von Projekten sowie um einen Teamansatz und eine nicht standardisierte Verteilung der Aufgaben innerhalb des Teams.
Man könnte annehmen, dass Scrum ein Akronym für die wichtigsten Prinzipien der Scrum-Methodik ist, aber das ist nicht ganz der Fall. Das Wort "Scrum" selbst stammt aus dem Rugby-Sport. Dort bezeichnet es ein Gedränge, bei dem die Spieler einer Mannschaft ihre Arme umeinander schlingen, um den Ball gemeinsam vorwärts zu bewegen und sich dem Gegner zu stellen. So sieht auch Scrum in der Wirtschaft aus: Ein Team vereinigt sich, um ein bestimmtes Produkt zu schaffen.
Die meisten Produktmanagement-Strategien gehen von einem klaren Plan aus, der alle Risiken, Fristen und Kosten auf einmal berücksichtigt. Solche Strategien sind jedoch in der Praxis schnell veraltet und müssen aufgrund der Unvorhersehbarkeit externer Faktoren und des Entwicklungsprozesses selbst regelmäßig überarbeitet werden. Die Scrum-Methodik berücksichtigt also die Unbeständigkeit der Welt und basiert daher auf ganz anderen Prinzipien. Nach dieser Methodik ist es unmöglich, den Arbeitsprozess bis ins kleinste Detail zu planen, so dass der Grad der Ungewissheit und der menschliche Faktor bei der Entwicklung eine große Rolle spielen. In dieser Hinsicht begrüßt Scrum hingegen Veränderungen und fördert das Experimentieren, anstatt sich strikt an einen Plan zu halten.
Aus diesem Grund wird Scrum auch als "flexible" Methode bezeichnet, weil sie es ermöglicht, ein neues Produkt in einem sich ständig verändernden Umfeld zu entwickeln, ohne das Budget, die zukünftige Produktqualität oder die Umsetzungsfristen zu gefährden.
Scrum vs. Agile: Was ist der Unterschied?
Scrum und Agile sind unterschiedliche Ansätze, die jedoch viele Gemeinsamkeiten aufweisen. Zum Beispiel haben beide gemeinsam, dass es sich um flexible Strukturen handelt, die nicht standardisierte Arbeitsansätze beinhalten und versuchen, das Produkt trotz ständig wechselnder und unsicherer Umstände kontinuierlich zu verändern und zu verbessern.
Der Unterschied zwischen diesen Ansätzen besteht jedoch darin, dass Scrum nur eine Methode ist, die auf Agile Prinzipien basiert. Agile ist also eine Reihe von flexiblen Ansätzen und Methoden, die mit den Werten des Agilen Manifests übereinstimmen. Dies ist das Hauptdokument, in dem alle Prinzipien beschrieben werden, nach denen Agile existiert.
Die wichtigsten Prinzipien von Agile, die sich auch in der Scrum-Methode widerspiegeln, lauten wie folgt:
-
Die Menschen sind wichtiger als die Werkzeuge.
Das heißt, die Mitarbeiter des Unternehmens und die Beziehungen zwischen ihnen sind wichtiger als die Arbeitsprozesse und die Werkzeuge selbst, die zur Erreichung des Ziels eingesetzt werden. Denn die Grundlage jeder Tätigkeit ist immer die Kommunikation. Ohne gegenseitiges Verständnis führen auch die besten Prozesse nicht zum gewünschten Ergebnis. Daher ist es notwendig, ein günstiges psychologisches Klima im Team und solche Bedingungen zu schaffen, dass alle Beteiligten schnell Informationen austauschen und sich - im Idealfall - auf einen Blick verstehen können. Auf diese Weise steht dem Zusammenhalt des Teams bei der Durchführung des Projekts nichts mehr im Wege.
-
Das Ziel ist ein Qualitätsprodukt.
Die Agile Technologie konzentriert sich in erster Linie auf das Endergebnis, d. h. auf die Schaffung eines neuen Produkts, das den Kunden und die Bedürfnisse des Publikums voll zufrieden stellt. Daher konzentrieren sich Teams, die nach den Prinzipien von Agile arbeiten, darauf, das Produkt so schnell wie möglich einsatzbereit zu machen. Zu diesem Zweck kann eine Menge Papierkram vernachlässigt werden. Daher werden im Laufe des Prozesses nur die notwendigen Unterlagen erstellt, ohne bürokratische Formalitäten.
-
Mehr Zusammenarbeit mit dem Publikum und Feedback vom Kunden.
Nach den Grundsätzen von Agile werden nicht nur die Entwickler selbst, sondern auch die Kunden in den Produktentstehungsprozess einbezogen. Darüber hinaus wird bei dieser Technologie das Publikum in allen Phasen der Produktentwicklung aktiv einbezogen, z. B. durch A/B-Tests. Dies trägt zu einem besseren gegenseitigen Verständnis und schließlich zum gewünschten Ergebnis bei. Daher ist das Feedback von Kunden und Verbrauchern des künftigen Produkts das wichtigste Prinzip der Agile-Methodik.
-
Experimentieren statt eines klaren Plans.
Die Technologien von Agile und insbesondere Scrum werden als empirisch bezeichnet, weil sie auf Beobachtung, Erfahrung und Experimentieren beruhen. Außerdem sollte man immer auf Änderungen vorbereitet sein, denn während des Arbeitsablaufs kann es passieren, dass die Dinge nicht nach Plan laufen. So können sich beispielsweise die Anforderungen an das Produkt selbst oder die Bedingungen seiner Herstellung ändern. Daher müssen in jeder Phase des Entwicklungsprozesses Anpassungen vorgenommen werden.
Diese vier Postulate bildeten die Grundlage für die Entstehung der agilen Philosophie. So wird Scrum in seinem Rahmen umgesetzt und spiegelt die wichtigsten Prinzipien wider. Mit anderen Worten: Agile ist eine Denkweise, eine Philosophie oder eine Idee, die es anzustreben gilt. Scrum hingegen ist eine spezifische Methodik, die bestimmte Schritte und Maßnahmen zur Umsetzung dieser Idee beinhaltet.
Scrum vs. Kanban: Gemeinsamkeiten und Unterschiede
Kanban gehört ebenfalls zu den agilen Methoden des Arbeitsablauf-Managements, basiert aber in erster Linie auf der Visualisierung des Ziels, der Aufgaben und des weiteren Fortschritts.
Die Kanban-Methodik basiert auf vier Grundprinzipien:
-
Visualisierung von Arbeitsabläufen
Ein wichtiges Werkzeug zur Visualisierung ist das Whiteboard. Jede seiner Spalten steht für eine bestimmte Arbeitsphase. Die in dieser Phase zu erledigenden Arbeitsaufgaben sind die Karten auf der Tafel. Für kleine Projekte können Sie eine Kanban-Tafel mit einer Kork- oder Markertafel und Stickern erstellen. Für größere und komplexere Projekte ist es sinnvoller, virtuelle Online-Whiteboards zu verwenden, die eine viel größere Bandbreite an Möglichkeiten bieten. In jedem Fall gewährleistet diese Art der Visualisierung eine vollständige Transparenz der Arbeit des gesamten Teams.
-
Begrenzung der Arbeit
Bei der Kaban-Methode wird die Anzahl der gleichzeitig laufenden Aufgaben begrenzt. Einfach ausgedrückt, wird die Anzahl der Aufgaben, die sich in einer Spalte, d. h. in einer Phase, auf dem Brett befinden, begrenzt. Dies wiederum trägt dazu bei, dass das Team nicht "überlastet" wird und erst einmal die Aufgaben zu Ende führt, bevor es mit den nächsten fortfährt.
-
Flussmanagement
Darunter versteht man die rechtzeitige Behebung aller Störungen oder Fehler, die bei der Produktentwicklung auftreten. Darüber hinaus geht es beim Flussmanagement auch darum, verschiedene Risiken zu minimieren, z. B. die Fehlproduktion. Um hier den Überblick zu behalten, müssen alle Teammitglieder die Kanban-Tafel regelmäßig auf dem neuesten Stand halten. Auf diese Weise können Schwachstellen erkannt und Probleme beseitigt werden, während der Arbeitsablauf ununterbrochen weiterläuft.
-
Kontinuierliche Verbesserung
Es ist nicht nur notwendig, die Kanban-Tafel zu aktualisieren, sondern auch zu verfolgen, wie das gesamte System funktioniert und wie das Team und der Kunde darauf reagieren. Die Einholung von Feedback und die ständige Suche nach Möglichkeiten zur Verbesserung der Prozesse ist ein wichtiger Grundsatz für alle agilen Methoden.
Die Essenz von Kanban ist also ein kontinuierlicher Fluss von Aufgaben, die Visualisierung von Arbeitsprozessen und die Weiterarbeit am Kanban-Board. Scrum hingegen bietet viele weitere unterschiedliche Tools und Praktiken, die Sie im Folgenden kennenlernen werden.
Grundprinzipien der Scrum-Methodik
Um möglichst effektiv an einem Produkt arbeiten zu können, sollte sich das
Team an den folgenden Grundsätzen der Scrum-Methodik orientieren:
-
Arbeit in kurzen Zyklen.
Diese Zyklen werden Sprints genannt. Das heißt, ein Sprint ist ein kurzer, zeitlich begrenzter Zeitraum, in dem ein Scrum-Team an einer bestimmten Menge an Arbeit tätig ist. Alle weiteren Aktivitäten werden ausschließlich innerhalb eines solchen Sprints geplant. Darüber hinaus werden jedem Arbeitszyklus spezifische, enger gefasste Ziele vorangestellt, die bis zum Ende eines Sprints erreicht werden sollen. Mit anderen Worten: Die Scrum-Methodik sieht vor, nicht das gesamte Projekt auf einmal zu planen, sondern regelmäßig einen Arbeitszyklus nach dem anderen. Dieses Format ermöglicht es, schnell auf auftretende Schwierigkeiten zu reagieren und gegebenenfalls Fehler zu korrigieren.
-
Flexibilität.
Flexibilität im Prozess bedeutet, dass das Team immer bereit ist, sich auf Änderungen einzustellen, z. B. bei der Strategie oder den Bedingungen der Produktentwicklung. Um den Schwung nicht zu verlieren, sollte das Produkt nach jedem Sprint getestet werden. Nur so lassen sich auftretende Fehler erkennen, die bei der Planung des nächsten Arbeitszyklus berücksichtigt werden. Diese Aktivitäten helfen sowohl dem Arbeitsteam als auch dem Projekt selbst, mobiler und flexibler zu werden.
-
Einbeziehung von Kunden und Nutzern in die Arbeit am Produkt.
Dies ist ein Grundprinzip, das der oben beschriebenen Agile-Philosophie entstammt. Das Feedback von Kunden und Nutzern ermöglicht es, zu verstehen, welche Änderungen am Produkt vorgenommen werden sollten, um den Verbrauchern den größtmöglichen Komfort zu bieten.
-
Enge Interaktion der Teammitglieder untereinander.
Dies ist auch ein Grundgedanke aller flexiblen Methoden: Die Teammitglieder arbeiten als eine Einheit zusammen. Auch das Erreichen eines Zieles ist eine Folge davon, dass mehrere Personen auf dasselbe Ergebnis hinarbeiten.
Die Werte der Scrum-Methodik
Scrum basiert auf fünf Grundwerten:
-
Loyalität oder Engagement. Das heißt, im Rahmen der Scrum-Methodik sollten sich alle Mitarbeiter oder Teammitglieder der gemeinsamen Ziele bewusst sein, sich ihnen verpflichtet fühlen und sich gegenseitig unterstützen, um diese Ziele zu erreichen.
-
Fokus oder Konzentration. Das Hauptaugenmerk aller Mitglieder des Scrum-Teams sollte darauf gerichtet sein, maximale Fortschritte auf dem Weg zum Ziel zu erzielen. Dazu sollte der Fokus ganz auf der Entwicklung und weiteren Verbesserung des Produkts liegen.
-
Offenheit. Nicht nur die Teammitglieder, sondern auch das Management, die Kunden und letztlich alle Interessengruppen sollten offen sein, um auftretende Fragen und Probleme zu besprechen.
-
Gegenseitiger Respekt. Alle Mitglieder des Scrum-Teams respektieren sich gegenseitig und dulden kein unethisches Verhalten.
-
Mut. Dies ermöglicht es allen Teammitgliedern, die mutigsten und ungewöhnlichsten Lösungen für Probleme vorzuschlagen, die sich oft als richtig und effektiv erweisen.
Daher sollten alle Aktivitäten der Mitarbeiter darauf ausgerichtet sein, diese Werte zu stärken, anstatt sie zu vernachlässigen. Wenn alle Teammitglieder die Grundwerte teilen, dann gibt es drei wesentliche "Säulen" der Scrum-Methodik, die den Arbeitsprozess unterstützen:
-
Transparenz;
-
Inspektion;
-
Anpassung.
Transparenz setzt voraus, dass alle Mitglieder des Scrum-Teams bereit sind, ihre Erfolge und umgekehrt auch ihre Herausforderungen auf dem Weg dorthin zu teilen. Schließlich konzentriert sich die Scrum-Methodik auf die Analyse und Identifizierung der Ursachen von Erfolg und Misserfolg. Denken Sie daran, dass das Hauptziel ein Qualitätsprodukt ist, achten Sie also auf alle Feinheiten der Produktion, die Sie stören oder beschäftigen. Sie sollten keine Probleme oder Fehler, die Sie gemacht haben, verheimlichen.
Die nächste "Säule" ist die Inspektion. Mit anderen Worten, es handelt sich um eine Überprüfung, wie der Prozess der Produktentwicklung und -verbesserung verläuft. Dabei geht es um die Beantwortung der Fragen: Was fällt leicht und was bereitet Schwierigkeiten, warum geschieht dies, wie können diese Probleme behoben werden und was ist zu tun, um die Leistung zu verbessern. Auf diese Weise werden nicht nur bereits aufgetretene Probleme gelöst, sondern auch aufkommende Probleme beseitigt, was dann zum Hauptziel führt, nämlich zu einem Qualitätsprodukt.
Die letzte "Säule" hat mit der Anpassung zu tun. Das bedeutet, dass alle Mitglieder des Scrum-Teams bereit sein müssen, alle Prozesse anzupassen, um die festgestellten Probleme zu lösen. Mit anderen Worten: Wenn Probleme festgestellt werden, sollte man sofort darüber nachdenken, wie man die Situation am besten ändern kann. Zum Beispiel Änderungen bei der Herstellung des Produkts selbst, Änderungen der Arbeitsbedingungen für die Mitarbeiter und neue Vereinbarungen mit dem Kunden.
Diese drei "Säulen" sind eng miteinander verbunden, so dass zumindest eine von ihnen nicht vernachlässigt werden sollte. Stimmen Sie zu, dass es wenig Sinn macht, wenn zwar regelmäßige Inspektionen durchgeführt werden, der Anpassung aber keine weitere Aufmerksamkeit gewidmet wird, denn das oberste Ziel ist es, ein möglichst hochwertiges Produkt herzustellen.
Zusammensetzung eines Scrum-Teams
Ein Scrum-Team ist eine Arbeitsgruppe von 5-8 Personen. Dies ist die optimale Anzahl, aber es gibt auch Gruppen mit weniger Mitgliedern. Wenn mehr als 8 Personen in einem Team sind, wird die Interaktion zwischen ihnen kompliziert, was wiederum die Effizienz und Produktivität des Teams verringert.
Ein Team besteht aus:
-
Product Owner.
Dies ist die Person, die das Produkt vertritt und im Wesentlichen zwischen dem Kunden, den Benutzern und dem Entwicklungsteam vermittelt. Meistens ist jedoch auch der Auftraggeber ein Mitglied des Scrum-Teams.
-
Scrum-Master.
Dies sollte die Art von Fachkraft sein, die in der Lage ist, das Team zum Erfolg zu führen. Dabei sollte er oder sie nicht nur das Team leiten, sondern auch sicherstellen, dass die Grundsätze der Scrum-Methodik befolgt werden. Daher ist es für einen solchen Spezialisten wichtig, das Gleichgewicht zu halten: die Mitarbeiter nicht unter Druck zu setzen, aber auch nicht alle Arbeit selbst zu erledigen. Er muss auch nicht die Verantwortlichkeiten unter den Teammitgliedern aufteilen, der Scrum-Master ist nur da, um zu helfen und zu leiten, und er kann alle Schwierigkeiten lösen, die die Erstellung des Produkts behindern.
-
Entwickler.
Die Zusammensetzung eines Scrum-Teams umfasst mehrere Spezialisten mit unterschiedlichen Fähigkeiten und Fertigkeiten. Aus diesem Grund ist die Bezeichnung "Entwickler" willkürlich, denn je nach Produkt kann das Arbeitsteam auch aus Designern, Programmierern und Marketingspezialisten bestehen. Es ist diese Vielfalt, die es einem Team aus mehreren Personen ermöglicht, ein Produkt von Grund auf zu entwickeln. Dies ist übrigens auch eine wichtige Klarstellung: ein Team = ein fertiges Produkt.
Arbeitsphasen eines Scrum-Teams
Folgende Phasen des Aufbaus und der Aktivitäten eines Scrum-Teams können unterschieden werden:
Phase 1: Zusammenstellung eines Scrum-Teams.
Zunächst müssen die Fachleute bestimmt werden, die das Scrum-Team bilden werden, denn ihre gut koordinierte Arbeit wird die Qualität des künftigen Produkts bestimmen. Denken Sie daran, dass bei der Scrum-Methode alle Teammitglieder als Einheit arbeiten. Außerdem sollte sich die Zusammensetzung des Teams nicht ändern, so dass es wichtig ist, zunächst Fachleute aufzunehmen, die alle Scrum-Werte teilen.
Phase 2: Identifizierung des Product Owners.
Dies kann der Kunde oder sein Vertreter sein. In jedem Fall muss es sich um eine Person handeln, die bereit ist, im Team zu interagieren, Feedback zu geben, ihre Erfahrungen zu teilen und in allen Entwicklungsphasen neue und interessante Lösungen vorzuschlagen.
Schritt 3: Auswahl eines Scrum-Masters.
Der Scrum-Master ist der wichtigste Teil des Teams, da er bestimmt, wie angenehm die Arbeit für alle Teammitglieder sein wird. Darüber hinaus ist es wichtig zu verstehen, dass ein etabliertes Team keinen Anführer haben sollte. Alle Aktivitäten beruhen auf dem gegenseitigen Austausch von Meinungen und Wissen, und der Scrum-Master fungiert als Supervisor und hilft dem Team lediglich, sich zusammenzuschließen. Daher sollte der Scrum Master ein erfahrener Spezialist sein, der mit der Scrum-Methodik nicht nur in der Theorie, sondern auch in der Praxis vertraut ist.
Phase 4: Zusammenstellung des Produkt-Backlogs.
Das Backlog ist eine organisierte Liste der Elemente, Funktionen und Aufgaben, die das zu erstellende Produkt enthalten soll. Es sollte erstellt werden, bevor Sie mit dem Entwicklungsprozess beginnen. Mit anderen Worten: Das Backlog ist eine Liste aller Produktmerkmale und Anforderungen, auf die sich der Product Owner und alle Beteiligten einigen müssen. An dieser Liste ist dann festzuhalten.
Phase 5: Planung eines Sprints.
Alle Sprints beginnen mit der Planung. Das heißt, zu Beginn des Sprints findet ein kleines Planungstreffen statt, in dem die Teams festlegen, was und wie im Sprint erreicht werden kann. Die Mitglieder des Scrum-Teams analysieren gemeinsam das Produkt-Backlog und treffen weitere Entscheidungen. Am Ende des Planungsmeetings sollte jedes Teammitglied eine klare Vorstellung davon haben, was umgesetzt werden muss. Mit anderen Worten: Für jeden Sprint werden ein Hauptziel und Aufgaben festgelegt, die die Entwickler bis zum Ende dieses Arbeitszyklus erreichen müssen. Daraus ergibt sich ein Backlog für den Sprint selbst, d. h. eine Liste von Aufgaben für diesen Zeitraum. Darüber hinaus sollten in diesem Stadium für jede Aufgabe Fristen festgelegt werden.
Phase 6: Abhalten eines Scrum-Meetings oder Stand-up-Meetings.
Ein Daily Scrum ist ein tägliches kurzes, 15-minütiges (oder noch kürzeres) Treffen, um Fortschritte zu besprechen und Hindernisse zu identifizieren. Es kann auch als "Daily Stand-up" bezeichnet werden, da es empfohlen wird, es im Stehen abzuhalten, um die Teilnehmer nicht länger als nötig aufzuhalten. Das Wesentliche eines solchen Treffens ist die Analyse der geleisteten Arbeit und die Ermittlung des Wachstums (in der Scrum-Methodik wird dies als ein Schritt auf dem Weg zum Ziel bezeichnet). Zu diesem Zweck sollte jedes Gruppenmitglied einige Fragen beantworten, zum Beispiel:
-
Was habe ich seit der letzten Sitzung erreicht?
-
Was muss heute getan werden?
-
Was sind die Hindernisse oder Herausforderungen?
In diesem Fall besteht die Aufgabe des Scrum-Masters darin, zu verstehen, wie die Dinge laufen, und, wenn etwas schief läuft, dem Team zu helfen, mit den Schwierigkeiten fertig zu werden.
Phase 7: Einbindung des Scrum-Boards.
Dies ist eine der Techniken zur Visualisierung von Arbeitsabläufen, die auch in der Kanban-Methodik verwendet wird. In ähnlicher Weise hängt das Scrum-Team ein virtuelles Board auf oder erstellt ein solches, das in bestimmte Bereiche unterteilt ist und alle Schritte des Projekts widerspiegelt. Diese recht einfache Methode hilft allen Teammitgliedern, den Überblick über den Gesamtfortschritt und den Entwicklungsfortschritt zu behalten.
Phase 8: Sprint-Retrospective.
Nach Abschluss eines Sprints findet eine Überprüfung der erzielten Ergebnisse und ein Test des Produkts statt. Das Produkt muss dann getestet werden, um festzustellen, ob alle für diesen Arbeitszyklus festgelegten Aufgaben erfüllt wurden. Darauf aufbauend erfolgt die Planung und Ideenfindung für den nächsten Sprint und so weiter.
Die Scrum-Methodik kann in absolut jedem Bereich eingesetzt werden, und die Mitglieder von Scrum-Teams können Spezialisten in verschiedenen Bereichen sein. Am häufigsten wird Scrum jedoch in Teams für die Entwicklung von Software eingesetzt. Dadurch können die Teams schneller auf sich ändernde Anforderungen reagieren und ein bestimmtes Budget einhalten. Es ist also schwierig, die Nachteile des Scrum-Ansatzes aufzuzeigen, aber es ist wichtig zu überlegen, in welchem Fall sein Einsatz am sinnvollsten ist. Damit die Methode wirksam ist, müssen die Mitarbeiter bereit sein zu experimentieren. Wenn ein Unternehmen erfolgreich einen gut etablierten Algorithmus für die Entwicklung neuer Produkte einsetzt, kann die Anwendung der Scrum-Methode aufgeschoben werden.