22/05/2022
Zero bugs - möglich oder nicht?
Wir haben mit Beginn unseres Projektes vor 3 Jahren 🚀 eine Zero Bug Policy eingeführt, mit dem Ziel technische Schulden nicht aufkommen zu lassen und um eine nachhaltige Softwareentwicklung über Jahre zu garantieren.
Und es war aus unserer Sicht eine sehr gute Entscheidung!
𝗪𝗶𝗲 𝘄𝗶𝗿𝗱 𝗱𝗮𝘀 𝗴𝗲𝗹𝗲𝗯𝘁?
Tauchen Fehler aus dem Betrieb auf, werden sie intern an das entsprechende Team weitergeleitet.
Die Verantwortung zur Behandlung von Fehlern (Bugs) an unserer Online-Plattform liegt dann direkt in den Entwicklungsteams.
Ein Micro-Management ist nicht nötig, denn man kann darauf vertrauen, dass sich Team darum umgehend kümmert und in schweren Fällen schnelle Rücksprache hält.
Damit das Team lernen kann, war es wichtig, dass die Prioritäten, nach denen sie agieren sollen, vom Management und gegenüber dem Kunden klar kommuniziert und gelebt werden.
𝗨𝗻𝘀𝗲𝗿𝗲 𝗣𝗿𝗶𝗼𝗿𝗶ä𝘁𝗲𝗻
𝟭. CI/CD Pipelines müssen stabil laufen - Es muss immer gewährleistet sein, dass der Build - von der Programmierung bis zur lauffähigen Anwendung - mit samt seiner automatischen Tests läuft.
2. Environment - Testumgebungen und Staging-Systeme müssen immer laufen und aktuelle Versionsstände bereithalten. Können wir nicht beweisen, dass unsere Änderungen lauffähig sind, kümmern wir uns erst um die Infrastruktur.
3. Bugs - Fehler aus dem Betrieb werden mit der höchsten Priorität im Team betrachtet, der Impact auf den User eingeschätzt und es wird überlegt wie (schnell) man mit diesem Fehler umgehen soll.
4. Features - Sind 1-3 stabil können wir uns auf das konzentrieren, das den eigentlich Value und uns besonders Spaß macht: Neuentwicklungen an der Software!
Man sollte eine Zero Bug Policy nicht mit falschem Aktionismus verwechseln alles stehen und liegen zu lassen und sofort Hotfixes zu bauen, wenn ein Bug aus dem Betrieb das Team erreicht.
Es geht viel mehr darum, dass das Team lernt sich so zu organisieren, dass sie trotz ihrer Planung und Sprintziele auch spontan eine bedachte Analyse+Einschätzung von Fehlern vornehmen können und diese auch so beheben, dass auch der entsprechende automatische Testfall dazu nachgezogen werden kann.