Schnell und trotzdem perfekt – immer wieder müssen sich Softwareentwickler diesem Dilemma stellen und eine meist folgenschwere Entscheidung in die ein oder andere Richtung fällen. Angesichts der Digitalisierung, die im hohen Takt Innovationen erforderlich macht, entstehen dadurch viele Probleme. Schliesslich können es sich im internationalen Wettbewerb nur wenige Unternehmen leisten, Produkte erst dann auf den Markt zu bringen, wenn sie sich in jedem nur denkbaren Szenario bewährt haben.
Von Constantin Gonzalez, Solutions Architect bei Amazon Web Services
Der Philosoph, Statistiker und Finanzmathematiker Nassim Taleb hat sich ausführlich mit dem Spagat zwischen Geschwindigkeit und Qualität auseinandergesetzt und den Begriff der Antifragilität geprägt. Konkret versteht er darunter Lösungen, die durch Fehler nicht aus dem Takt gebracht werden können.
Wie sich das Konzept in der Praxis umsetzen lässt, zeigt die Harting Technologiegruppe, ein Weltmarktführer, der in Biel mechatronische Komponenten für Automobilbau, Industrie, Medizintechnik und Sensorik sowie Steckverbindungen fertigt. Bereits seit 2011 beschäftigt sich das Unternehmen intensiv mit den Themen Digitalisierung und Industrie 4.0. Im gleichen Zug stellte das Unternehmen seine Softwareentwicklung auf agile Methoden um und arbeitet seitdem mit «minimum viable products». Bei diesen „minimal machbaren Produkten“ wird der Komplexitätsgrad sukzessive gesteigert. Eine Erweiterung um neue Funktionen erfolgt erst dann, wenn sich diese in der Praxis bewährt haben und sie die Benutzer als einfach und vorteilhaft in der Bedienung beurteilen.
Da Harting bei der Umsetzung dieser Philosophie auf Microservices aus der Cloud zurückgreift, ist es unkomplizierter, einzelne Teile der Software zu verwerfen und von Grund auf neu zu gestalten. Fehler und Fehlentscheidungen lassen sich zügig beheben, Systeme reifen schneller und nähern sich so dem Zustand der Antifragilität an. Das Unternehmen kann schneller arbeiten, weil Fehler als unvermeidlicher Bestandteil der Softwareentwicklung akzeptiert – aber eben auch gezielt analysiert – werden.
Zugleich wurde die Software-Entwicklungs und -Betriebskette vom Entwickler bis zum Live-System in der Produktion automatisiert. Jede Zeile Software durchläuft dabei im Rahmen der Prozesse «Continuous Integration» und «Continuous Delivery» (CI/CD) automatisch mehrere Tests, in die die Lehren aus vergangenen Fehlern integriert wurden. Das verhindert, dass neue Programmteile alte Fehler enthalten. Im Anschluss kann neue Software den Gang in die Produktion antreten und wird vollautomatisch in Betrieb genommen.
Eine neue Fehlerkultur etablieren
Das Beispiel zeigt wie wichtig es ist, aus Fehlern zu lernen. Dabei hat sich die 5-Why-Methode aus dem Qualitätsmanagement bewährt. Dabei wird die Warum-Frage solange gestellt, bis das eigentliche Problem vollständig erkannt wurde. So könnte eine Ausgangsfrage lauten: Warum ist die Webseite nicht erreichbar? Die Antwort: Die Server melden Timeouts. Die Antwort auf die zweite Warum-Frage lautet: Weil die Server überlastet waren und den Traffic nicht verkraftet haben. Warum? Weil es zu wenig Server gab, um alle Anfragen abzuarbeiten. Warum? Weil bei der Planung mögliche Lastspitzen nicht berücksichtig wurden.
Das Beispiel zeigt, wie durch penetrantes Weiterfragen das grundlegende Problem deutlich wird. Auf dieser Basis lassen sich wirkungsvolle Verbesserungen aber auch gänzlich neue Lösungen konzipieren. Die Analyse von Serverausfällen führte beispielsweise zur Erfindung des Auto Scalings: Je nach Last für den Webseite, installiert und deinstalliert Auto Scaling automatisch Webserver.
Wer wagt, gewinnt
Der Ansatz, Produkte mit der Hartnäckigkeit eines Ingenieurs über Jahrzehnte hinweg immer weiter zu verbessern und Neuerungen erst dann auf den Markt zu bringen, wenn allerhöchste Qualitätsmassstäbe daran angelegt werden können, hat Unternehmen und ganzen Nationen grosses Wachstum beschert. Angesichts immer rasanterer Entwicklungszyklen birgt dieser Weg allerdings einige Risiken. Um sich vom Wettbewerb abzusetzen, müssen Unternehmen heute zur Tat schreiten, wenn weiterhin Unwägbarkeiten bestehen. Flexibilität heute – mit dem Risiko kleiner finanzieller Verluste – ist in Summe jedenfalls weniger teuer, als in einer unbestimmten Zukunft jegliche Unwägbarkeit aus dem Weg geräumt zu haben.
Eine neue Fehlerkultur leben
Wenn sich Unternehmen – etwa im Rahmen einer Digitalisierungsinitiative – neu erfinden, muss dafür auch die Fehlerkultur weiterentwickelt werden. Dazu gehört, sich und den Mitarbeitern Fehler zuzugestehen. Wer um seine Karriere fürchten muss, weil er Entscheidungen trifft und ihm dabei Fehleinschätzungen unterlaufen, wird im Zweifelsfall den schlechten Status Quo gegen die Interessen des Unternehmens aufrechterhalten.
Damit ein solcher Wandel gelingt, sollten Führungskräfte eine Kultur des Experimentierens und Lernens etablieren und für deren Umsetzung sorgen – vom Vorstand bis zum einzelnen Mitarbeiter. In einer agilen Welt müssen Firmen flexibler werden und ihre Einstellungen zu Fehlern überdenken: Sie sind unvermeidlich können aber – mit den richtigen Methoden analysiert – den Weg zu neuen, verbesserten Services und Produkten bereiten. (AWS/mc)