Es begann auf einer Skihütte in Utah: Im Jahr 2001 veröffentlichten US-amerikanische Software-Entwickler das Manifest der agilen Software-Entwicklung. Die darin formulierten Grundsätze und Prinzipien befolgen mittlerweile nicht nur Software-Entwickler. In den letzten Jahren haben sich agile Methoden immer stärker in sämtlichen Entwicklungsprozessen etabliert und das bis heute weit verbreitete Wasserfall-Modell abgelöst.
Anstatt den gesamten Prozess-Ablauf durchzuplanen und erst nach der Fertigstellung zu kontrollieren, ob alles nach Plan umgesetzt wurde, zerteilt man nach der agilen Methodik den Schaffensprozess in kleine abgeschlossene Abschnitte und überprüft nach jedem Abschnitt, ob die Teil-Ziele erreicht wurden. Damit ist die Fehleranalyse und Korrektur gegenüber dem Wasserfall-Modell integraler Bestandteil bei jedem Entwicklungsschritt. Das erste Prinzip des Manifests der agilen Software-Entwicklung lautet wie folgt:
„Unsere höchste Priorität ist es, den Kunden durch frühe und kontinuierliche Auslieferung wertvoller Software zufrieden zu stellen.“
Die Technische Dokumentation und die agile Entwicklung
Was bedeutet die agile Entwicklung für unterstützende Informationen wie Online-Hilfen und Betriebsanleitungen? Wie kann sich die Technische Dokumentation in diesen Prozess einbringen? Antworten geben die Schlagworte „früh“, „kontinuierlich“ und „wertvoll“.
Frühe Bereitstellung
Die agile Software-Entwicklung zielt darauf ab, dem Kunden so früh wie möglich funktionierende Software bereitzustellen, auch wenn sie anfangs vielleicht nur einen geringen Funktionsumfang besitzt. Für die Dokumentation bedeutet dies, dass sie ebenfalls so früh wie möglich umgesetzt und bereitgestellt wird. Demnach wird der identifizierte Kundenmehrwert direkt umgesetzt, festgestellte Probleme so früh wie möglich erkannt und behoben.
Kontinuierliche Anpassung
Die zu entwickelnden Produkte werden kontinuierlich an die Bedarfe der Kunden angepasst und den Kunden zur Verfügung gestellt. Damit wächst auch der Funktionsumfang, wodurch regelmäßig Änderungen an der Dokumentation umgesetzt werden müssen. Dies bedeutet, dass nach jeder Iteration – Entwicklungsschritt – die passende und richtige Dokumentation verfügbar ist.
Wertvolle Ergebnisse
Alle Iterationen haben den Anspruch, dem Kunden erschließbare und vorzeigbare Ergebnisse zu liefern und sind somit auf einen maximalen Kundenmehrwert ausgerichtet. Parallel zum Entwicklungsergebnis muss auch die dazugehörige Dokumentation nach jeder Iteration aktualisiert und verfügbar sein. Aktuell funktioniert die Technische Dokumentation zumeist nach klassischen Methoden, wie dem Wasserfall-Modell, und liegt nach Abschluss des gesamten Entwicklungsprozesses vor. Das kann dazu führen, dass Fehlentwicklungen zu spät erkannt und behoben werden, was wiederum zu Nacharbeiten, Verzögerungen und Mehrkosten führt.
Wie agil ist die technische Dokumentation?
Wenn der Entwicklungsprozess agil abläuft, wird immer häufiger auch die Dokumentation agil gestaltet. Dabei sind die Dokumentationsabläufe ähnlich denen der agilen Entwicklung:
- In der agilen Entwicklung sind Prozesse in kleine Teilprozesse zerlegt – also müssen auch Inhalte in kleine Einheiten zerlegt werden. Ansätze zur systematischen Modularisierung mit Bezug zu den User-Stories der Kunden sind heutzutage etabliert und lassen sich in der Regel in den Systemen der Entwicklung oder über einfache, logische Verknüpfungen in den redaktionellen Systemen abbilden.
- Im agilen Vorgehen wird ein abgestimmter, dynamischer, aber niemals chaotischer Funktionsumfang für eine Iteration definiert. Inhalte müssen also dynamisch den einzelnen Iterationen zugeordnet werden. Konkret bedeutet dies, dass bereits zu Anfang einer Iteration der notwendige Dokumentationsumfang festgelegt, der dafür notwendige Aufwand geplant und die zu ändernden Module bekannt sind. Die schrittweise und modulare Umsetzung der notwendigen Dokumentation für eine User-Story ermöglicht ein schnelles und einfaches Fallback, wenn einzelne User-Stories sich ändern oder entfallen.
- Innerhalb des agilen Vorgehens werden die vom Anwender erwartete Funktionalität und Usability erarbeitet und priorisiert. Daraus folgt, dass jeweils klar priorisiert werden kann, welche Anwenderinformationen in welchem Kontext benötigt werden und geliefert werden müssen.
Der Vorteil einer agilen Dokumentation
Im Rahmen des agilen Vorgehens werden nicht nur die User-Stories für das zu entwickelnde Produkt diskutiert, priorisiert und am Ende die Ergebnisse aus Sicht des Kunden bewertet, sondern auch die Dokumentationsinhalte. Bei einem konsequent agilen Vorgehen wird damit eine optimal an den Anwendungsfällen der Kunden angepasste Dokumentation erstellt, die für die Kunden einen wahrnehmbaren Mehrwert darstellt.
Zusätzlich können in der Erarbeitung der User-Stories alternative Szenarien zur Unterstützung des Anwenders erarbeitet werden. Wenn ein Ablauf schwierig zu beschreiben ist, können mögliche Verbesserungen direkt diskutiert und entschieden werden, bevor diese technisch umgesetzt sind. Damit erhalten die Entwickler wertvolles Feedback und die Redakteure nehmen direkten Einfluss auf das Produkt. Wenn die Dokumentation als integraler Bestandteil des Produkts betrachtet wird, dann lohnt es sich, darüber nachzudenken, wie sich die Redaktion in das agile Projekt integriert.