Bis vor kurzem war SOA (Serviceorientierte Architektur), immer noch ist Cloud das Stichwort für zahlreiche Veranstaltungen, Publikationen und Diskussionen in der IT-Branche. Aber ein Begriff kann es mittlerweile mit Cloud schon aufnehmen, nämlich Agilität.

Was steckt dahinter, ist es nur ein willkommenes Schlagwort, um alten Wein in neuen Schläuchen anbieten zu können? Ich glaube nicht, dass das so ist. Wir haben in der Softwareentwicklung eine lange Phase der Professionalisierung durchlaufen, diese war aber auch durch Formalisierung oder gar Bürokratisierung gekennzeichnet. Komplexe Prozesse für das Anforderungsmanagement, Risikomanagement, Change Management etc. wurden entwickelt und mehr oder weniger konsequent umgesetzt. Software-Engineering ist, wie schon der Name sagt, eine Sache für Ingenieure. An sich positiv, auch die Industrialisierung der Softwareproduktion hat Lösungen auf den Markt gebracht, die man sich als kleines Unternehmen oder gar als Konsument nie hätte leisten können. Aber es ging auch der Pioniergeist der Anfangsphasen verloren, eine ebenfalls völlig natürliche Entwicklung.

Im Kern heißt Agilität, sich auf die Ziele des Kunden bzw. Anwenders mit einer positiven, neugierigen Grundhaltung einzulassen, eine Partnerschaft einzugehen und sich von der Fiktion zu trennen, man könne Anforderungen über eine Mauer werfen und es werde nach einiger Zeit die genau dazu passende Software wieder zurück geworfen. Man weiß, dass Dialog notwendig ist, man anerkennt, dass Änderungen unvermeidlich sind und sieht diese als Zeichen für Innovation, nicht als Inkonsequenz, die durch Change-Requests zu Vollkosten zu pönalisieren ist.

Dieser Zugang hat sich nicht zufällig in der Software-Entwicklung entwickelt und breite Aufmerksamkeit erlangt. In einem Seminar-Vortrag habe ich kürzlich die wichtigsten Punkte dazu zusammengefasst, hier der Download-Link.

Ich meine aber, dass der Geist des „Agile Manifesto“ für jede Art von Projekt anwendbar und fruchtbar ist.