|
|
Scrum ist im Kommen. Immer mehr IT-, Web- und Produktentwicklungs-Projekte gehen mit agilen Methoden vor – Scrum ist die verbreitetste davon. Das Projekt wird bis zur Endauslieferung sehr nah am Kunden, mit Prototypen, vielen Zwischenschritten, stetigen Feedbacks und sukzessiven Anpassungen weiter entwickelt – und zwar in einem bunten Team („Scrum“ ist die wuselige Menschentraube beim Rugbyspiel). Hinweis: Die meisten Projekte in der Praxis sind allerdings nicht Scrum in Reinform, sondern modifiziertes (oder angebliches)-: Scrum. Und negative Effekte sind nicht auszuschließen (z. B. Stress).
Hier eine Liste, was Scrum ausmacht:
- Flache Hierarchien
- Flexible Strategien
- Multidisziplinäre Teams
- Sprints: Entwicklungszyklen (1-4 Wochen)
- Scrum Board: to do, busy, done
- Visuelles Arbeiten, Fokussieren
- Burndown Chart am Schwarzen Brett
- Evtl. gut gepflegtes Projekt-Wiki
- Experimentieren, spielerisch
- Ggf. auf nächste Sprints vertagen
- Sprint: Trial and Error, Iteration
- Sukzessive Planung/Modifikation
- Selbstorganisation, -motivation
- Daily Scrum (max. 15 Minuten gleich morgens)
- impediments (Hindernisse)
- ncrements (Produktfunktionalitäten)
- done (implementiert, getestet, dokumentiert)
- Längeres Teamtreffen (1x wöchentlich)
- Scrum Master und Product Owner
- Kreative Wohlfühl-Treffplätze
- Mehr Autonomie, mehr Freude im Job
- Lernende Organisation
- Offenheit, Kooperation, Kundenorientierung
Scrum (aus englisch scrum für „[das] Gedränge“) ist ein Vorgehensmodell des Projekt- und Produktmanagements, insbesondere zur agilen Softwareentwicklung. Es wurde ursprünglich in der Softwaretechnik entwickelt, ist aber davon unabhängig. Scrum wird inzwischen in vielen anderen Bereichen eingesetzt.[1] Es ist eine Umsetzung von Lean Development für das Projektmanagement.[2][3]
Scrum besteht aus nur wenigen Regeln. Diese beschreiben fünf Aktivitäten, drei Artefakte und drei Rollen, die den Kern (oder englisch core) ausmachen. Die Regeln sind im sogenannten Agile Atlas (für den Kern, also wohl die Grundlagen) oder im (etwas ausführlicheren) Leitfaden Scrum Guide beschrieben.[4][5] Das Scrum-Framework muss durch Techniken für die Umsetzung der Aktivitäten, Artefakte und Rollen konkretisiert werden, um Scrum tatsächlich umsetzen zu können. Der Kern von Scrum wurde von den Umsetzungstechniken getrennt, um einerseits die zentralen Elemente und Wirkungsmechanismen klar zu definieren, andererseits um große Freiheiten bei der individuellen Ausgestaltung zu lassen.
Der Ansatz von Scrum ist empirisch, inkrementell und iterativ. Er beruht auf der Erfahrung, dass viele Entwicklungsprojekte zu komplex sind, um in einen vollumfänglichen Plan gefasst werden zu können. Ein wesentlicher Teil der Anforderungen und der Lösungsansätze ist zu Beginn unklar. Diese Unklarheit lässt sich beseitigen, indem Zwischenergebnisse geschaffen werden. Anhand dieser Zwischenergebnisse lassen sich die fehlenden Anforderungen und Lösungstechniken effizienter finden als durch eine abstrakte Klärungsphase. In Scrum wird neben dem Produkt auch die Planung iterativ und inkrementell entwickelt. Der langfristige Plan (das Product Backlog) wird kontinuierlich verfeinert und verbessert. Der Detailplan (das Sprint Backlog) wird nur für den jeweils nächsten Zyklus (den Sprint) erstellt. Damit wird die Projektplanung auf das Wesentliche fokussiert.[6]
Die empirische Verbesserung fußt auf drei Säulen:[5]
- Transparenz: Fortschritt und Hindernisse eines Projektes werden regelmäßig und für alle sichtbar festgehalten.
- Überprüfung: In regelmäßigen Abständen werden Produktfunktionalitäten geliefert und sowohl das Produkt als auch das Vorgehen beurteilt.
- Anpassung: Anforderungen an das Produkt, Pläne und Vorgehen werden nicht ein für alle Mal festgelegt, sondern kontinuierlich detailliert und angepasst. Scrum reduziert die Komplexität der Aufgabe nicht, strukturiert sie aber in kleinere und weniger komplexe Bestandteile, die Inkremente.
Inhaltsverzeichnis
[Verbergen]Geschichte und Grundlegendes[Bearbeiten | Quelltext bearbeiten]
Die Anfänge von Scrum lassen sich auf Ikujirō Nonaka und Hirotaka Takeuchi[11][12][13] zurückverfolgen. Damals schuf Jeff Sutherland[14] in einem Projekt für die Guinness Peat Aviation eine neue Rolle für die Projektleiter. Diese wurden zu Teammitgliedern, und ihre Rolle war eher die eines Moderators als die eines Managers. Ken Schwaber veröffentlichte auf der OOPSLA 1995 den ersten Konferenzbeitrag über Scrum. Darin schrieb Schwaber: „Scrum akzeptiert, dass der Entwicklungsprozess nicht vorherzusehen ist. Das Produkt ist die bestmögliche Software unter Berücksichtigung der Kosten, der Funktionalität, der Zeit und der Qualität.“[15] Der Begriff Scrum stammt aber von Ikujirō Nonaka und H. Takeuchi, die damit das Gedränge (englisch scrum) im Rugby als Analogie für außergewöhnlich erfolgreiche Produktentwicklungsteams beschrieben. Diese Teams arbeiten als kleine, selbst-organisierte Einheiten und bekommen von außen nur eine Richtung vorgegeben, bestimmen aber selbst die Taktik, wie sie ihr gemeinsames Ziel erreichen.[16] 2001 veröffentlichten Ken Schwaber und Mike Beedle mit Agile Software Development with Scrum das erste Buch über Scrum. 2003 folgte Schwabers Agile Project Management with Scrum.[17] 2003 war auch das Jahr, in dem die ersten zertifizierten Scrum Master von Schwaber ausgebildet wurden. 2007 erschien schließlich Ken Schwabers drittes Buch, „The Enterprise and Scrum“. Darin geht es nicht mehr bloß um die Einführung von Scrum in Software-Entwicklungsteams, sondern um die Ausweitung auf das gesamte Unternehmen.[18] Parallelen zu Scrum finden sich in der schlanken Produktion (englisch lean production), die ihren Ursprung in japanischen Unternehmen hat. Sie strebt eine bessere Wertschöpfung durch verstärkte Zusammenarbeit an. Nonaka und Takeuchiführen den Erfolg solcher Unternehmen auf ein gelungenes Wissensmanagement zurück. Im westlichen Verständnis sei die Ressource Wissen auf Worte und Zahlen begrenzt. Wissen kann nach diesem Verständnis erworben oder antrainiert werden. Japanische Firmen hingegen sehen in dieser Art von Wissen nur die Spitze eines Eisbergs. Für sie ist Wissen in erster Linie implizit („tacit“). Dieses implizite Wissen ist subjektiv und intuitiv, es enthält unser Bild der Realität und unsere Vision für die Zukunft. Während explizites Wissen sich leicht darstellen und verarbeiten lässt, ist dies bei implizitem Wissen deutlich schwerer. Unternehmen wie Toyota oder Canon profitieren vom impliziten Wissen ihrer Mitarbeiter, indem sie hohen Wert auf die Interaktion zwischen ihren Mitarbeitern legen.[19] Scrum lässt sich in diesem Zusammenhang als Gegenentwurf zur Befehls-und-Kontroll-Organisation verstehen, in der Mitarbeiter möglichst genaue Arbeitsanweisungen erhalten. Stattdessen baut Scrum auf hochqualifizierte, interdisziplinär besetzte Entwicklungsteams, die zwar eine klare Zielvorgabe bekommen, für die Umsetzung jedoch allein zuständig sind. Dadurch bekommen die Entwicklungsteams den nötigen Freiraum, um ihr Wissens- und Kreativitätspotenzial in Eigenregie zur Entfaltung zu bringen.[20] Scrum verkörpert die Werte der agilen Software-Entwicklung, die 2001 im agilen Manifest von Ken Schwaber, Jeff Sutherland und anderen formuliert wurden:[21]- Individuen und Interaktionen sind wichtiger als Prozesse und Werkzeuge.
- Funktionierende Software ist wichtiger als umfassende Dokumentation.
- Zusammenarbeit mit dem Kunden ist wichtiger als Vertragsverhandlungen.
- Reagieren auf Veränderung ist wichtiger als das Befolgen eines Plans.
Rollen[Bearbeiten | Quelltext bearbeiten]
Das Scrum Framework kennt drei Rollen: Product Owner, Entwicklungsteam und Scrum Master. Die Gesamtheit dieser Rollen wird als Scrum Team bezeichnet. Ein Scrum Team tritt mit den Beteiligten in Kontakt, den sogenannten Stakeholdern. Fortschritt und Zwischenergebnisse sind für alle Stakeholder transparent. Stakeholder dürfen bei den meisten Aktivitäten zuhören.[22][23] Verschiedene Autoren haben argumentiert, dass weitere Rollen einbezogen werden sollten, wenn man Scrum als Management-Framework verstehen will.[24] Da sich Scrum jedoch auf das Team fokussiert und kein Management-Framework ist, sind diese Rollen nicht in das Scrum Framework aufgenommen worden. Die drei Rollen haben sich als ausreichend für die Organisation eines Teams erwiesen. Für die Organisation größerer Einheiten und mehrerer Teams gibt es spezielle Frameworks wie das Scaled Agile Framework.[25] oder Large Scale Scrum[26] Diese Frameworks definieren weitere Rollen, die in großen agilen Entwicklungsorganisationen benötigt werden.Product Owner[Bearbeiten | Quelltext bearbeiten]
Der Product Owner ist für die Eigenschaften und den wirtschaftlichen Erfolg des Produkts verantwortlich. Er gestaltet das Produkt mit dem Ziel, seinen Nutzen zu maximieren. Der Nutzen könnte sich beispielsweise am Umsatz des Unternehmens orientieren. Er erstellt, priorisiert und erläutert die zu entwickelnden Produkteigenschaften, und er urteilt darüber, welche Eigenschaften am Ende eines Sprints fertiggestellt wurden. Er ist eine Person, kein Komitee. Ihm allein obliegt die Entscheidung über das Produkt, seine Eigenschaften und die Reihenfolge der Implementierung. So balanciert er Eigenschaften, Auslieferungszeitpunkte und Kosten.[27][28] Zur Festlegung der Produkteigenschaften verwendet der Product Owner das Product Backlog. Darin trägt er in Zusammenarbeit mit dem Entwicklungsteam und den Stakeholdern die Anforderungen an das Produkt ein. Der Product Owner ordnet, detailliert und aktualisiert das Product Backlog regelmäßig im Product Backlog Refinement.[29] Als Produktverantwortlicher hält der Product Owner regelmäßig Rücksprache mit den Stakeholdern, um deren Bedürfnisse und Wünsche zu verstehen. Dabei muss er die Interessen und Anforderungen unterschiedlicher Stakeholder verstehen und abwägen. In der Praxis erhalten Product Owner häufig nicht die Vollmacht, die notwendigen Entscheidungen verbindlich zu treffen – abweichend von der Rollenkompetenz, die in Scrum eigentlich vorgesehen ist. Häufig werden Product Owner auch mit fremden Aufgaben überlastet.[30]Entwicklungsteam[Bearbeiten | Quelltext bearbeiten]
Das Entwicklungsteam ist für die Lieferung der Produktfunktionalitäten in der vom Product Owner gewünschten Reihenfolge verantwortlich. Zudem trägt es die Verantwortung für die Einhaltung der vereinbarten Qualitätsstandards. Das Entwicklungsteam organisiert sich selbst. Es lässt sich von niemandem, auch nicht vom Scrum Master, vorschreiben, wie es Backlogeinträge umzusetzen hat.[5] Ein Entwicklungsteam sollte in der Lage sein, das Ziel eines jeweiligen Sprints ohne größere äußere Abhängigkeiten zu erreichen. Deshalb ist eine interdisziplinäre Besetzung des Entwicklungsteams wichtig, z. B. mit Architekt, Entwickler, Tester, Dokumentationsexperte und Datenbankexperte. Gute und schlechte Ergebnisse werden nie auf einzelne Teammitglieder, sondern immer auf das Entwicklungsteam als Einheit zurückgeführt. Das ideale Teammitglied ist sowohl Spezialist als auch Generalist, damit es Teamkollegen beim Erreichen des gemeinsamen Ziels helfen kann.[31] Ein Entwicklungsteam besteht aus mindestens drei, höchstens neun Mitgliedern. Es muss einerseits groß genug sein, alle benötigten Kompetenzen zu vereinigen, andererseits steigt mit wachsender Teamgröße der Koordinierungsaufwand.[32] Zu den weiteren Aufgaben eines Entwicklungsteams zählt die Schätzung des Umfangs der Einträge im Product Backlog (im Product Backlog Refinement). Außerdem bricht das Entwicklungsteam in der Sprint Planung die für einen Sprint ausgewählten Einträge aus dem Product Backlog in Arbeitsschritte, sogenannte Tasks, herunter, deren Bearbeitung in der Regel nicht länger als einen Tag dauert. Das Ergebnis ist das Sprint Backlog. Team-Mitglieder haben bisweilen Schwierigkeiten, die interdisziplinären Anforderungen zu akzeptieren. So mag beispielsweise ein Entwickler nicht verstehen, warum er auch die Arbeit eines Testers leisten soll. Dahinter steht jedoch der Gedanke, dass ein starkes Team den Unwägbarkeiten eines Projektes wesentlich besser gewachsen ist als eine Sammlung individueller Talente. Falls jemand mit einer Aufgabe nicht zurechtkommt, kann ein anderer helfen, das Sprint-Ziel zu erreichen. Fällt jemand für einige Zeit aus, so ist ein interdisziplinäres Team besser in der Lage, die fehlende Expertise zu kompensieren.Scrum Master[Bearbeiten | Quelltext bearbeiten]
Der Scrum Master ist dafür verantwortlich, dass Scrum gelingt. Dazu arbeitet er mit dem Entwicklungsteam zusammen, gehört aber selbst meist nicht dazu. Er führt die Scrum-Regeln ein, überprüft deren Einhaltung und kümmert sich um die Behebung von Störungen und Hindernissen. Dazu gehören mangelnde Kommunikation und Zusammenarbeit sowie persönliche Konflikte im Entwicklungsteam, Störungen in der Zusammenarbeit zwischen Product Owner und Entwicklungsteam sowie Störungen von außen, beispielsweise Aufforderungen der Fachabteilung zur Bearbeitung zusätzlicher Aufgaben während eines Sprints.[33] Ein Scrum Master ist gegenüber dem Entwicklungsteam eine dienende Führungskraft. Er gibt einzelnen Team-Mitgliedern keine Arbeitsanweisungen. Weder beurteilt er sie, noch belangt er sie disziplinarisch.[34] Der Scrum Master ist als Coach für den Prozess und die Beseitigung von Hindernissen verantwortlich. Unterschiedliche Teams und Situationen erfordern vom Scrum Master ein situatives Führen.[35] Zu Beginn einer Scrum-Implementierung ist der Scrum Master eine Vollzeitstelle, da die Umstellung der Abläufe, das Zusammenwachsen des Teams und das Einlernen der Rollen meist aufwändig sind. Er bildet das Team in Scrum aus. Ist Scrum erst einmal etabliert, kann der Scrum Master seine Rolle als Change-Manager wahrnehmen. Er hat dann die Zeit und auch die nötige Erfahrung, um Scrum im Unternehmen bekannt zu machen und dessen Akzeptanz zu steigern.[36]Stakeholder[Bearbeiten | Quelltext bearbeiten]
Stakeholder sind Rollen außerhalb von Scrum. Die folgenden Rollen können helfen, die unterschiedlichen Stakeholder und deren Aufgaben zu differenzieren.Kunden[Bearbeiten | Quelltext bearbeiten]
Dem oder den Kunden wird das Produkt nach Fertigstellung zur Verfügung gestellt. Kunden können je nach Situation sowohl interne Fachabteilungen als auch externe Personen oder Gruppen sein. Es ist Aufgabe des Product Owners, seine Kunden durch Lieferung des Wunschproduktes zu begeistern. Deshalb sollten Product Owner und Kunden für die Dauer des Projektes im engen Austausch stehen.[37] Vor Beginn der Entwicklung sollte der Product Owner ein möglichst genaues Verständnis von der Wunschvorstellung seiner Kunden gewinnen. Die Kunden sollten schon nach den ersten Sprints Gelegenheit haben, sich die neuen Funktionalitäten anzuschauen und hierzu Feedback zu geben.Anwender[Bearbeiten | Quelltext bearbeiten]
Anwender sind diejenigen Personen, die das Produkt benutzen. Ein Anwender kann, muss aber nicht zugleich Kunde sein. Die Rolle des Anwenders ist für das Scrum Team von besonderer Bedeutung, denn nur der Anwender kann das Produkt aus der Perspektive des Nutzers beurteilen. Anwender und Kunden sollten beim Sprint Review und beim Product Backlog Refinement hinzugezogen werden, um das Produkt zu erproben und Feedback zu geben.[38]Management[Bearbeiten | Quelltext bearbeiten]
Das Management trägt Verantwortung dafür, dass die Rahmenbedingungen stimmen. Dazu gehören die Bereitstellung von Räumen und Arbeitsmitteln, aber auch generell die Unterstützung für den eingeschlagenen Kurs. Das Management ist dafür verantwortlich, das Scrum-Team vor externen Arbeitsanforderungen zu schützen, adäquate personelle Besetzungen zu finden sowie den Scrum Master dabei zu unterstützen, Hindernisse auszuräumen.[39]Sprint[Bearbeiten | Quelltext bearbeiten]
Ein Sprint ist ein Arbeitsabschnitt, in dem ein Inkrement einer Produktfunktionalität implementiert wird. Er beginnt mit einem Sprint Planning und endet mit Sprint Review und Sprint-Retrospektive. Sprints folgen unmittelbar aufeinander. Während eines Sprints sind keine Änderungen erlaubt, die das Sprintziel beeinflussen.[40] Ein Sprint umfasst ein Zeitfenster von ein bis vier Wochen. Alle Sprints sollten idealerweise die gleiche Länge haben, um so dem Projekt einen Takt zu geben. Ein Sprint wird niemals verlängert – er ist zu Ende, wenn die Zeit um ist.[41] Ist das Ziel eines Sprints nicht mehr zu erreichen, beispielsweise weil das Team den Aufwand falsch eingeschätzt hat oder der Product Owner das Produktinkrement so nicht mehr will, dann kann der Sprint vom Product Owner abgebrochen werden. In diesem Fall wird der aktuelle Sprint mit einer Sprint-Retrospektive beendet und der neue Sprint ganz normal mit Sprint Planning begonnen.[42]Aktivitäten[Bearbeiten | Quelltext bearbeiten]
In Scrum spricht man von Ereignissen oder Aktivitäten statt von Meetings, um klarzustellen, dass es sich um Arbeit handelt. Alle Aktivitäten von Scrum haben feste Zeitfenster (Timeboxen), die nicht überschritten werden sollen.Sprint Planning[Bearbeiten | Quelltext bearbeiten]
Im Sprint Planning werden zwei Fragen beantwortet:- Was kann im kommenden Sprint entwickelt werden?
- Wie wird die Arbeit im kommenden Sprint erledigt?
Teil 1: Festlegung des Was[Bearbeiten | Quelltext bearbeiten]
Der Product Owner stellt dem Entwicklungsteam die im Product Backlog festgehaltenen Produkteigenschaften in der zuvor priorisierten Reihenfolge vor. Das Product Backlog sollte im Sprint zuvor im Product Backlog Refinement so weit vorbereitet worden sein, dass es geordnet, gefüllt und die Einträge für den nächsten Sprint geschätzt sind. Das gesamte Scrum Team arbeitet im ersten Teil der Planung daran, ein gemeinsames Verständnis für die im Sprint zu erledigende Arbeit zu entwickeln. Dabei werden die Eigenschaften und die Akzeptanzkriterien besprochen, beispielsweise die Gebrauchstauglichkeit. Außerdem einigt sich der Product Owner mit dem Entwicklungsteam auf die Kriterien, die am Ende des Sprints darüber entscheiden, ob die neue Funktionalität fertig ist oder nicht; siehe Definition of Done. Ziel ist die Fertigstellung eines auslieferbaren Produkts: ein Produktinkrement, das hinreichend getestet und integriert ist, um für den Benutzer freigegeben werden zu können. Anschließend prognostiziert das Entwicklungsteam die Anzahl der Product-Backlog-Einträge, die es im nächsten Sprint liefern kann. Die Entscheidung, wie viele Einträge im nächsten Sprint umgesetzt werden, liegt alleine beim Team, während die Entscheidung über die Reihenfolge alleine beim Product Owner liegt. Deshalb müssen beide konstruktiv zusammenarbeiten. Aus den ausgewählten Product-Backlog-Einträgen formuliert das Scrum Team gemeinsam ein Sprintziel.[44][45] Die ursprüngliche Beschreibung von Scrum verwendete den Begriff Commitment (Verpflichtung) statt Forecast (Prognose); dies wurde angepasst, weil es häufig zu Fehlentwicklungen zulasten der Qualität führte.[46]Teil 2: Festlegung des Wie[Bearbeiten | Quelltext bearbeiten]
Im zweiten Teil der Sprint Planung plant das Entwicklungsteam im Detail, welche Aufgaben (Tasks) zum Erreichen des Sprintziels und zur Lieferung der prognostizierten Product-Backlog-Einträge notwendig sind. Diese Planung macht das Entwicklungsteam, wobei der Product Owner für Fragen in Reichweite sein sollte. Oftmals bilden sich zur Beantwortung der Wie-Frage Kleingruppen, in denen verschiedene Aspekte wie z. B. Architektur, Datenelemente und Schnittstellen geklärt werden. Ergebnis ist das Sprint Backlog: der detaillierte Plan für den nächsten Sprint. Er enthält die für den Sprint geplanten Product-Backlog-Einträge und die Aufgaben zu deren Umsetzung. Häufig wird dafür ein Taskboard als Technik verwendet.Daily Scrum[Bearbeiten | Quelltext bearbeiten]
Zu Beginn eines jeden Arbeitstages trifft sich das Entwicklerteam zu einem max. 15-minütigen Daily Scrum, bei dem Scrum Master und Product Owner häufig anwesend, jedoch nicht aktiv beteiligt sind, falls sie nicht selbst Backlogelemente bearbeiten. Zweck des Daily Scrum ist der Informationsaustausch. Im Daily Scrum werden keine Probleme gelöst – vielmehr geht es darum, sich einen Überblick über den aktuellen Stand der Arbeit zu verschaffen. Dazu hat sich bewährt, dass jedes Teammitglied mit Hilfe des Taskboards sagt, was es seit dem letzten Daily Scrum erreicht hat, was es bis zum nächsten Daily Scrum erreichen möchte, und was dabei im Weg steht. Beim Daily Scrum kann offensichtlich werden, dass die Erledigung einer Aufgabe länger als geplant dauert. Dann ist es sinnvoll, den Task in kleinere Aufgaben aufzuteilen, die dann auch von anderen Mitgliedern des Entwicklungsteams übernommen werden können. Treten beim Daily Scrum Fragen auf, die sich nicht innerhalb der strikten 15-Minuten-Vorgabe beantworten lassen, so werden sie entweder notiert und dem Scrum Master übergeben, oder ihre Beantwortung wird auf ein späteres Meeting, häufig direkt im Anschluss, verlegt.[5][47]Sprint Review[Bearbeiten | Quelltext bearbeiten]
Das Sprint Review steht am Ende des Sprints. Hier überprüft das Scrum Team das Inkrement, um das Product Backlog bei Bedarf anzupassen. Das Entwicklungsteam präsentiert seine Ergebnisse und es wird überprüft, ob das zu Beginn gesteckte Ziel erreicht wurde. Das Scrum Team und die Stakeholder besprechen die Ergebnisse und was als Nächstes zu tun ist.[48][49] Im Sprint Review ist die Beteiligung von Kunden und Anwendern wichtig, da diese die fertige Funktionalität des Inkrements benutzen und validieren können. Hieraus ergibt sich wichtiges Feedback für die weitere Produktgestaltung. Es kann sogar passieren, dass die Funktionalität alle Abnahmekriterien erfüllt und dennoch aus der Perspektive des Benutzers unbrauchbar ist, beispielsweise wenn ein Button an einer schwer auffindbaren Stelle platziert wurde. Häufig entsteht während des Reviews ein lebhafter Dialog, in dem den Anwesenden neue Funktionalitäten einfallen. Das Ergebnis des Sprint Review ist das vom Product Owner notierte Feedback der Stakeholder. Dies ist eine notwendige Information bei der weiteren Gestaltung des Product Backlogs im nächsten Product Backlog Refinement. Es ist Aufgabe des Product Owners, die entwickelten Funktionalitäten zu begutachten. Anhand der im Sprint Planning 1 festgelegten Bedingungen entscheidet er, ob sie abgenommen werden können oder nicht. Dabei soll er keine Kompromisse eingehen: Ein Team hat auch dann sein Ziel verfehlt, wenn es eine „fast fertige“, aber noch nicht getestete Funktionalität liefert. In diesem Fall kehren die nicht fertiggestellten User Stories in das Product Backlog zurück und werden vom Product Owner neu priorisiert. Die Abnahme ist aber nicht primärer Gegenstand vom Sprint Review, bei dem es vorrangig um das Feedback der Stakeholder geht. Die Abnahme der Funktionalitäten des Produktinkrements wird daher häufig im Rahmen des Sprints umgesetzt. Das Sprint-Review dauert maximal 1 Stunde je Sprint-Woche.Sprint-Retrospektive[Bearbeiten | Quelltext bearbeiten]
Die Sprint Retrospektive steht am Ende eines Sprints. Hierbei überprüft das Scrum Team seine bisherige Arbeitsweise, um sie in Zukunft effizienter und effektiver zu machen. Der Scrum Master unterstützt das Scrum Team darin, gute Praktiken und Verbesserungen zu finden, die im nächsten Sprint umgesetzt werden. Die Retrospektive ist eine gemeinsame Aktivität des Scrum Teams.[50][51] Das Team soll seine Arbeitsweise offen und ehrlich überprüfen können. Dazu müssen Kritik und unangenehme Wahrheiten offen geäußert werden können. Das schließt auch Gefühle und Empfindungen ein.[52] Die Retrospektive soll daher in einem geschützten Raum ablaufen. Stakeholder dürfen nur auf Einladung dazukommen. Als Struktur für die Sprint-Retrospektive haben sich fünf Phasen bewährt. Die Verbesserungsmaßnahmen werden dokumentiert und geplant. Hierfür gibt es unterschiedliche Techniken. Einige Teams nutzen eine eigene Liste mit Hindernissen und Verbesserungsmaßnahmen (das Impediment Backlog), andere Teams nehmen Hindernisse und die entsprechenden Aktivitäten in das Sprint Backlog auf.[53] Die Sprint-Retrospektive dauert maximal 45 min je Sprint-Woche, also max. drei Stunden für einen 4-Wochen-Sprint.Product Backlog Refinement[Bearbeiten | Quelltext bearbeiten]
Das Product Backlog Refinement (auch Backlog Grooming genannt[54]) ist ein fortlaufender Prozess, bei dem der Product Owner und das Entwicklungsteam gemeinsam das Product Backlog weiterentwickeln. Hierzu gehören:[55][56]- Ordnen der Einträge
- Löschen von Einträgen, die nicht mehr wichtig sind
- Hinzufügen von neuen Einträgen
- Detaillieren von Einträgen
- Zusammenfassen von Einträgen
- Schätzen von Einträgen
- Planung von Releases
Artefakte[Bearbeiten | Quelltext bearbeiten]
Product Backlog[Bearbeiten | Quelltext bearbeiten]
Das Product Backlog ist eine geordnete Auflistung der Anforderungen an das Produkt. Das Product Backlog ist dynamisch und wird ständig weiterentwickelt. Alle Arbeit, die das Entwicklungsteam erledigt, muss ihren Ursprung im Product Backlog haben. Der Product Owner ist für die Pflege des Product Backlogs verantwortlich. Er verantwortet die Reihenfolge bzw. Priorisierung der Einträge.[58][59] Das Product Backlog ist nicht vollständig und erhebt auch nicht diesen Anspruch. Zu Beginn eines Projektes enthält es die bekannten und am besten verstandenen Anforderungen. Die Priorisierung der Eintragungen erfolgt unter Gesichtspunkten wie wirtschaftlicher Nutzen, Risiko und Notwendigkeit. Eintragungen mit der höchsten Priorität werden als erste im Sprint umgesetzt.[16] Das Risiko einer Anforderung kann durch eine Analyse ihrer Abhängigkeiten zu anderen Anforderungen bestimmt werden.[60] Diese Abhängigkeiten werden auch als Rückverfolgbarkeit (englisch requirements traceability) bezeichnet und im Werkzeug, welches das Product Backlog verwaltet (z. B. Issue Tracker), als Nebenprodukt erfasst. Die Anforderungen im Product Backlog sollten nicht technisch, sondern fachlich und anwenderorientiert sein. Eine Möglichkeit, um diese Sichtweise zu unterstützen, ist die Formulierung der Produkteigenschaften als User Stories.Sprint Backlog[Bearbeiten | Quelltext bearbeiten]
Das Sprint Backlog ist der aktuelle Plan der für einen Sprint zu erledigenden Aufgaben. Es umfasst die Product-Backlog-Einträge, die für den Sprint ausgewählt wurden, und die dafür nötigen Aufgaben (z. B. Entwicklung, Test, Dokumentation). Das Sprint Backlog wird laufend nach der Erledigung einer (Teil-)Aufgabe von den Team-Mitgliedern aktualisiert. Dies dient zur Übersicht des aktuellen Bearbeitungsstands.[61] Um es für alle sichtbar zu machen, wird häufig ein Taskboard genutzt.Product Increment[Bearbeiten | Quelltext bearbeiten]
Das Inkrement ist die Summe aller Product-Backlog-Einträge, die während des aktuellen und allen vorangegangenen Sprints fertiggestellt wurden. Am Ende eines Sprints muss das neue Inkrement in einem nutzbaren Zustand sein und der Definition of Done entsprechen.[62]Zusätzliche Anforderungen[Bearbeiten | Quelltext bearbeiten]
Transparenz des Fortschritts[Bearbeiten | Quelltext bearbeiten]
Zum Kern von Scrum gehört eine Transparenz über den Fortschritt des Produkts und des Sprints – innerhalb und außerhalb des Teams. Während das Produktinkrement den Fortschritt am deutlichsten sichtbar macht, so sind dennoch andere Techniken zur Fortschrittstransparenz notwendig.[63] Im Kern von Scrum wird für die Transparenz des Fortschritts keine spezifische Technik vorgegeben. Typischerweise werden hierzu Burndown-Grafiken verwendet.Definition of Done[Bearbeiten | Quelltext bearbeiten]
Die Definition of Done (DoD) ist ein gemeinsames Verständnis des Scrum Teams, unter welchen Bedingungen eine Arbeit als fertig bezeichnet werden kann. Sie enthält für gewöhnlich Qualitätskriterien, Einschränkungen und allgemeine nicht-funktionale Anforderungen. Mit zunehmender Erfahrung des Scrum Teams entwickelt sich die Definition of Done weiter. Sie enthält dann strengere Kriterien für höhere Qualität. Dazu gehört beispielsweise das Schreiben von Kommentaren, Unit Tests und Design-Dokumenten. Die DoD wird von den Beteiligten zu Beginn eines Projektes festgelegt, und wird im Laufe der Entwicklung angepasst. Die DoD hilft zu Beginn eines Sprints, die Anzahl und den Umfang der Tasks festzulegen. Es müssen aber nicht alle Aktivitäten der DoD auf jede User Story zutreffen. Am Ende des Sprints dient die DoD neben den Akzeptanzkriterien jedes Product Backlog Eintrags dazu, zu entscheiden, ob ein Product-Backlog-Eintrag als fertig akzeptiert wird.[64]Ergänzende Techniken[Bearbeiten | Quelltext bearbeiten]
In der Verbindung mit Scrum werden die folgenden Techniken häufig genutzt. Diese Techniken gehören nicht zum Kern von Scrum, und zu allen Techniken gibt es mehrere Alternativen.User Story[Bearbeiten | Quelltext bearbeiten]
User Stories sind eine Technik zur Beschreibung von Anforderungen aus der Perspektive eines Benutzers unter Verwendung von Alltagssprache. In Scrum werden User Stories zur Formulierung der Product-Backlog-Einträge verwendet. Eine User Story beschreibt, welche Produkteigenschaft der Benutzer will und warum.[65] User Stories folgen im Allgemeinen diesem Muster: Als NUTZER will ich FUNKTION oder EIGENSCHAFT, damit NUTZEN. Bei einem Projekt zur Entwicklung eines städtetauglichen Elektrofahrrads könnte eine User Story demnach folgendermaßen lauten: Als 30-jährige Geschäftsfrau möchte ich auf dem Weg zur Arbeit nur wenig in die Pedale treten müssen, damit ich nicht verschwitzt in der Firma ankomme. Es ist Aufgabe des Product Owners und des Teams, im Product Backlog Refinement zu klären, was genau damit gemeint ist, und welches die Akzeptanzkriterien sein sollen. So könnte zum Beispiel vereinbart werden, dass bis zu einer Steigung von maximal 20 % der elektrische Antrieb so stark sein muss, dass die Fahrerin nicht mehr als 50 Watt durch eigenes Treten beisteuern muss. Zudem muss das Entwicklungsteam mit dem Product Owner klären, ob sich diese User Story überhaupt in einem Sprint erledigen lässt oder ob sie in kleinere Stories heruntergebrochen werden muss.[66] Sobald eine User Story umgeschrieben oder um weitere Information ergänzt wird, werden auch diese Änderungen im Product Backlog festgehalten.[67] Fragen nach dem Wie, also nach der technischen Umsetzung einer User Story, gehören ins Sprint Planning und werden nicht im Product Backlog, sondern im Taskboard mit Hilfe der einzelnen Tasks festgehalten.Taskboard[Bearbeiten | Quelltext bearbeiten]
Das Taskboard ist eine Technik zur Visualisierung des Sprint Backlogs. Darauf lässt sich jederzeit erkennen, welche Product Backlog Einträge für den Sprint ausgewählt wurden, welche Aufgaben dazu zu bearbeiten sind, und in welchem Bearbeitungszustand diese Aufgaben sind. Das Taskboard ist eine Kanban-Tafel. Typischerweise besteht das Taskboard aus vier Spalten. In der ersten Spalte Anforderungen werden die Product Backlog Einträge eingetragen, die das Entwicklungsteam für diesen Sprint ausgewählt hat – in der vom Product Owner priorisierten Reihenfolge. Die drei weiteren Spalten enthalten die Aufgaben oder Tasks, die zur Umsetzung der jeweiligen Anforderung notwendig sind, in ihrem jeweiligen Bearbeitungszustand. Die zweite Spalte enthält alle noch zu erledigenden Aufgaben, die nächste Spalte diejenigen in Bearbeitung und die letzte Spalte alle erledigten. Im Daily Scrum erklärt jedes Mitglied des Entwicklungsteams anhand des Taskboards, an welcher Aufgabe es am Vortag gearbeitet hat, und ob diese erledigt wurde. Tasks, die an einem Tag nicht beendet werden konnten oder bei denen Hindernisse den Fortschritt aufhalten, werden markiert. In diesem Fall sollten die Aufgaben zur Beseitigung des Hindernisses in das Taskboard aufgenommen werden. So können Hindernisse schnell identifiziert und die Beseitigungsmaßnahmen transparent gemacht werden.[68]Planungspoker[Bearbeiten | Quelltext bearbeiten]
Scrum schreibt keine spezifische Methode vor, Aufwände abzuschätzen. Bei einer guten Schätzmethode sollten die Beteiligten zunächst unbeeinflusst von den anderen Teilnehmern schätzen. Andererseits sollte die Methode in annehmbarer Zeit zu einem akzeptierten und validen Ergebnis führen. Seit ca. 2005 ist Planungspoker eine gängige Methode in Scrum und generell in agilen Projekten.[69] Die englische Bezeichnung Planning Poker ist eine geschützte Warenbezeichnung der Firma Mountain Goat Software.[70] Jeder Teilnehmer erhält einen Satz Spielkarten. Diese sind mit Schwierigkeitsgraden oder Story Points bedruckt, beispielsweise in der Systematik:- trivial – einfach – mittel – schwierig – sehr schwierig – extrem schwierig
- 1, 2, 3, 5, 8, 13, 21, … Diese Fibonacci-Zahlenfolge wird häufig gewählt, um der zunehmenden Unsicherheit in der Schätzung schwererer Aufgaben gerecht zu werden. Nebenstehendes Foto von Planungspoker-Karten zeigt, dass die Werte teils gerundet wurden.
- Der Product Owner stellt die User Story vor, die es zu schätzen gilt.
- Das Team klärt in der Diskussion mit dem Product Owner seine Fragen zu der Story.
- Jedes Teammitglied wählt für sich eine Karte, die seiner Ansicht nach der Schwierigkeit der Story entspricht.
- Alle gewählten Karten werden gleichzeitig aufgedeckt.
- Die Teilnehmer mit der niedrigsten und der höchsten Schätzung erklären ihre Beweggründe.
- Der Prozess wird wiederholt, bis ein Konsens gefunden ist.
- Das Spiel wird wiederholt, bis alle User Stories geschätzt sind.
Impediment Backlog[Bearbeiten | Quelltext bearbeiten]
Das Impediment Backlog ist eine Technik, mit welcher der Scrum Master öffentlich alle Arbeitsbehinderungen sammelt. Es handelt sich um eine Liste von Hindernissen, Aufgaben zu ihrer Lösung und ihrem aktuellen Status. Eine andere Technik ist es, Behinderungen und die Beseitigungsmaßnahmen auf dem Taskboard mit zu pflegen.Fünf Phasen einer Retrospektive[Bearbeiten | Quelltext bearbeiten]
Als Struktur einer Sprint-Retrospektive haben sich fünf Phasen bewährt:[71]- Zuerst werden die Voraussetzungen für eine offene Atmosphäre geschaffen. Die Teilnehmer sollen sich wohl dabei fühlen, offene Punkte zu diskutieren. Dabei gilt die Annahme, dass jeder die bestmögliche Arbeit geleistet hat, die er oder sie leisten konnte, und zwar unabhängig davon, welche offenen Punkte identifiziert werden.
- Zweitens werden Informationen gesammelt. Dies geschieht oft, indem man zurückblickt und identifiziert, was gut gelaufen ist und was nicht.
- Im dritten Schritt werden Erkenntnisse entwickelt. In dieser Phase identifizieren Teams normalerweise, warum Dinge geschehen sind, damit nicht nur Symptome kuriert, sondern die tatsächlichen Ursachen identifiziert werden.
- Viertens entscheidet man, was zu tun ist. Das umfasst Vereinbarungen über sinnvolle und realistische Schritte, die im nächsten Sprint umgesetzt werden sollen.
- Zu guter Letzt wird die Retrospektive abgeschlossen.
Burn-Down-Chart[Bearbeiten | Quelltext bearbeiten]
Das Burn-Down-Chart dient der Visualisierung bereits geleisteter und noch verbleibender Arbeit. Das Burn-Down-Chart gibt es in zwei Varianten:- Als Sprint Burndown wird es zur Verfolgung vom Sprintfortschritt verwendet.
- Als Release Burndown wird es zur Verfolgung vom Produktfortschritt über mehrere Sprints hinweg verwendet.
Adaptionen von Scrum[Bearbeiten | Quelltext bearbeiten]
Obwohl der Scrum Guide[5] die essentiellen Elemente von Scrum vorschreibt, scheinen viele Unternehmen signifikant davon abzuweichen.[74] Die wenigste Variation findet sich in den Sprints und der Sprint-Länge, den Treffen, der Teamgröße und im Requirements Engineering. Die Unternehmen variieren am meisten in der Aufwandsschätzung und der Qualitätssicherung.Grenzen und Nachteile von Scrum[Bearbeiten | Quelltext bearbeiten]
Keine Erfolgsgarantie[Bearbeiten | Quelltext bearbeiten]
Scrum kann genau so wenig wie andere Prozesse und Vorgehensmodelle eine Erfolgsgarantie bieten.Verwertung gewonnener Erkenntnisse[Bearbeiten | Quelltext bearbeiten]
Bei der Verwendung von Scrum muss man sich darauf einstellen, dass die ursprünglichen Einschätzungen permanent über- oder untertroffen werden. Scrum zeigt vom ersten Tag an Abweichungen vom Soll-Zustand an. Ob Scrum dazu führt, dass Produkte schnell, gut, günstig oder qualitativ hochwertig entwickelt werden, hängt davon ab, wie das Scrum-Team die gewonnenen Erkenntnisse anwendet. Nach Schwaber kann auch ein „Team von Idioten“ nach Scrum arbeiten.[75] Das Team liefert am Ende jedes Sprints zuverlässig Produktinkremente, hält alle Meetings ab, und verteilt die Rollen nach Scrum. Wenn aber das Scrum-Team die Ergebnisse nicht nutzt, um anders zu arbeiten und Anpassungen vorzunehmen, wird auch das Produkt nicht besser oder früher fertig sein.Rollenkonflikte[Bearbeiten | Quelltext bearbeiten]
Die Selbstorganisation im Entwicklungsteam impliziert, dass Hierarchien in Frage gestellt werden. Mitglieder, die nicht bereit sind, ihre bisherige Position innerhalb des Entwicklungsteams aufzugeben, können daher Konflikte erzeugen. Scrum fordert, dass alle Teammitglieder vielfältige Aufgaben eines Sprints bearbeiten können. Jemand, der sich exklusiv als Tester, Programmierer oder Architekt sieht, passt nicht optimal in ein Entwicklungsteam nach Scrum. Ein gutes Team kann das berücksichtigen und die Nachteile kompensieren; für ein weniger erfahrenes Team können solche Mitarbeiter schwierig sein.Juristische Erwägungen[Bearbeiten | Quelltext bearbeiten]
Im Rahmen von Werkverträgen und vor dem Hintergrund des Produkthaftungsgesetzes kann die Anwendung von Scrum begrenzt sein. Es besteht eine stärkere Unschärfe über die zu erbringende Leistung und deren Abnahmekriterien als bei traditionellen Vorgehensweisen. Bei Streitigkeiten kann dies dazu führen, dass keine eindeutige Aussage zur Vertragserfüllung getroffen werden kann. In der Fachliteratur werden Vorschläge angeboten, wie Werkverträge für Scrum-Projekte zu gestalten sind.[76][77]Zertifizierung[Bearbeiten | Quelltext bearbeiten]
Es konkurrieren mehrere Scrum-Zertifizierungen auf dem Markt. Neben Scrum-fokussierten Anbietern finden sich auch agile Erweiterungen und Anpassungen der etablierten Projektmanagement-Anbieter. Die Zertifizierungen weisen unterschiedliche Kosten, Voraussetzungen und Inhalte auf.[78]Axelos/Prince2[Bearbeiten | Quelltext bearbeiten]
Auch Axelos bietet als Ergänzung zu seiner PRINCE2-Zertifizierung ein agiles Zertifikat an – dabei geht es darum, wie PRINCE2 für agile Projekte angepasst werden kann.[79]Borisgloger Consulting[Bearbeiten | Quelltext bearbeiten]
Borisgloger Consulting bietet seit 2010 zwei eigene Zertifizierungen an: ScrumMaster certified by bor!sgloger und Product Owner certified by bor!sgloger. Die Zertifizierung orientiert sich mit den Inhalten an den Anforderungen des europäischen – und nicht US-amerikanischen – Marktes. Nach einem 2-tägigen ScrumMaster- bzw. Product Owner-Training erhalten die Teilnehmer Zugang zu einer Online-Prüfung, die auf Deutsch oder Englisch absolviert werden kann. Wenn 70 % der Fragen richtig beantwortet werden, hat man die Prüfung bestanden und erhält ein Zertifikat.[80][81] Ein 3-tägiges Kombinationstraining verbindet die beiden oben genannten Trainings und berechtigt zur Absolvierun beider Zertifizierungsprüfungen.[82]Exin[Bearbeiten | Quelltext bearbeiten]
Von der Firma Exin werden drei internationale Zertifizierungen angeboten: Agile Scrum Foundation (ASF), Agile Scrum Master (ASM) und Agile Product Owner (ASPO). Die Foundation Prüfung dient den Grundlagen des Scrum Frameworks, während die anderen weiterführend und zielgerichtet für die spätere praktische Tätigkeit sind.[83]Itemo / Tüv Süd[Bearbeiten | Quelltext bearbeiten]
Die Itemo IT Education Management Organisation e.V.[84] bietet in Kooperation mit dem TÜV Süd Examination Institute eine deutschsprachige Ausbildung und Personenqualifikation mit einer Basiszertifizierung und zwei aufbauenden Zertifizierungen zum Scrum Master und Scrum Product Owner an.[85]PMI[Bearbeiten | Quelltext bearbeiten]
Ein übergreifendes Scrum-Zertifikat für Product Owner, Scrum Master und Entwickler ist das PMI Agile Certified Practitioner (PMI-ACP).[86]Scrum Alliance[Bearbeiten | Quelltext bearbeiten]
Die Basiszertifizierungen werden unterteilt in CSM (Certified Scrum Master), CSPO (Certified Scrum Product Owner) und CSD (Certified Scrum Developer). Für diese Zertifizierungen ist der Besuch eines Seminars eines zertifizierten Trainers (CST) erforderlich.[87] Darauf aufbauend ist die weiterführende Zertifizierung zum CSP (Certified Scrum Professional) möglich, die eine mehrjährige Erfahrung und den Nachweis von 70 Stunden qualifizierter Weiterbildung erfordert. Der CSP muss alle 2 Jahre erneuert werden. Hierfür ist eine kontinuierliche Weiterbildung im Umfang von 40 Stunden nachzuweisen. Bis 2013 war anstatt des Trainingsnachweises eine dreistündige Prüfung abzulegen.[87] Die nächste Zertifizierungsstufe ist der Certified Scrum Trainer (CST) und der Certified Scrum Coach (CSC). Der Fokus des Trainers liegt mehr auf der Durchführung der CSM- und CSPO-Schulungen, und der Fokus des Coachs auf der Betreuung agiler Transitionen. Um CST oder CSC werden zu können, ist ein umfangreiches Bewerbungsverfahren notwendig.[87]Scrum.org[Bearbeiten | Quelltext bearbeiten]
Die Einstiegszertifizierung ist das kostenlose Scrum Open Assessment, welches Grundlage für den Professional Scrum Master (PSM I und PSM II), Professional Scrum Developer (PSD I) und Professional Scrum Product Owner (PSPO I und PSPO II) ist.[88]Werkzeuge[Bearbeiten | Quelltext bearbeiten]
Es gibt diverse Werkzeuge wie Eylean Board, Agilo, Pangoscrum, Redmine (verschiedene Plugins verfügbar), OpenProject, AgileZen, Agile Manager, TeamForge, Tinypm, ThoughtWorks Studios, Jira Agile, Pivotal Tracker, Scrumwise, VersionOne, ScrumWorks Pro, Banana Scrum, Team Foundation Server, taiga.io und ScrumTable, die darauf ausgelegt sind, die Einführung von Scrum und die darin anfallenden Prozesse zu erleichtern.Siehe auch[Bearbeiten | Quelltext bearbeiten]
Literatur[Bearbeiten | Quelltext bearbeiten]
- Rolf Dräther, Holger Koschek und Carsten Sahling: Scrum – kurz & gut. 1. Auflage. O’Reilly, 2013, ISBN 978-3-86899-833-7.
- Malte Foegen: Der Ultimative Scrum Guide 2.0. 2. Auflage. wibas, Darmstadt 2014, ISBN 978-3-9815837-5-5.
- Boris Gloger: Scrum-Produkte zuverlässig und schnell entwickeln. 3. Auflage. Hanser Verlag, 2011, ISBN 978-3-446-42524-8.
- Boris Gloger: Scrum: Der Paradigmenwechsel im Projekt- und Produktmanagement. Eine Einführung. In: Informatik Spektrum. Vol. 33, No. 2, 2010.
- Arndt Hengstler: Gestaltung der Leistungs- und Vertragsbeziehung bei Scrum-Projekten. In: ITRB. 2012, s. 113–116.
- Holger Koschek: Geschichten vom Scrum: Von Sprints, Retrospektiven und agilen Werten. dpunkt.verlag, 2009, ISBN 978-3-89864-640-6.
- Sven Röpstorff, Robert Wiechmann: Scrum in der Praxis: Erfahrungen, Problemfelder und Erfolgsfaktoren. dpunkt.verlag, 2012, ISBN 978-3-89864-792-2.
- Ken Schwaber: Scrum Development Process, Advanced Development Methods. London 1995.
- Ken Schwaber: Agiles Projektmanagement mit Scrum. Microsoft Press Deutschland, 2007, ISBN 978-3-86645-631-0 (englisch: Agile Project Management with Scrum. Übersetzt von Thomas Irlbeck).
- Ken Schwaber: Scrum im Unternehmen. Microsoft Press Deutschland, 2008, ISBN 978-3-86645-643-3 (englisch: The Enterprise and Scrum.).
- Ken Schwaber, Jeff Sutherland: Software in 30 Tagen. dpunkt.verlag, 2013, ISBN 978-3-86490-074-7 (englisch: Software in 30 days.).
Weblinks[Bearbeiten | Quelltext bearbeiten]
Commons: Scrum – Sammlung von Bildern, Videos und Audiodateien
[print-me]
[GTranslate]