Compliance und Agilität – Wozu dokumentieren?

Einer der vier Werte im Manifest für agile Softwareentwicklung lautet: „Working software over comprehensive documentation".* Gerne wird dieser Satz sogar von agilen Teams missverstanden oder sehr einseitig ausgelegt, was dazu führt, dass Dokumentation oft vernachlässigt wird.

Gerade vor dem Hintergrund steigender Compliance-Anforderungen und -Überprüfungen durch eine Revision ist die zusammenfassende Aussage am Ende des agilen Manifests wertvoll: „Das heißt, obwohl wir die Werte auf der rechten Seite wichtig finden, schätzen wir die Werte auf der linken Seite höher ein“.

Agil entwickeln bedeutet nicht, dass alles ohne Regeln oder gar chaotisch stattfindet. Vielmehr arbeiten interdisziplinäre Teams mit einem festen Wertekern, vereinbarten Regeln und flexiblen Techniken zusammen. Somit gilt auch im agilen Umfeld, dass am Ende der Kunde bzw. der Auftraggeber mitbestimmt, wieviel und welche Dokumentation notwendig ist, wobei es immer zu prüfen gilt, welche Ziele verfolgt werden und welcher Nutzen dadurch tatsächlich entsteht. In hochregulierten Umfeldern wie z.B. der Finanzdienstleistungsbranche wird der Umfang größer sein, als in anderen Branchen, und die Compliance-Einhaltung wird in der Regel durch eine Revision überprüft. Die Revision, welche die Einhaltung der Compliance-Vorgaben klassischer Weise auf Grundlage der vorgelegten Dokumentationen prüft, muss natürlich auf den neuen Weg eingebunden werden.
Die Anforderungen an die Dokumentation können als nicht-funktionale Anforderungen beispielsweise über eine Definition of Done in das agile Projektumfeld einfließen. Um dem Grundgedanken der Agilen Softwareentwicklung auch bei Dokumentation umsetzen zu können, wird auch diese Aufgabe in den cross-funktional Teams umgesetzt. Zusätzlich kann die Erstellung der Dokumentation durch Automatisierung und durch neue Techniken (z.B. Dokumentation nahe am Code) unterstützt und erleichtert werden. Dadurch beschränkt man sich auf das Wesentliche, und gleichzeitig Notwendige innerhalb der Dokumentation.
Eine nachträgliche Dokumentation der Anwendung sollte erfahrungsgemäß unbedingt vermieden werden. Der Rechercheaufwand ist zu hoch, die Aufgabe ist für den Mitarbeiter langweilig und erscheint sinnlos, und die Dokumentation ist dadurch natürlich immer veraltet. Daher ist es besser, die Aufgabe der Dokumentation in den agilen Entwicklungsprozess einzubinden. Die Revision muss eventuell davon überzeugt werden, diese andere Art der potentiell „abgespeckten“ Dokumentation mitzutragen, der in einigen Fällen nur durch Fachleute in vollem Umfang verständlich ist.
Fazit: eine Dokumentation, die in den agilen Prozess von vornherein als eine wichtige Rahmenbedingung eingebunden wird, dient nicht nur dem Nachweis der Einhaltung von Compliance-Vorgaben. Sie dient auch der Sicherung des Wissens über das Produkt, und somit ebenfalls dem agilen Grundgedanken der Transparenz.

___

* agilemanifesto.org/iso/en/manifesto.html