Idee

Das Auseinanderdriften von Dokumentation und Code ist eine Kostenabwägung, keine Nachlässigkeit

Info

Ursprünglich auf Französisch verfasst. Von KI übersetzt — der Sinn wurde bewahrt, nicht der Stil.

Hauptgedanke

Stellt ein Team fest, dass eine Spezifikation nicht mehr aktuell ist, sieht es darin reflexhaft mangelnde Sorgfalt. Der Mechanismus liegt woanders. Bei jeder Änderung, auch einer kleinen, müsste man die richtige Spezifikation, das richtige Mockup, das richtige Support-Dokument und den richtigen Changelog-Eintrag heraussuchen und dann alle korrigieren. Dieser Aufwand wächst mit der Zahl der Artefakte, nicht mit der Größe der Änderung: Eine Beschriftung zu korrigieren kann bedeuten, fünf Dokumente anzufassen.

Bei einem lebendigen Produkt, das über Monate oder Jahre angepasst und erweitert wird, übersteigt die Summe dieser Resynchronisierungen die verfügbare Zeit. Niemand beschließt, die Dinge auseinanderdriften zu lassen; jeder beschließt nur ein weiteres Mal, dass er die nächste Stunde nicht damit verbringen wird. Das Auseinanderdriften ist das kumulierte Ergebnis dieser Abwägungen, von denen jede für sich vernünftig ist.

Deshalb funktioniert Abhilfe durch Disziplin nicht: Sie verlangt, eine Kostenabwägung mit Willenskraft zu gewinnen.

Warum das wichtig ist

Das verlagert den Ort der Lösung. Solange das Auseinanderdriften als Nachlässigkeit gelesen wird, antwortet man mit Regeln, Reviews und Erinnerungen — die einen ohnehin zu teuren Handgriff noch teurer machen. Als Kostenabwägung gelesen, verlangt es eine Antwort auf der Kostenseite: weniger Artefakte, die gepflegt werden müssen, oder ein niedrigerer Preis für ihre Aktualisierung.

Es vermeidet auch, einem Team einen Mangel zuzuschreiben, der in der Struktur seiner Arbeit liegt.

Nuancen und Grenzen

Die Abwägung ist nicht überall gleich gut zu vertreten: Ein an den Kunden ausgelieferter Changelog und ein internes Arbeits-Mockup haben nicht dieselben Folgen, wenn sie abweichen. Die eingesparten Kosten werden nicht an derselben Stelle bezahlt.

Und das Argument gilt für ein Produkt, das sich fortlaufend weiterentwickelt. Bei einem eingefrorenen Umfang ist die Resynchronisierung ein einmaliger Aufwand, und das Argument entfällt.

Offene Fragen

  • Wie misst man die Kosten, die ein Auseinanderdriften tatsächlich verursacht, um sie mit den Kosten der Pflege zu vergleichen?