Eine starre Projektplanung birgt das Risiko, auftauchende Probleme nicht rechtzeitig zu erkennen und nicht darauf reagieren zu können. Neue Methoden wie Scrum setzen auf ständige Weiterentwicklung und Flexibilität. [...]
Agile Softwareentwicklung ist zum fixen Bestandteil im IT-Alltag geworden und inzwischen nicht mehr wegzudenken. Methoden wie Scrum, agiles Datawarehousing, Lean Production oder Feature Driven Development versprechen mehr Flexibilität in der Projektdurchführung, Risiko- und Kostenoptimierung und eine höhere Qualität. Diese Methoden fokussieren dabei auf die ständige Weiterentwicklung der Mitarbeiter, Prozesse, Ressourcen und Methoden mit dem Ziel, die Produktion permanent zu verbessern um höchste Qualität bei minimalem Aufwand zu erreichen. Scrum ist einer der sogenannten agilen Prozesse für Softwareentwicklung und Projektmanagement und arbeitet unter anderem mit einfachen Regeln, wenigen Rollen und unterschiedlichen Arten von Meetings im Team. Bei Scrum besteht die grundsätzliche Hypothese, dass Produktionsfertigungs- wie auch Entwicklungsprozesse so umfangreich sind, dass sich die einzelnen Phasen sowie Arbeitsschritte im Vorfeld nicht planen lassen. Organisiert sich jedoch ein Team nach festgelegten Vorgaben selbst, führt dies zu mehr Effektivität.
„Die traditionelle Herangehensweise an Projekte ist strikt und erlaubt es den Teams nicht auf Änderungen zu reagieren“, sagt Mitch Lacey, Scrum-Experte und Buchautor im Gespräch mit der COMPUTERWELT, und weiter: „Scrum dagegen ergreift die Änderungen und lässt sie in das Projekt einfließen.“ Was laut Lacey zu einem besseren Ergebnis führt. Bei Scrum-Projekten sorgt der „Scrum Master“ dafür, dass die Scrum-Regeln eingehalten werden. Er leitet den gesamten Prozess, eliminiert Störungen und arbeitet eng mit dem „Product Owner“ zusammen, um das Projekt möglichst wertschöpfend für das Unternehmen zu gestalten. Zudem hilft er dem Team, seine Produktivität zu steigern. Ein solches Projekt wird in „Sprints“ (ein festgelegter Zyklus in der Regel von zwei bis vier Wochen) eingeteilt, in dem das Produkt entwickelt wird. Am Ende eines jeden Sprints kann ein funktionsfähiges Inkrement ausgeliefert werden.
„Traditionelle Projektleiter belügen ihre Kunden,“ sagt Lacey, und: „Sie erzählen ihnen das, was sie hören wollen.“ Das sei aber auch gar nicht anders möglich, denn der Kunde will wissen, was er am Ende des Projektes schließlich erhält. Auftauchende Probleme – laut Lacey tauchen bei jedem Projekt unerwartete Probleme auf – verlangen aber eine Veränderung des Projekts, was in der Folge auch den Zeitaufwand und damit die Kosten steigen lässt. „Mit Scrum und den sich wiederholenden Sprints kann man aber schnell auf Veränderungen reagieren und dem Kunden mitteilen, was zu adaptieren ist“, so Lacey. „Die Wahrscheinlichkeit, dass der Kunde bei einem strikten Projekt nicht das bekommt, wonach er verlangt hat, ist sehr groß. Mit Scrum ist es möglich das Risiko zu minimieren.“
KUNDE KANN EINGREIFEN
„Der Kunde hat permanent Einblick in das Projekt und kann die Fortschritte mitverfolgen. Er kann dem Team jederzeit mitteilen, wenn er sieht, dass es zu weit oder in eine falsche Richtung führt“, sagt Lacey. Bei Scrum werden in einer Liste (Product Backlog) die Anforderungen aufgenommen, ergänzt und priorisiert. In Zusammenarbeit mit dem Product Owner werden die höher priorisierten Anforderungen im Product Backlog regelmäßig vom Team extrahiert und während eines Sprints vollständig in Funktionalität umgesetzt. Die aus dem Product Backlog bisher nicht extrahierten Teile können vom Product Owner für nachfolgende Sprints neu priorisiert werden.
Täglich erfolgt ein auf 15 Minuten begrenztes Informations-Meeting (Daily Scrum), um die Teammitglieder untereinander auf den gleichen Wissensstand zu bringen, sowie proaktiv auf mögliche Probleme hinzuweisen. Am Ende des Sprints demonstriert das Team allen beteiligten Personen die vollständig entwickelten sowie lauffähigen Eigenschaften am System in Echtzeit. Reaktionen der Teilnehmer und neue Anforderungen fließen dabei in das nächste „Sprint Planning Meeting ein, das vor jedem Sprint abgehalten werden muss. Der Prozess wird dann erneut durchlaufen. Das Risiko wird somit von Anbieter und Kunden geteilt. „Der Kunde lenkt das Schiff, aber der Scrum-Master hilft ihm dabei. Und es gibt auf dem Weg zahlreiche Checkpoints, um das Risiko zu minimieren“, erklärt Lacey.
Scrum eignet sich speziell für hochkomplexe Projekte mit unklaren Anforderungen in der Startphase. Durch die häufigen Feedbackschleifen werden Entwicklungen in die falsche Richtung vermieden, und so Zeit und Kosten gespart. Laut Lacey steigt das Interesse der Kunden an der Scrum-Methode stetig. „Es verlangt Zeit und vor allem ein großes Commitment des Kunden im Voraus“, sagt Lacey, der auch Mitglied der Scrum Alliance (www.scrumalliance.org) ist, denn: „Mit Scrum werden Dinge anders erledigt. Das verlangt Disziplin, Flexibilität und den Willen zu lernen, sowohl vom Management als auch vom Team.“ (cb)
Be the first to comment