Was ist Scrum - Agiles Projektmanagement einfach erklärt
Veröffentlicht am
Scrum ist ein Konzept, das Teams bei der Zusammenarbeit in Projekten unterstützt. So wie Fußballteams für ihre großen Spiele trainieren, ermutigt Scrum Projektteams, sich selbst zu organisieren und Erfahrungen zu nutzen, um Probleme zu lösen und sich dabei jeden Tag zu verbessern.
Aber das ist noch nicht alles. Scrum ist auch ein beliebter Ansatz für die Umsetzung von Agile. In Scrum entwickeln Teams Produkte in kurzen Iterationen, die Sprints genannt werden. Dies ermöglicht es ihnen, einen soliden Softwareentwicklungsplan mit größerer Flexibilität und Transparenz zu erstellen.
Scrum ist eine Teilmenge einer speziellen agilen Methodik, einer Projektmanagementtechnik, die von agilen Teams eingesetzt wird.
Was ist Agile?
Agile ist ein Ansatz für das Projektmanagement, bei dem inkrementelle und iterative Schritte zur Fertigstellung von Projekten im Mittelpunkt stehen. Die inkrementellen Teile eines Projekts werden in kurzfristigen Entwicklungszyklen durchgeführt. Bei diesem Ansatz stehen eine schnelle Lieferung, die Anpassung an Veränderungen und die Zusammenarbeit im Vordergrund und nicht das Management von oben nach unten und das Befolgen eines festen Plans.
In agilen Prozessen gibt es ein ständiges Feedback, das es den Teammitgliedern ermöglicht, sich auf die auftretenden Herausforderungen einzustellen, und den Interessengruppen die Möglichkeit gibt, konsistent zu kommunizieren. Obwohl der agile Ansatz ursprünglich für die Softwareentwicklung entwickelt wurde, ist er heute bei der Durchführung vieler verschiedener Projekte und bei der Leitung von Organisationen weit verbreitet.
Vergleichen Sie dies mit traditionelleren Formen des Projektmanagements. Das traditionelle Projektmanagement verläuft im Allgemeinen linear über die Phasen Planung, Entwurf, Durchführung und Abschluss. Eine Phase muss abgeschlossen sein, bevor die nächste in Angriff genommen werden kann.
Agile Methoden und Rahmenwerke
Es gibt mehrere agile Methoden und Frameworks, die jeweils ihre eigenen Vor- und Nachteile haben. Einige sind Mischformen aus mehreren Methoden. Scrum ist jedoch die bei weitem am häufigsten verwendete agile Methodik.
Beliebte Agile-Methoden sind:
- Scrum
- Kanban
- Lean
- Crytal
- Extreme Programming (XP)
- Feature-Driven Development (FDD)
- Domain-Driven Design (DDD)
- Dynamic Systems Development Method (DSDM)
- ScrumBan
- Agil-Wasserfall/Hybrid Agil
- Scrum XP Hybrid
Scrum-Projektmanagement
Scrum ist eine Methode zur Verwaltung vielschichtiger Projekte, deren Umfang sich im Laufe des Projekts ändern kann. Die Teams legen Wert auf Konzentration, Zusammenarbeit und Produktivität, um qualitativ hochwertige Ergebnisse zu erzielen und sich schnell an Änderungen anzupassen.
Scrum-Rollen
In Scrum gibt es drei Hauptrollen:
- Der Product Owner
- Der Scrum Master
- Das Entwicklungsteam
Product Owner
Der Product Owner entscheidet über das weitere Vorgehen und vertritt dabei die Interessen des Kunden. Ihr Ziel ist es, sicherzustellen, dass sich das Team auf die wichtigsten Aufgaben konzentriert, die den größten Wert schaffen.
Ein Product Owner muss immer zur Verfügung stehen, um das Entwicklungsteam zu leiten oder bei Bedarf Input zu liefern, aber das Ziel ist nicht, die Gruppe zu managen; die effektivsten Scrum-Teams organisieren sich selbst.
Scrum-Master
Die Hauptaufgabe des Scrum Masters besteht darin, das Entwicklungsteam dabei zu unterstützen, unabhängig zu bleiben. Er fängt Hindernisse für den Projektfortschritt ab und beseitigt sie. Er fungiert als Puffer zwischen äußeren Kräften, die die Produktivität des Teams beeinträchtigen.
Der Product Owner ist dafür verantwortlich, was das Team entwickelt, und der Scrum Master ist für das wie verantwortlich, indem er tägliche Standup-Meetings leitet.
Entwicklungsteam
Entwicklungsteams setzen sich aus Mitgliedern mit mehreren Funktionen zusammen, damit die Gruppe über alle Fähigkeiten im Haus verfügen kann. Ein Entwicklungsteam konzentriert sich jeweils auf ein einziges Projekt; die Mitglieder teilen ihre Arbeit nicht auf mehrere Projekte auf oder führen Multitasking durch.
Sobald ein Product Owner eine Liste der notwendigen Aufgaben erstellt hat, bestimmt das Entwicklungsteam, wie viel es in einem Sprint erreichen kann, und erstellt den Rest des Plans entsprechend. Das Team verfolgt dann seine Fortschritte in täglichen Scrum-Meetings.
Zentrale Werte
Als agiler Rahmen ähneln die Werte von Scrum denen der agilen Methoden. Es hat jedoch auch seine eigenen Richtlinien:
- Offenheit: Teamarbeit und Transparenz sind unerlässlich; Zusammenarbeit ist der effektivste Weg, um ein wertvolles Produkt zu schaffen.
- Fokus: Bei Scrum gibt es kein Multitasking. Da die Produktivität entscheidend ist, ist es wichtig, den Fokus des Teams nicht auf mehrere Projekte aufzuteilen oder den Fokus eines Mitglieds mitten in einem Sprint umzuleiten. Stattdessen konzentrieren sich Scrum-Teams auf eine einzige Aufgabe, um das beste Qualitätsprodukt zu liefern.
- Mut: Teams müssen in der Lage sein, sich pro Sprint ein ehrgeiziges Arbeitspensum vorzunehmen. Scrum-Master müssen auch die Fähigkeit haben, sich gegenüber den Stakeholdern zu behaupten. Der Product Owner muss das Selbstvertrauen haben, ein Entwicklungsteam mit Autorität zu führen.
- Verbindlichkeit: Jeder Sprint ist eine neue Verpflichtung. Ein Team muss sich darauf einigen, woran es arbeiten will, und es muss sich daran halten können. Dieser Wert hilft den Teams dabei, festzustellen, ob ein Produkt fertiggestellt ist; es muss nicht nur funktional sein, sondern auch bestimmte Qualitätsstandards erfüllen.
- Respekt: Die Zuständigkeiten und Rollen in Scrum sind transparent. Jedem Teammitglied wird unabhängig von seinem Dienstalter, seiner Aufgabenbeschreibung oder seinem Status der gleiche Respekt entgegengebracht. Das Entwicklungsteam respektiert letztlich die Autorität des Product Owners in Bezug auf das, woran das Team arbeitet, und der Product Owner muss das Bedürfnis des Teams respektieren, dem Prozess zu folgen, der für es am besten funktioniert.
Wie Scrum funktioniert
Scrum verwendet aggressive Sprints, um iterative Verbesserungen in einem agilen Ansatz vorzunehmen. Scrum-Teams koordinieren sich, um während dieser Sprints große Mengen an Arbeit zu erledigen, und jeder Sprint ist so geplant, dass die Mitglieder viel Arbeit erledigen können, ohne die Integrität der Veröffentlichung oder die Produktqualität zu gefährden. Jeder Sprint arbeitet auf das endgültige Produktziel hin, um sicherzustellen, dass das bestmögliche Produkt hergestellt wird.
Der Scrum-Prozess
Wenn ein Kunde einen Bedarf an das Team heranträgt, wird das Endprodukt in einzelne Teile zerlegt. Dann setzt das Scrum-Team Prioritäten für diese Teile und arbeitet in kurzen Abschnitten, den so genannten Sprints, an ihnen. Sprints können bis zu vier Wochen dauern, obwohl ein oder zwei Wochen die Regel sind.
Am Ende eines Sprints liefert das Team ein Produktinkrement. Betrachten Sie dieses Inkrement als eine Produktversion, die bei Bedarf ausgeliefert werden kann. Teams und Stakeholder besprechen die Sprint-Ergebnisse gemeinsam in einem Retrospektiv-Meeting, da Transparenz in Scrum entscheidend ist. Auf diese Weise sind alle Beteiligten auf dem gleichen Stand, was die Ergebnisse, Prioritäten und notwendigen Anpassungen betrifft.
Teams nutzen tägliche Standups, um die interne Transparenz zu fördern. In diesen kurzen 15-minütigen täglichen Scrum-Meetings können alle berichten, was sie am Vortag erreicht haben, woran sie an diesem Tag arbeiten werden und welche Hindernisse sie derzeit von einer effizienteren Arbeit abhalten. Diese offene Sichtbarkeit ermöglicht es den Führungskräften, Probleme aufzudecken, damit das Team sie gemeinsam überwinden kann.
Sprint-Planung, -Review und -Retrospektive
Scrum ist erfolgreich, weil es sich auf selbstorganisierende Teams stützt, die einem Projektmanagement-Rahmen folgen, um nach festgelegten Zeiträumen, die Sprints oder Iterationen genannt werden, vollständige Produkte zu liefern. Diese Struktur umfasst Rollen, Regeln, Meetings und Artefakte.
Product Owner, Scrum Master und das Entwicklungsteam sind die drei entscheidenden Rollen in jedem Scrum-Team. Das Team entwirft, verwaltet und kommuniziert Informationen an andere Mitglieder und wichtige Interessengruppen.
Es gibt vier Arten von Scrum-Meetings, die bei der Entwicklung eines jeden Produkts helfen. Diese Meetings werden danach benannt, wann sie im Entwicklungsprozess auftreten:
- Sprint-Planung: Alle Teammitglieder nehmen an dieser Sitzung teil, um das Produkt vorzustellen. Alle Mitglieder werden ermutigt, ihre Meinungen und Bedenken zu äußern. In dieser Sitzung werden auch Zeitschätzungen besprochen und Prioritäten festgelegt, auf die man sich konzentrieren sollte.
- Daily Scrum: Daily Scrum Meetings finden täglich während eines Sprints statt. Ziel ist es, einen Tagesplan für die Produktentwicklung zu erstellen und das Team zu besprechen. Jedes Mitglied des Scrum-Teams kann Hindernisse und Bedenken ansprechen, denen es gegenübersteht.
- Sprint-Review: Betrachten Sie den Sprint-Review als eine Überprüfung des Produkts, an dem ein Team während des Sprints arbeitet. Gruppen halten am Ende eines jeden Sprints Sprint-Reviews ab. Ziel ist es, den Stakeholdern Transparenz zu verschaffen, indem sie aufzeigen, was in den letzten Wochen erreicht wurde.
- Sprint-Retrospektive: In diesen Retrospektiven am Ende des Sprints wird besprochen, wie gut das Team im letzten Sprint gearbeitet hat. Es ist auch die Zeit für ein Brainstorming, wie die Teamleistung in Zukunft verbessert werden kann.
Scrum-Praktiken helfen den Teams, während des gesamten Prozesses flüssige Produktziele zu erreichen und zu verwalten. Sie fördern auch die Verantwortlichkeit, indem sie die Teammitglieder über alle Projektphasen hinweg auf dem Laufenden halten.
Artefakte
Scrum-Artefakte stellen die Arbeit dar, die mit der Fertigstellung eines Sprints verbunden ist, und bieten noch mehr Transparenz und Sichtbarkeit. Die drei wichtigsten Artefakte in Scrum sind:
- Produkt-Backlogs: Das Backlog mit technischen und benutzerorientierten Aspekten, die in einem Projekt abgeschlossen werden müssen.
- Sprint Backlogs: Aufgaben, die während einer Sprint-Planungssitzung festgelegt werden und in einer Iteration abgeschlossen werden müssen.
- Burndown-Diagramme: Dieser Diagramm zeigt der Rest des Aufwands, der für die Fertigstellung der Sprint-Backlog-Aufgaben erforderlich ist.
Scrum nutzt auch andere Werkzeuge, darunter:
- User Stories: Stories beschreiben eine Softwarefunktion aus der Sicht des Kunden, wobei bestimmte wünschenswerte Variablen wie die Art des Benutzers, was er will und warum er es will, detailliert beschrieben werden. Das Entwicklungsteam verwendet Stories, um Code zu erstellen, der die Kundenwünsche widerspiegelt.
- Timeboxen: Timeboxes sind vorgegebene Zeiträume, in denen ein Team auf ein Ziel hinarbeiten muss. Bei diesem Ansatz wird die Arbeit gestoppt, wenn das Team das Limit erreicht, nicht unbedingt, wenn es fertig ist. Timeboxes werden häufig verwendet, um Ziele zurückzusetzen und den Fortschritt zu analysieren.
Scrum Vor- und Nachteile
Vorteile
Scrum ist ein sehr detaillierter Ansatz mit spezifischen Zeremonien und Rollen für jeden Schritt des Prozesses. Zu den Vorteilen gehören:
- Erhöhte Projektsichtbarkeit und Transparenz: Routinemäßige Check-Ins, tägliche Besprechungen und klar definierte Rollen ermöglichen es den Teammitgliedern, den Überblick über das Projekt zu behalten und Missverständnisse und Probleme zu vermeiden. Es ist einfach, Probleme zu erkennen, bevor sie sich ausweiten und zu Verzögerungen führen, so dass die Prozesse in Gang bleiben.
- Verantwortlichkeit: Das Team entscheidet gemeinsam, welche Arbeit es während eines Sprints erledigen kann. Die Mitglieder äußern ihre Bedenken und Meinungen bei jedem Schritt. Es gibt keinen Projektmanager, der die Aufgaben isoliert, was zu einer stärkeren Befähigung und Zusammenarbeit zwischen den Gruppenmitgliedern führt.
- Mehr Flexibilität: Die Feedbackschleifen sind kürzer, so dass es einfacher ist, Änderungen während des Sprints zu berücksichtigen. Während der Sprints gibt es konsequente Reflexion und Raum zur Verfeinerung der Ausführung durch Scrum-Meetings.
- Kostenersparnis: Scrum bringt Hindernisse ans Licht, bevor sie zu Verzögerungen führen. Das hilft den Unternehmen, weniger Geld für die Entwicklung qualitativ hochwertigerer Produkte auszugeben. Kurze Sprints machen es möglich, Fehler schnell zu beheben.
Nachteile
Scrum ist nicht ohne Nachteile. Hier sind einige von ihnen:
- Ausweitung des Umfangs: Die Betonung von Veränderungen und fließenden Zielen kann zu einer Ausweitung des Umfangs führen. Stakeholder wollen oft weitere Funktionen hinzufügen, was den Prozess und die Ziele plötzlich und drastisch verändern kann.
- Große Teams sind nicht leicht zu managen: Scrum funktioniert am besten mit kleinen Teams.
- Teams erfordern Engagement und Erfahrung: Bei kleinen Teams muss jedes Mitglied mit Scrum und allen seinen Prinzipien vertraut sein, um in seiner Rolle erfolgreich zu sein. Jeder, dem es an technischem Wissen mangelt oder der sich nicht engagieren kann, wird ein Problem für die Zielerreichung darstellen.
- Scrum-Master müssen über viel Wissen verfügen: Der falsche Scrum Master kann den Produkterfolg abwürgen. Wenn er versucht, das Team zu kontrollieren, anstatt ihm zu vertrauen und es zu beaufsichtigen, wird die Gruppe kein Qualitätsprodukt produzieren; der Scrum-Prozess wird scheitern.
- Das Versäumnis, Aufgaben zu definieren, kann zu Ungenauigkeiten führen: Wenn der Product Owner die notwendigen Aufgaben nicht genau definiert, wird sich das in den Projektzeitplänen niederschlagen. Die Planung wird schwieriger und die Sprints können länger dauern als geplant.
Um die potenziellen Nachteile der Scrum-Methode zu überwinden, sind eine gute Entscheidungsfindung und eine angemessene Planung unerlässlich. Wenn ein Unternehmen beispielsweise ein größeres Team einsetzt, ist es wichtig, dass die Rollen, Verantwortlichkeiten und Ziele für jedes Mitglied klar definiert sind, damit es keine Ausreden für ein Scheitern gibt. So kann sich das Team besser konzentrieren und der Scrum Master kann es effektiver leiten.
Stellen Sie sicher, dass Sie eine Projekt-Roadmap bereithalten, damit Sie sicherstellen können, dass Ihr Team das Produkt fristgerecht liefert.
Die effektivsten Einsatzmöglichkeiten von Scrum
Scrum ist ein unkompliziertes System. Die Rollen, Regeln, Ereignisse und Artefakte sind einfach genug, um sie zu verstehen. Der semi-präskriptive Ansatz beseitigt viele der Unklarheiten, die während des Entwicklungsprozesses entstehen. Außerdem können Unternehmen den Prozess immer noch anpassen.
Am besten lässt sich Scrum in einem Projekt einsetzen, das flexibel und einfach sein soll und über eine ausreichende Definition verfügt, um die von den Interessengruppen oder Kunden gewünschten Ziele zu erreichen.
Scrum wird durch seine Sprints definiert, so dass es am besten im agilen Projektmanagement eingesetzt werden kann, das von einer häufigen Überprüfung der Ziele, Teamrollen und erforderlichen Aufgaben profitieren kann.
Scrum hat vorgeschriebene Rollen, die einem bestimmten Projekt eine Struktur geben, aber es gibt auch viel Spielraum für Zuweisungen, die sich je nach den Zielen und Zeitplänen, die sich während des Prozesses entwickeln, ändern können.
Mit der Scrum-Gliederung in überschaubare User Stories lassen sich auch komplexere, anspruchsvolle Projekte leichter angehen. Darüber hinaus ermöglichen klar definierte Rollen und geplante Ereignisse kollektive Verantwortung und viel Transparenz für den gesamten Entwicklungszyklus.
Und schließlich bleibt das Team dank der schnellen Sprints motiviert, und die Benutzer freuen sich über Fortschritte, ohne zu lange zwischen den einzelnen Releases warten zu müssen.
Fazit
Es kann einige Zeit dauern, bis man Scrum vollständig versteht, vor allem, wenn das Softwareteam an das traditionelle Wasserfallmodell der Entwicklung gewöhnt ist. Scrum ist das komplette Gegenteil von Wasserfall, da Scrum agile Methoden einsetzt, um die Dinge zu erledigen. Die Einführung kleinerer Iterationen, täglicher Meetings, Sprint-Reviews und die Bestimmung des Scrum-Masters kann für neue Teams eine Herausforderung darstellen.
Dennoch überwiegen die langfristigen Vorteile die anfängliche Lernkurve bei weitem.
Scrum hat sich für agile Teams, die komplexe Software- und Hardwareprodukte in zahlreichen Branchen entwickeln, als sehr erfolgreich erwiesen. Es ist ein überzeugendes Rahmenwerk, das für jede Organisation geeignet ist.