DevClass, Murat Guler 11.02.2024, 09:32 Uhr

Wenn Agile Methodik zu schlechtem Code führt

Ein ehemaliger Software-Ingenieur und -Architekt von Google stellt in einem Buch über Softwarequalität fest, dass die agile Methodik oft zu einem Werkzeug für Mikromanagement werden kann und zu schlechtem Code führt.
(Quelle: muromuro.substack.com)
Murat Guler ist Software-Ingenieur und -Architekt und hat mehr als 13 Jahre lang bei Google und davor bei Qualcomm gearbeitet. Jetzt hat er ein Startup gegründet, das eine Webanwendung entwickelt, die Unternehmen bei technischen Interviews in der Softwareentwicklung unterstützt. Im September 2022 hat er bei Google gekündigt und seitdem ein Buch mit dem Titel Defending Software Quality geschrieben, das "ehrliche Kritik und umsetzbare Vorschläge" verspricht, wie er auf LinkedIn schreibt. Im Kapitel über Agile als Mikromanagement-Tool stellt Guler die Annahme in Frage, dass die Einführung der agilen Methodik die Produktivität und Codequalität verbessert. Der Autor betont, dass er kein bestimmtes Unternehmen beschreibt und schildert anekdotische Belege von "Freunden und Ingenieuren aus verschiedenen Unternehmen", die darauf hindeuten, dass Agile "als Mikromanagement-Tool eingesetzt wird".
Das Kernproblem, so Guler, ist das Prinzip von Agile, das besagt, dass "Geschäftsleute und Entwickler während des gesamten Projekts täglich zusammenarbeiten müssen" - dies stammt aus dem Agilen Manifest. Dies könne leicht zu einem Mikromanagement führen, bei dem die Product Owner "die Diskussionen dominieren und die Meinungen der Ingenieure ausser Kraft setzen", sagt er. Schätzungen darüber, wie lange die Arbeit dauern wird, werden zu Fristen, und die Ingenieure fühlen sich unzuverlässig, hinterfragt und negativ kritisiert, wenn die Dinge nicht gut laufen.
Die Situation kann sich dadurch verschlimmern, dass Manager neue Prozesse einführen, wie zum Beispiel "lange und sehr detaillierte Anforderungsdokumente", die zu einer zusätzlichen Belastung werden und die Produktivität weiter verringern. Feature-Flags, eine Methode zum Aktivieren und Deaktivieren von Funktionen, können eingeführt werden, um die Zuverlässigkeit zu verbessern, aber "zu viele Flaggen bedeuten, dass es zu viele Kombinationen gibt", schreibt Guler, so dass ein angemessenes Testen schwierig ist.
Dies sind Beispiele dafür, wie Agile schief läuft, aber laut Guler gibt es noch weitere Probleme, selbst wenn die Methodik richtig angewendet wird. Eine von Tim Anderson geschriebene Zusammenfassung des englischsprachigen Buches von Murat Guler finden Sie hier.



Das könnte Sie auch interessieren