Agiles Manifest und seine Prinzipien

4 Werte und 12 Prinzipien

Um das Jahr 2000 gewann ‘Agilität’ an Aufmerksamkeit, verschiedene Autoren veröffentlichten Varianten und tasteten sich gemeinsam an ein Verständnis heran. Alle kamen aus der Softwareentwicklung, waren erfahrene Pragmatiker und teilten teils leidvolle Erfahrungen.

Was die siebzehn alle nicht mehr wollten, vereinte sie: hierarchische Befehlsketten, Wasserfall-Methoden und deterministisches Projektmanagement.

Es formte sich ein gemeinsamer Wertekanon und Praktiken agiler Softwareentwicklung und daraus das agile Manifest für Softareentwicklung. Dieses Manifest ist über die Jahre das einflussreichste Dokument der Agilität geworden. Es ist kurz und doch der Startpunkt für vieles.

Die vier zentralen Werte des Agilen Manifests sind:

  1. Individuen und Interaktionen sind wichtiger als Prozesse und Werkzeuge.
  2. Funktionierende Software ist wichtiger als umfassende Dokumentation.
  3. Kooperation mit dem Kunden ist wichtiger als Vertragsverhandlungen.
  4. Reaktion auf Veränderung ist wichtiger als Planerfüllung.

Die Verfasser geben einen wichtigen Satz mit:

Obwohl wir auch die Begriffe auf der rechten Seite als wertvoll erachten, bewerten wir die Begriffe auf der linken Seite als wichtiger.

Es gibt also kein entweder/oder, sondern eine Verschiebung des Fokus. Wie weit die Umsetzung in eine Richtung ausschlägt, ist ausschließlich kontextabhängig. Als einleuchtendes Beispiel: in der Medizintechnik geht es um Leib und Leben und Dokumentation ist dort wichtiger als bei flüchtigen Online-Games.

Die 12 Prinzipien des Agilen Manifest:

  • Unsere höchste Priorität ist es, den Kunden durch frühe und kontinuierliche Auslieferung wertvoller Software zufriedenzustellen.
  • Heiße Anforderungsänderungen selbst spät in der Entwicklung willkommen. Agile Prozesse nutzen Veränderungen zum Wettbewerbsvorteil des Kunden.
  • Liefere funktionierende Software regelmäßig innerhalb weniger Wochen oder Monate und bevorzuge dabei die kürzere Zeitspanne.
  • Fachexperten und Entwickler müssen während des Projekts täglich zusammenarbeiten.
  • Errichte Projekte rund um motivierte Individuen. Gib ihnen das Umfeld und die Unterstützung, die sie benötigen, und vertraue darauf, dass sie die Aufgaben erledigen.
  • Die effizienteste und effektivste Methode, Informationen an und innerhalb eines Entwicklungsteams zu übermitteln, ist die direkte Kommunikation (face-to-face).
  • Funktionierende Software ist das wichtigste Maß für den Arbeitsfortschritt.
  • Agile Prozesse fördern nachhaltige Entwicklung. Die Auftraggeber, Entwickler und Benutzer sollten kontinuierlich ein konstantes Entwicklungstempo beibehalten können.
  • Ständiges Augenmerk auf technische Exzellenz und gutes Design fördert Agilität.
  • Einfachheit – die Kunst, unnötige Arbeit zu vermeiden – ist essenziell.
  • Die besten Architekturen, Anforderungen und Designs entstehen durch selbstorganisierte Teams.
  • In regelmäßigen Abständen reflektiert das Team, wie es effektiver werden kann, und passt sein Verhalten entsprechend an.
Sicherheitshalber hier noch einmal eine Kurzfassung der 12 Prinzipien in prägnanten Einzelbegriffen.
Das ist der Kern um den es den 17 Autoren ging. Das Schöne an diesen Prinzipien ist: sie lassen sich unabhängig von Methode und Kontext immer anwenden, wenn komplexe Probleme gelöst werden sollen.
  • Zusammenarbeit
  • Wissensarbeit
  • Iterationen
  • Flow
  • Prüfen und Anpassen
  • Transparenz
  • Entdecken und Liefern
  • Autonomie
  • Verantwortlichkeit
  • Ausrichtung
  • mache weniger, dafür häufiger
  • Kundennutzen = geschäftlicher Nutzen
  • arbeite in kleinen Schritten
  • arbeite in einem Team mit ausgewogenen Fähigkeiten
  • prüfe regelmässig, was zu verbessern ist
  • übe radikale Transparenz
  • ‘geh hin und sieh selbst’
  • betrachte bestehende Belohnungsstrukturen kritisch
  • teste hochriskante Hypothesen zuerst
  • Lernen ist ein ständiger, begleitender Vorgang