Blog

Machen Sie es NICHT gleich beim ersten Mal richtig

Erwin van der Koogh

Erwin van der Koogh

Aktualisiert Oktober 23, 2025
4 Minuten
Kürzlich wurde ich durch eine Statusaktualisierung von jemandem darauf aufmerksam gemacht, dass wir "dies" in Zukunft gleich beim ersten Mal richtig machen müssen. In diesem speziellen Fall ging es um einen Test, der sich sehr spät im Projektzyklus befand und bei dem viele Dinge perfekt zusammenpassen mussten, damit er funktioniert. Jede Verzögerung würde nicht nur das aktuelle Projekt verzögern, sondern auch alle anderen Projekte, die auf die gemeinsam genutzten Ressourcen angewiesen sind. Diese enormen Kosten, wenn etwas schief geht, sind der Grund, warum es so wichtig ist, dass wir es gleich beim ersten Mal richtig machen. Das Problem ist, dass dies Dutzende von Menschen in mehreren Unternehmen und Abteilungen betrifft, die Tausende von Codezeilen geschrieben haben. Ich weiß nicht, was sie tun werden, um die Dinge in Zukunft richtig zu machen, aber wenn wir nach den Erfahrungen der Vergangenheit gehen, werden die meisten Leute noch strengere Zugangskriterien durchsetzen wollen. Es gibt ein paar Probleme mit diesem Ansatz:
  • Jede Komponente auf diese zusätzlichen Kriterien zu testen, ist eine Menge Arbeit
  • Je länger die Liste der Kriterien ist, desto schwieriger wird es, zu garantieren, dass jede Komponente alle Kriterien erfüllt.
  • Bei der Integration mehrerer Komponenten liegt die Komplexität in der Interaktion, nicht in den einzelnen Komponenten.
  • Sie werden nur vorhersehbare Fehler verhindern
Vor allem die beiden letztgenannten Punkte machen es sehr unwahrscheinlich, dass strengere Aufnahmekriterien funktionieren werden. Was können wir also tun? All dies erinnert mich an etwas aus der alten IT-Geschichte. Ich war selbst nicht dabei, aber ich habe viel über die Punch Card-Tage gehört. Nur um Ihr Gedächtnis aufzufrischen. Das war eine Zeit, in der Sie, wenn Sie etwas programmiert haben, eine Lochkarte erstellt haben. Dann brachten Sie einen Stapel dieser Karten zu einem Operator, der irgendwann Ihr Programm auf einem großen Computer mit einem Bruchteil der Rechenleistung, die Sie heute in Ihrer Mikrowelle haben, laufen ließ.Diese Programmierer saßen so ziemlich im selben Boot. Sie mussten es gleich beim ersten Mal richtig machen. Jeder Tippfehler oder Irrtum kostete bestenfalls ein paar Stunden, möglicherweise aber auch Tage. Heutzutage gibt es jedoch nur sehr wenige Programmierer, die sich um Tippfehler kümmern, bevor sie ein Programm ausführen. Geschweige denn, dass sie versuchen, komplexere Fehler herauszufinden. Warum ist das so? Die Antwort ist natürlich der Compiler. Ein Compiler kann Ihren Code viel schneller auf diese Fehler überprüfen als Sie selbst. Warum sollten Sie Stunden damit verbringen, manuell nach Fehlern in Ihrem Code zu suchen, wenn der Compiler die meisten syntaktischen Fehler in Minuten oder Sekunden für Sie finden kann? Die nächste große Erfindung war die Erfindung des Unit Tests. Das war viel aufwändiger, als nur einen Compiler auf Ihren Code anzusetzen, aber es ermöglichte es Ihnen, nicht nur syntaktische Fehler, sondern auch die meisten logischen Fehler sehr schnell zu finden.Dann kam die kontinuierliche Integration. Wir begnügen uns jetzt nicht mehr damit, Fehler im Code einer einzelnen Person zu finden, sondern können auch eine andere Klasse von logischen Fehlern finden, die durch die Komplexität entstehen, wenn mehrere Personen an derselben Anwendung arbeiten und sich auf externe Komponenten verlassen. Was haben diese drei Maßnahmen also gemeinsam? Sie sind sehr billig, jedenfalls im Vergleich zu den Kosten, die entstehen, wenn der Fehler nicht entdeckt wird, und sie sind sehr schnell. Dank dieser Eigenschaften können Sie sie jederzeit einsetzen, was bedeutet, dass Sie sie auch nach jeder größeren Änderung einsetzen können, nur für den Fall, dass Sie einen Fehler eingeführt haben. In den komplexen Umgebungen, in denen wir heute arbeiten, ist es unmöglich, es immer gleich beim ersten Mal richtig zu machen. Wenn Sie also das nächste Mal sagen: "Wir müssen das in Zukunft einfach beim ersten Mal richtig machen", oder wenn Sie das jemanden sagen hören, dann ändern Sie es ein wenig. "Wir müssen es beim ersten Mal richtig machen, wenn wir es wirklich versuchen". Und dann finden Sie einen billigen und schnellen Weg, um herauszufinden, ob es funktioniert.

Verfasst von

Erwin van der Koogh

Contact

Let’s discuss how we can support your journey.