Blog

Kultur ist der neue Prozess

Erwin van der Koogh

Aktualisiert Oktober 23, 2025
4 Minuten

Im Laufe der Jahre habe ich viele Versuche gesehen, die Softwarequalität zu verbessern. Die meisten unserer Kunden versuchen, die Softwarequalität durch die Einführung eines Qualitätsprozesses zu verbessern. Dabei handelt es sich in der Regel um eine Kombination aus strengen Kodierungsrichtlinien, Code-Reviews, Checklisten, Abnahmekriterien auf der Grundlage von PMD, Checkstyle und Findbugs und Audits durch externe Parteien.Was mir jedoch vor ein paar Wochen aufgefallen ist, ist, dass wir bei Xebia kaum einen umfassenden formalen Qualitätsprozess haben. Das heißt, wir haben zwar viele Best Practices und wir testen und messen die Qualität häufig, aber wir müssen die Qualität nie "erzwingen".

Es gibt keine obligatorischen Code-Reviews, keine Kodierungsrichtlinien und ich weiß zwar, dass es irgendwo im Maven-Repository einige PMD-, Checkstyle- und Findbugs-Konfigurationsdateien gibt, aber ich bezweifle ernsthaft, dass alle unsere Projekte davon Gebrauch machen. Wenn unsere Software jedoch von externen Auditoren geprüft wird, erhalten wir Noten wie "Es gibt keine Empfehlungen zur Verbesserung der Wartbarkeit und Zuverlässigkeit..." und "Die größte Stärke des Systems ist, dass es keine Schwachstellen aufweist. Die Systeme haben in allen Punkten sehr gut oder ausgezeichnet abgeschnitten.". Ich habe genau das Gleiche bei einem unserer Kunden vor etwa einem Jahr gesehen, als ich ein Sicherheitsaudit durchführte. Der Code war klar, extrem einfach zu verstehen und wir hatten buchstäblich nur 1 unwichtiges Ergebnis, wo wir normalerweise Dutzende von wichtigen haben. Es gab keinen nennenswerten Prozess, der dafür gesorgt hätte, dass das passiert, es ist einfach passiert. Bei meinem früheren Arbeitgeber hatten wir auch nur sehr wenige Prozesse und konnten trotzdem hochwertige Software liefern. Wie ist das alles möglich? Alle diese Umgebungen haben ein paar Dinge gemeinsam, in keiner bestimmten Reihenfolge.

  • Sie haben erfahrene und leidenschaftliche Teams und vor allem Teamleiter.
  • Der Schwerpunkt liegt darauf, die Dinge einfach zu halten und Ergebnisse zu erzielen.
  • In der gesamten Organisation herrscht eine Kultur der Exzellenz.
  • Eine offene Kultur.

Ich werde diese Punkte nacheinander besprechen: Erfahrene Teams und Teamleiter Xebia hat sehr strenge Einstellungsanforderungen und als Teil des Einstellungsverfahrens haben wir neben dem üblichen Vorstellungsgespräch auch Aufgaben, bei denen die Kandidaten ihre Erfahrung in dem Bereich unter Beweis stellen können (und müssen). Bei meinem früheren Arbeitgeber und meinem Kunden gab es Gertjan van Oosten und Andre Kampert, die mit Abstand zu den besten Teamleitern gehören, denen ich in meiner Karriere begegnet bin. Diese Leute wissen nicht nur, wie man gute Software schreibt, sondern auch, wann man sie brechen muss. All diese Leute arbeiten mit Leidenschaft an der Entwicklung hochwertiger Software. Einfachheit Aber vielleicht das Wichtigste, was in allen Umgebungen passiert ist, ist der strikte Fokus auf Einfachheit und Ergebnisse. Verwechseln Sie jedoch Einfachheit nicht mit der Verwendung von einfachem Code. Das beste Beispiel dafür, wie man es nicht machen sollte, stammt aus einer Anwendung, in der ich schnell ein paar Fehler beheben musste. Das komplexeste Konstrukt in der gesamten Anwendung war eine Case-Anweisung mit 4 Fällen und einem Standardwert. Es gab jedoch auch Methoden mit 6 tief verschachtelten if-Anweisungen. Etwas mehr Komplexität, in diesem Fall z.B. in Form von Polymorphismus, hätte der Anwendung gut getan. Der Fokus auf Ergebnisse sorgt dafür, dass sich die Anwendung nie zu weit vom funktionierenden Code entfernt. Wenn wir jetzt etwas haben, das funktioniert, und wir müssen in einer Woche etwas haben, das funktioniert, sollten wir besser dafür sorgen, dass es auch dazwischen funktioniert. Kultur der Exzellenz Diese ist bei Xebia, aber auch in den anderen Organisationen, sehr präsent. Einer unserer Grundwerte ist Qualität ohne Kompromisse. Das ist natürlich utopisch, aber es bedeutet, dass wir, wenn wir jemals einen Kompromiss bei der Qualität eingehen, zumindest sehr sorgfältig darüber nachgedacht haben. Es bedeutet auch, dass ich nicht jede einzelne Entscheidung gegenüber Projektmanagern oder Vorgesetzten verteidigen muss. Wenn ich etwas Schmutziges in 2 Stunden und etwas Richtiges in einem Tag erledigen kann, kann ich einfach sagen, dass es einen Tag dauern wird. Wir machen die Dinge richtig oder wir machen sie gar nicht. Offene Kultur Softwarequalität ist nie schwarz-weiß. Es gibt sehr viele Grautöne. Was diese Umgebungen auszeichnet, ist eine Kultur, in der es in Ordnung ist, über Qualität zu diskutieren. Keiner einzelnen Person 'gehört' ein einzelnes Stück Code und das Ganze ist eine Teamleistung. Eine Diskussion über die Qualität des Codes, den jemand geschrieben hat, wird als Möglichkeit gesehen, sowohl den Code als auch die Person, die den Code geschrieben hat, zu verbessern. Wenn Sie also Probleme mit der Codequalität haben, sollten Sie in Erwägung ziehen, alle Qualitätsverfahren über Bord zu werfen, einen leidenschaftlichen, erfahrenen Teamleiter einzustellen, sich auf einfachen, funktionierenden Code zu konzentrieren und Ihrem Team die Gewissheit zu geben, dass es zwar in Ordnung ist, Fehler zu machen, dass es aber nicht in Ordnung ist, Abkürzungen zu nehmen und Dinge nicht richtig zu tun.

Verfasst von

Erwin van der Koogh

Contact

Let’s discuss how we can support your journey.