Insbesondere in der Software-Entwicklung ist immer wieder die Rede von „Agilem Projektmanagement“ oder „Scrum“. Thema dieses einführenden Artikels sind die Prinzipien und Potenziale von Scrum, weitere Beiträge werden sich verschiedener Spezifika und der praktischen Anwendbarkeit von Scrum widmen.
Wozu brauchen wir Scrum?
Software-Projekte sind besonders vielen Änderungen unterworfen. Häufig sind derartige Projekte zu Beginn sehr vage formuliert und Fortschritte sind schwer auszumachen. Außerdem ist es keine Seltenheit, dass sich sowohl grundlegende Bausteine wie z.B. Programmiersprachen, Hardware und Industriestandards als auch die Kundenanforderungen im Laufe der Zeit ändern. Eine Studie der Standish Group hat ergeben, dass nur 16% aller IT-Projekte erfolgreich sind. Folglich enden 84% aller IT-Projekte mit überzogenen Zeitplänen, überzogenen Budgets oder mit nicht fertiggestellten Funktionen.
Prinzipiell hat ein Unternehmen, das IT-Projekte realisiert, zwei Möglichkeiten: Die erste Möglichkeit wäre, den Kunden darauf hinzuweisen, dass sein Projekt mit einer Wahrscheinlichkeit von 84% länger dauert als geplant, teurer wird als veranschlagt bzw. er unfertige Funktionen erhält. In jedem Fall wird sich die Begeisterung des Kunden in Grenzen halten. Die zweite und logischere Vorgehensweise bestünde in der aktiven Steigerung der Erfolgsquote von Projekten.
Kompromiss bei Funktionalität, nicht bei Qualität
//SEIBERT/MEDIA folgt bei der Durchführung von Software-Entwicklungsprojekten dem Scrum-Ansatz. Scrum (zu deutsch: Gedränge) beschreibt einen Spielzug im Rugby, der auf den ersten Blick wie ein unüberschaubares Gedränge wirkt, tatsächlich aber sorgsam einstudiert ist. Der Ansatz basiert auf wenigen klaren Regeln, die es erlauben, auf geänderte Anforderungen kontrolliert, aber flexibel zu reagieren. Zusätzlich wird das klassische Dreieck des Projektmanagements abgeändert: Aus einem Kompromiss aus Kosten, Zeit und Qualität wird ein Kompromiss aus Kosten, Zeit und Funktionalität. Es gibt also keine Kompromisse hinsichtlich der Qualität.
Agilität durch Selbstorganisation und Kommunikation
Die Anwendung von Scrum ist im Grunde einfach, da sie nur wenigen einfachen Regeln unterliegt:
- Zuweisung und Ausübung der drei Rollen „Product Owner“, „Scrum Master“ und „Team“
- Führen eines priorisierten Product Backlogs
- Erstellen von "auslieferbaren Produktinkrementen" in klar definierten, kurzen zeitlichen Intervallen (Sprints)
Eine zentrale Bedeutung bei der Durchführung von Projekten haben hierbei die Selbstorganisation und die Kommunikation innerhalb der Teams. Einen klassischen Projektmanager, der bestimmt, wer was zu tun hat, gibt es nicht. Vielmehr entscheidet das Team in verschiedenen Meetings selbst, was realistisch in einem bestimmten Zeitraum umsetzbar ist. Zur Förderung der Kommunikation und Weiterentwicklung des Teams werden verschiedene Meetings als Instrumente eingesetzt: Die Sprint-Planungssitzung, Daily Scrum, Sprint Review und Sprint Retrospektive. Dank der Einhaltung klar definierter Regeln werden diese Meetings nicht zum Zeitfresser, sondern gewährleisten eine klare Anforderungsbeschreibung, die frühzeitige Erkennung von Problemen und deren Lösung sowie eine kontinuierliche Verbesserung der Arbeitsabläufe und damit der Ergebnisse.
Erfolgsfaktoren: Sprints und präzise Aufwandsschätzungen
Langjährige Kunden von //SEIBERT/MEDIA (wie z.B. die BAD GmbH oder die Allianz24) schätzen die Arbeit mit Scrum und beteiligen sich regelmäßig an der Sprint-Planung. Rechtzeitig zu Beginn eines Sprints erstellen Projektmanager und Kunde gemeinsam Vorschläge, welche Tickets im nächsten Sprint umgesetzt werden sollen. Nach der Abstimmung mit dem Kunden entscheidet das Team anhand einer möglichst exakten Aufwandsschätzung, was im nächsten Sprint tatsächlich umsetzbar ist.
Die Aufwandsschätzung ist ein ebenso wichtiger wie schwieriger Teil von Scrum. Nur anhand realistischer Schätzungen und präzise definierter Kapazitäten lassen sich Sprints gut planen. Ein in der Praxis häufig auftretendes Problem ist die Annahme, alle Projektmitglieder würden Vollzeit auf ein Projekt arbeiten. Sofern jedoch Mitarbeiter in mehrere Projekte gleichzeitig involviert sind, ist es schwierig, die Kapazitäten für einzelne Projekte abzuschätzen. Die Scrum-Theorie berücksichtigt aber auch, dass nicht jedes Unternehmen unter den gleichen Umständen arbeitet. Dabei will Scrum keine Bibel sein, die auf jede Situation eine Antwort parat hat. Es entspricht nur dem Wesen von Scrum als empirischer Prozess, dass man Empfehlungen an verschiedene Projektsituationen anpassen muss. //SEIBERT/MEDIA begegnet der projektübergreifenden Arbeit der Mitarbeiter mit projektübergreifenden Meetings und hat mit diesem Vorgehen sehr gute Erfahrungen gemacht.
Vorteile für Agentur, Mitarbeiter und Kunden
Stellt sich nun die Frage, welche Vorteile diese Vorgehensweise für //SEIBERT/MEDIA hat. Zunächst führt Scrum zur Steigerung der Mitarbeiterzufriedenheit. Die Selbstorganisation der Teammitglieder führt zu einer verbesserten Teamarbeit und zu weniger Arbeitsdruck dank wirklich realistischer Aufwandsschätzungen. Doch auch für den Kunden hat Scrum viele Vorteile: Er wird durch den Entwicklungsprozess, der auf kurzen, festen Zeitintervallen basiert, aktiver in die Entwicklung miteinbezogen und er enthält keine unfertigen Funktionen. Und nicht zuletzt dient Scrum auch wirtschaftlichen Interessen: Durch die strikte Priorisierung der Anforderungen, durch Vermeidung von Fehlleistungen und Überlastung sowie durch frühzeitige Problemerkennung und permanente Qualitätskontrolle stellt Scrum die Einhaltung von „Time to Market“, Qualität und Produktivität sicher.
Weiterführende Informationen:
Scrum bei Wikipedia
Scrum in 7 Minuten (Flash-Film von it-agile)
Scrum Alliance (Die Online-Community zu Scrum)
Inside Scrum (Scrum-Weblog)
Scrum im Projektmanagement-Blog
Mehr über die Creative-Commons-Lizenz erfahren