22.02.2013, 12:36 Uhr
Agil oder klassisch
Vor rund zwölf Jahren erschien das Agile Manifest, das bis heute als Grundsatzpapier gilt und die Software-Entwicklung auf einen neuen, besseren Weg führen soll. Haben die klassischen Methoden ausgedient?
Der Autor ist Gründer und Geschäftsführer der InLoox GmbH. InLoox entwickelt professionelle Projektmanagement-Software-Lösungen für Microsoft Outlook und das Web. So gut wie jedes IT-Unternehmen kann inzwischen in irgendeiner Form auf Erfahrungen mit agilen Methoden zurückgreifen. Die Prinzipien des Agilen Manifests wie «Reagieren auf Veränderung zählt mehr als das Befolgen eines Plans» werden jedoch von Vertretern klassischer Projektmanagementmethoden nicht selten als Kampfansage aufgefasst. So herrschen zwischen klassischen und agilen Projektmanagern bisweilen Unstimmigkeiten darüber, welche Methode angewendet werden soll, um optimale Projektergebnisse zu erzielen.
Plankonform vs. Iterativ
Anhänger klassischer Methoden wie dem Wasserfallmodell, der Balkenplanung oder Prince2 gehen davon aus, dass eine möglichst präzise Definition der gewünschten Projektergebnisse sowie eine davon ausgehende, konkrete Vorabplanung aller zum Projekt gehörigen Vorgänge, ihrer logischen Abhängigkeiten und zeitlichen Abfolge, aller Termine, Deadlines und Meilensteine die Grundlagen für den Projekterfolg sind. In der Software-Entwicklung wird etwa der Leistungsumfang des fertigen Produkts vorab detailliert festgelegt, genauso wie der Weg, der zum gewünschten Produkt führen soll. Zu den Prinzipien der Agilität gehört dagegen das iterative Vorgehen. In regelmässigen Abständen erhält der Auftraggeber ein voll funktionsfähiges Zwischenprodukt, das so bereits auf dem Markt eingeführt werden kann. Dadurch kann der Auftraggeber die Zwischenergebnisse kontrollieren und Rückmeldungen dazu einholen. Auf Basis dieser Erkenntnisse wird der ursprüngliche Plan angepasst und am nächsten Zwischenergebnis gearbeitet. Zwischenzeitlich können sowohl der Auftraggeber als auch der Auftragnehmer ihre Zielsetzungen überprüfen und sie – falls notwendig – an veränderte Rahmenbedingungen anpassen. Ausgangspunkt ist meist eine konkrete Produktvision, die aber Raum für Abweichungen zulässt. Es werden nicht alle Funktionen von vornherein festgeschrieben, sondern im Laufe mehrerer Iterationen nach und nach umgesetzt. Die Methode kann jedoch nur Erfolg haben, wenn sich alle Beteiligten auf einen sich ändernden – sprich einen agilen – Plan einlassen. Das fertige Produkt entspricht meist nicht mehr in allen Aspekten dem ursprünglichen Plan, ist aber an die aktuellen Anforderungen optimal angepasst und schafft so einen klaren Mehrwert für den Auftraggeber. Lesen Sie auf der nächsten Seite: Agil ist nicht automatisch gut
Agil ist nicht automatisch gut
Pauschale Antworten auf die Frage, welche der beiden Vorgehensweisen in der IT-Praxis den grösseren Erfolg verspricht, sind in der Regel unseriös. Zahlreiche Studien haben sich in der letzten Zeit mit diesem Thema beschäftigt – mit zum Teil recht unterschiedlichen Ergebnissen. Die Studie «Status Quo Agile» der Fachhochschule Koblenz (siehe Quellverweise «Studien und Literatur») kommt zu dem Ergebnis, dass die Anwender agiler Methoden ihre eigene Vorgehensweise in allen Kriterien (unter anderem bei Gesamtbewertung, Termintreue und Mitarbeiterzufriedenheit) besser bewerten als die Anwender klassischer Methoden. Nur 5 Prozent der Vertreter agiler Methoden stellten nach deren Einführung keinerlei Verbesserungen fest. Auch die «Swiss Agile Study 2012» bilanziert, dass es die meisten zufriedenen Anwender in Firmen gibt, die mit agilen Methoden arbeiten – dort gaben 84 Prozent der Befragten an, mit dieser Vorgehensweise zufrieden oder sehr zufrieden zu sein. Dagegen stellt die Untersuchung «SwissQ Agile Trends & Benchmarks Schweiz 2012» fest, dass mehr als 50 Prozent der befragten Unternehmen mit der Einführung agiler Methoden nicht zufrieden sind. Zu ähnlichen Befunden kommt die Studie «Softwaretest in der Praxis», bei der die Mehrheit der Befragten angab, dass sich klassische Methoden in der Praxis gleich gut oder besser zur Qualitätssicherung eignen als agile Massnahmen. Diese uneinheitlichen Ergebnisse bringen zum Ausdruck, dass agile Methoden in der Praxis kein Allheilmittel sind. Zum anderen zeigt sich, dass es so etwas wie die beste Projektmanagementmethode nicht gibt. Es hängt immer stark von den beteiligten Unternehmen, dem jeweiligen Projekt und der aktuellen Situation ab, welche Richtung ein Projektteam einschlagen sollte. Ein wichtiger Faktor ist dabei die Unternehmenskultur bei Auftraggeber und Dienstleister. Ein agiles Vorgehen baut darauf, dass sich alle Teammitglieder im besten Sinne für das Projekt einsetzen. Die Vorgesetzten müssen also ihren Mitarbeitern ein hohes Mass an Selbstorganisation und Eigenverantwortung zutrauen. Gerade in traditionellen, stark hierarchisch geprägten Unternehmen ist das keine Selbstverständlichkeit. Lesen Sie auf der nächsten Seite: Eine Frage der Unternehmenskultur
Eine Frage der Unternehmenskultur
Laut SwissQ-Studie hat nicht selten die Chefetage Bedenken beim Einsatz agiler Methoden, weil sie weniger Vorausplanung, geringere
Vorhersagbarkeit und weniger Dokumentation bedeuten. Auch Unternehmen mit starken Rechtsabteilungen haben ihre Schwierigkeiten mit agilen Methoden. Die Vertragsgestaltung in agilen Entwicklungsprojekten ist ein heikles Thema, da die Leistungsbeschreibung immer einen gewissen Spielraum erlauben muss. Hier entscheiden sich viele Auftraggeber lieber für vorab klar definierte Funktionen zum Festpreis. Diesen Schwächen kann man jedoch durch integrierte Software-Entwicklungsansätze wie Reliable Scrum begegnen. Hier werden agile Prinzipien mit klassischen Methoden kombiniert. Durch die Schätzung des Gesamtarbeitsaufwands, der Arbeitsgeschwindigkeit im Team und eines Zeitpuffers lässt sich ein Lieferumfang zu einem gesetzten Endtermin mit einer bestimmten Wahrscheinlichkeit in Aussicht stellen. Auch die Teamstruktur ist ein relevantes Entscheidungskriterium, denn der hohe Abstimmungsaufwand, den agile Methoden mit sich bringen, kann in bestimmten Situationen ineffizient sein. Die Studie «Status Quo Agile» bescheinigt vor allem kleinen Teams mit fünf bis neun Mitgliedern Erfolg mit agilen Methoden. Grossen oder verteilten Teams, in denen Mitarbeiter zusätzlich durch Aufgaben in der Linie gebunden sind, rät man dagegen eher zu einer klassischen Vorgehensweise, weil sie eine höhere Planbarkeit verspricht. Das trifft auch zu, wenn verschiedene externe Zulieferer involviert sind. Hier erleichtern eindeutige Arbeitspaketvorgaben und Deadlines die Zusammenarbeit. Dort, wo Ziele, Anforderungen, Leistungen und Abläufe verbindlich formuliert werden können und aller Voraussicht nach über den gesamten Projektverlauf konstant bleiben, sind ebenfalls klassische Methoden zu empfehlen. In Märkten, die sich schnell verändern, können Produkte – wenn sie nach klassischen Methoden entwickelt werden – dagegen schon wieder veraltet sein, wenn sie auf den Markt kommen. Agile Methoden erlauben hier eine höhere Flexibilität und eine bessere Anpassung an sich ändernde Gegebenheiten. Doch häufig macht nicht eine bestimmte Methode den Unterschied, sondern eher die Randbedingungen. So zeigt eine Untersuchung der oose. Innovative Informatik GmbH aus dem Jahr 2009, dass der Erfolg agiler Projekte meist auf der für sie typischen intensiven Team- und Kundenkommunikation beruht. Teams, die sich zu täglichen kurzen Meetings treffen und mehrmals pro Woche in Kontakt mit dem Kunden stehen, sind deutlich erfolgreicher als Teams, in denen wenig kommuniziert wird. Auch die Priorisierung von Aufgaben, die agilen Methoden eigen ist, macht Projekte erfolgreicher. Derartige Aspekte lassen sich ohne Probleme auch in eine klassische Vorgehensweise integrieren. Ideal ist es, wenn ein Unternehmen je nach Aufgabenstellung und Rahmenbedingungen entscheiden kann, welche Methode zum Einsatz kommen soll. Das setzt allerdings einen hohen Grad an organisationaler Reife voraus. Die Status-Pro-Agile-Studie zeigt, dass dies in der Praxis durchaus schon umgesetzt wird: Nur 16 Prozent der befragten Unternehmen folgen ausschliesslich einem agilen Ansatz. Meist jedoch werden klassische und agile Methoden in der Praxis zu sogenannten hybriden Ansätzen kombiniert. Auch ein einzelnes Projekt lässt sich in verschiedene Phasen oder Vorgänge untergliedern, die dann mit jeweils der passenden Methode bearbeitet werden. So können sich Projektmanager einen Werkzeugkasten zusammenstellen, mit dem sie für jede Projektherausforderung das richtige Handwerkszeug parat haben.
Vorhersagbarkeit und weniger Dokumentation bedeuten. Auch Unternehmen mit starken Rechtsabteilungen haben ihre Schwierigkeiten mit agilen Methoden. Die Vertragsgestaltung in agilen Entwicklungsprojekten ist ein heikles Thema, da die Leistungsbeschreibung immer einen gewissen Spielraum erlauben muss. Hier entscheiden sich viele Auftraggeber lieber für vorab klar definierte Funktionen zum Festpreis. Diesen Schwächen kann man jedoch durch integrierte Software-Entwicklungsansätze wie Reliable Scrum begegnen. Hier werden agile Prinzipien mit klassischen Methoden kombiniert. Durch die Schätzung des Gesamtarbeitsaufwands, der Arbeitsgeschwindigkeit im Team und eines Zeitpuffers lässt sich ein Lieferumfang zu einem gesetzten Endtermin mit einer bestimmten Wahrscheinlichkeit in Aussicht stellen. Auch die Teamstruktur ist ein relevantes Entscheidungskriterium, denn der hohe Abstimmungsaufwand, den agile Methoden mit sich bringen, kann in bestimmten Situationen ineffizient sein. Die Studie «Status Quo Agile» bescheinigt vor allem kleinen Teams mit fünf bis neun Mitgliedern Erfolg mit agilen Methoden. Grossen oder verteilten Teams, in denen Mitarbeiter zusätzlich durch Aufgaben in der Linie gebunden sind, rät man dagegen eher zu einer klassischen Vorgehensweise, weil sie eine höhere Planbarkeit verspricht. Das trifft auch zu, wenn verschiedene externe Zulieferer involviert sind. Hier erleichtern eindeutige Arbeitspaketvorgaben und Deadlines die Zusammenarbeit. Dort, wo Ziele, Anforderungen, Leistungen und Abläufe verbindlich formuliert werden können und aller Voraussicht nach über den gesamten Projektverlauf konstant bleiben, sind ebenfalls klassische Methoden zu empfehlen. In Märkten, die sich schnell verändern, können Produkte – wenn sie nach klassischen Methoden entwickelt werden – dagegen schon wieder veraltet sein, wenn sie auf den Markt kommen. Agile Methoden erlauben hier eine höhere Flexibilität und eine bessere Anpassung an sich ändernde Gegebenheiten. Doch häufig macht nicht eine bestimmte Methode den Unterschied, sondern eher die Randbedingungen. So zeigt eine Untersuchung der oose. Innovative Informatik GmbH aus dem Jahr 2009, dass der Erfolg agiler Projekte meist auf der für sie typischen intensiven Team- und Kundenkommunikation beruht. Teams, die sich zu täglichen kurzen Meetings treffen und mehrmals pro Woche in Kontakt mit dem Kunden stehen, sind deutlich erfolgreicher als Teams, in denen wenig kommuniziert wird. Auch die Priorisierung von Aufgaben, die agilen Methoden eigen ist, macht Projekte erfolgreicher. Derartige Aspekte lassen sich ohne Probleme auch in eine klassische Vorgehensweise integrieren. Ideal ist es, wenn ein Unternehmen je nach Aufgabenstellung und Rahmenbedingungen entscheiden kann, welche Methode zum Einsatz kommen soll. Das setzt allerdings einen hohen Grad an organisationaler Reife voraus. Die Status-Pro-Agile-Studie zeigt, dass dies in der Praxis durchaus schon umgesetzt wird: Nur 16 Prozent der befragten Unternehmen folgen ausschliesslich einem agilen Ansatz. Meist jedoch werden klassische und agile Methoden in der Praxis zu sogenannten hybriden Ansätzen kombiniert. Auch ein einzelnes Projekt lässt sich in verschiedene Phasen oder Vorgänge untergliedern, die dann mit jeweils der passenden Methode bearbeitet werden. So können sich Projektmanager einen Werkzeugkasten zusammenstellen, mit dem sie für jede Projektherausforderung das richtige Handwerkszeug parat haben.
Studien und Literatur zum Thema
! KASTEN !
! KASTEN !
! KASTEN !
- oose. Innovative Informatik GmbH. (2009). Einfluss klassischer und agiler Techniken auf den Projekterfolg: www.oose.de
- Haberl, P., Spillner, A. Vosseberg, K. & Winter, M. (2011). Softwaretest in der Praxis. Heidelberg, dpunkt.verlag