Agiles Manifest: Was ist das?

Agiles Manifest

Zur Entstehung, Inhalten und Werten des agilen Manifests

Das Agile Manifest formuliert vier Leitsätze für agile Softwarewareentwicklung. Welche das sind erfahrt Ihr in diesem Artikel.

Unter agiler Softwareentwicklung werden verschiedene Projektmanagement-Methoden verstanden, die als Gegenbewegung zu klassischen Methoden entstanden. Vertretern agiler Projektmanagement-Ansätze sehen traditionelle Ansätze wie das V-Modell, das Wasserfallmodell oder das Rational Unified Process als schwergewichtig und unflexibel an.

Agile Ansätze gehen davon aus, dass während der Entwicklung noch Wissen entsteht, das zu einer möglichst guten Lösung dient. Demnach sind klassische Ansätze, das gewünschte Ergebnis zu Beginn des Projekts detailliert zu spezifizieren, nicht realitätsnah. Daher sollen bei der Softwareentwicklung Anpassung und Flexibilität einen höheren Stellenwert bekommen. Die Software soll während der Entwicklung zum Einsatz kommen und sich auf Basis der Nutzererfahrung entwickeln.

Geschichte und Entstehung des agilen Manifests

Nach ersten Ansätzen in den 1990er Jahren wurde 2001 auf einem Treffen von Softwareentwicklern in Utah, USA, die Bezeichnung “agil” geprägt. Im Rahmen dieses Treffens entstand das Agile Manifest, das damals von 17 und bis heute von tausenden Entwicklern unterzeichnet wurde. Zu den Erstunterzeichnern gehörte u.a. Kent Beck, der 1999 mit “Extreme Programming” einen ersten ausformulierten agilen Ansatz vorstellte.

Was ist das Agile Manifest?

Das Agile Manifest formuliert vier Leitsätze für agile Softwarewareentwicklung:

  1. Individuen und ihr Zusammenwirken sind wichtiger als Prozesse und Werkzeuge.
  2. Funktionierende Software geht über ausführliche Dokumentation.
  3. Zusammenarbeit mit Kunden ist entscheidender als Vertragsverhandlungen.
  4. Reagieren auf Veränderung bringt bessere Ergebnisse als der Befolgen eines Plans.

Die genannten traditionellen Aspekte werden als wichtig anerkannt, die in der Gegenüberstellung genannten Aspekte aber werden von den Unterzeichnern des Manifests höher eingeschätzt.

Welche Werte und Prinzipien propagiert das Agile Manifest?

Aus dem Agilen Manifest gehen 12 Prinzipien agiler Entwicklung hervor. Zentral ist die Idee, die Entwurfsphase zu minimieren und so bald wie möglich zu ersten einsatzfähigen Versionen der angestrebten Software zu gelangen.

Die Entwicklungsrichtung ergibt sich durch die in kurzen regelmäßigen Abständen stattfindende Abstimmung mit dem Kunden, bei dem sich die aktuelle Version der Software im Einsatz bewähren muss. So bestimmen beständig die Kundenwünsche auf Basis der Nutzerfahrung die Entwicklung. Dieser Weg ist für die Vertreter der agilen Methodik klassischen Entwicklungsmodellen überlegen. Sie gehen von der Erfahrung aus, dass sich bestmögliche Lösungen erst durch den Zyklus von Nutzung und Anpassung nach und nach herauskristallisieren.

Diese 12 Prinzipien ergeben sich aus dem agilen Manifest:

  • Höchste Priorität hat die frühe und kontinuierliche Auslieferung von Software zur Zufriedenstellung des Kunden.
  • Veränderungen der Anforderungen während des Prozesses werden als wünschenswert angesehen. Statt Spezifikationen abzuarbeiten, die zu Beginn des Projekts unflexibel festgelegt wurden, wird das Feedback aus der Anwendung früher Versionen als bessere Leitlinie für die Entwicklung angesehen.
  • Daher sollen einsatzfähige Versionen der Software in regelmäßigen, kurzen Intervallen (Wochen oder Monate) ausgeliefert werden und operativ eingesetzt werden.
  • Angestrebt wird ein engerer Austausch zwischen der Entwicklungs- und der Geschäftsabteilung, am besten auf täglicher Basis.
  • Gute Arbeit setzt motivierte Beteiligte voraus. Mitwirkende sollen dafür die Umgebung, die Unterstützung und das Vertrauen erhalten.
  • Als effizienteste und effektivste Methode der Informationsvermittlung für die Arbeit wird das Gespräch von Angesicht zu Angesicht angesehen.
  • Funktionierende, einsatzfähige Software gilt als der wichtigste Maßstab für Fortschritt der Entwicklung.
  • Agile Prozesse sollen nachhaltige Entwicklung begünstigen. Alle Beteiligten, d.h. die Auftraggeber, Entwickler und Nutzer sollten ein konstantes Tempo auf unbestimmte Zeit einhalten, also insbesondere regelmäßige Auslieferungen und Rückmeldungen.
  • Beständiges Augenmerk gilt gutem Softwaredesign und allgemein technischer Qualität.
  • Vereinfachung – die Kunst, den Anteil der Arbeit zu maximieren, die nicht getan werden muss – ist essenziell.
  • Die besten Anforderungen, Designs und Architekturen entstehen in selbstorganisierten Gruppen.
  • In regelmäßigen Abständen reflektieren die Teams darüber, wie sie effektiver werden können, und passen ihr Vorgehen entsprechend an.

Methodensammlungen für das Projektmanagement bei agiler Softwareentwicklung nennen sich z.B. Adaptive Software Development (ASD), Behavior Driven Development (BDD), Feature Driven Development (FDD), Crystal, Extreme Programming (XP), Scrum und Kanban.

Fazit

Eine repräsentative Studie “Status Quo Agile” der Hochschule Konstanz von 2014 ergab tatsächlich in allen untersuchten Aspekten bessere Ergebnisse beim Einsatz agiler Methoden gegenüber klassischen.
Agile Softwareentwicklung auf Basis des Agilen Manifests ist heute weit verbreitet. Derartige Ansätze erfordern Offenheit beim Kunden für ein sich während des Prozesses herausbildendes Produkt und Verinnerlichung der Prinzipien durch die Mitwirkenden.

Rückmeldungen