Code Churn

Code Churn

Code Churn misst, wie viel neu geschriebener Programmtext kurz nach seiner Entstehung wieder geändert oder gelöscht wird. Die Kennzahl gilt als Hinweis darauf, wie ausgereift eine Software und wie klar die Anforderungen an sie sind.

Programme bestehen aus Text, den Menschen schreiben: Zeile für Zeile Anweisungen für den Computer. Diese Zeilen bleiben nicht für immer so stehen. Manche werden nach Monaten überarbeitet, andere schon nach wenigen Tagen wieder gelöscht. Code Churn bezeichnet genau diesen zweiten Fall: frisch geschriebene Zeilen, die kurz darauf schon wieder verändert oder entfernt werden. Üblicherweise zählt man dafür alles, was innerhalb von zwei bis drei Wochen nach seiner Entstehung erneut angefasst wird. Das Ergebnis ist eine Prozentzahl: Wie viel Prozent der Arbeit einer Woche hat nicht überlebt?

Was eine hohe Churn-Rate über ein Projekt verrät

Ein gewisses Maß an Umschreiben ist völlig normal und sogar gesund. Niemand trifft beim ersten Versuch jede Entscheidung richtig. Typische Projekte liegen bei etwa 10 bis 20 Prozent Churn. Steigt der Wert deutlich darüber, ist das ein Warnsignal. Dann wird viel Arbeitszeit in Ergebnisse gesteckt, die kurz darauf wieder im Papierkorb landen.

Die Ursache liegt selten bei den Programmierern selbst. Meistens sind die Anforderungen unklar: Der Auftraggeber weiß noch nicht genau, was die Software eigentlich tun soll. Also wird gebaut, verworfen, neu gebaut. Manchmal steckt auch ein Entwickler fest, probiert Lösung um Lösung und findet keine, die trägt. Hohe Churn-Werte sind deshalb vor allem ein Anlass für ein Gespräch, nicht für eine Rüge.

Wichtig ist die Abgrenzung zur reinen Menge an geschriebenem Code. Wer viele Zeilen produziert, arbeitet nicht automatisch gut. Und wer viel wieder löscht, arbeitet nicht automatisch schlecht. Code Churn sagt etwas über den Prozess aus, nicht über die Qualität einer einzelnen Person.

Wie die Zahl zustande kommt

Fast jedes Softwareprojekt nutzt heute ein Versionsverwaltungssystem, meist Git. Dieses System speichert jede Änderung am Code mit Zeitstempel und Urheber. Man kann also jederzeit nachsehen, wann eine bestimmte Zeile entstanden ist. Damit hat man alle Daten, die für die Berechnung nötig sind.

Ein Analyseprogramm geht die Änderungen der letzten Wochen durch. Für jede gelöschte oder überschriebene Zeile prüft es das Alter. War die Zeile jünger als der gewählte Zeitraum, zählt sie als Churn. Am Ende teilt man diese Menge durch die gesamte Arbeit des Zeitraums. Verbreitete Werkzeuge dafür sind GitPrime, Waydev oder LinearB.

Ein Vergleich hilft beim Verständnis: Ein Autor schreibt an einem Roman. Dass er Kapitel aus dem ersten Entwurf ein Jahr später überarbeitet, ist Handwerk. Dass er jede Seite noch am selben Abend zerreißt und neu beginnt, deutet darauf hin, dass er nicht weiß, wohin die Geschichte soll. Genau diesen Unterschied misst Code Churn.

Von Entwickler-Dashboards bis zu KI-Assistenten

In größeren Firmen taucht die Kennzahl auf Dashboards für Teamleiter auf, neben Werten wie der Zeit bis zur Auslieferung. Sie dient dort als Frühwarnsystem für Projekte, die aus dem Ruder laufen. Umstritten ist sie, wenn Vorgesetzte sie zur Bewertung einzelner Mitarbeiter benutzen. Wer weiß, dass sein Churn gemessen wird, löscht eigenen schlechten Code eben nicht mehr — und das schadet der Software.

Neue Aufmerksamkeit bekam der Begriff durch KI-Programmierhilfen wie GitHub Copilot. Diese Werkzeuge schlagen automatisch Codezeilen vor, die Entwickler per Tastendruck übernehmen. Eine viel zitierte Auswertung der Firma GitClear an Millionen Zeilen Code zeigte, dass der Anteil kurzlebiger Zeilen seit 2021 deutlich gestiegen ist. Vorgeschlagener Code wird schneller angenommen und dann eben auch schneller wieder verworfen.

Ob das ein echtes Qualitätsproblem ist, wird in der Branche diskutiert. Kritiker der Studie halten dagegen, dass schnelles Ausprobieren und Verwerfen auch eine legitime Arbeitsweise sein kann. In Tech-News begegnet dir Code Churn deshalb vor allem in Berichten darüber, ob KI-Assistenten die Softwareentwicklung wirklich besser machen oder nur schneller.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.