Gestern beim Bäcker fiel mir dies hier auf:
Dort werden mehrmals täglich Brötchen, Croissants usw. direkt in der Filiale gebacken. Unten am Ofen sind ein paar Bilder: Links ein grüner Streifen mit der Überschrift “Echter Genuss: Verkaufen!” Darunter sieht man eine gut gebackene Brezel, ein Croissant usw.
Rechts daneben ist ein roter Streifen mit der Überschrift “Schlechter Genuss: Nicht verkaufen! Jeder Mitarbeiter darf aussortieren!” Darunter sieht man z.B. ein zu dunkel gebackenes Croissant und eines, das zu hell geraten ist.
Diese Bäckerei(kette) arbeitet offensichtlich in kleinen Batches – es werden mehrmals täglich kleine Mengen gebacken. Man sieht auch das Konzept “Standard Work” aus dem Lean Thinking. Den Mitarbeitern wird klar kommuniziert, was ein gutes und was ein schlechtes Produkt ist. Sicher gibt es auch irgendwo eine Anleitung, wie die einzelnen Produkte zu backen sind (Temperatur, Backzeit, was darf in einem Backvorgang kombiniert werden,….)
Der Hinweis “Jeder Mitarbeiter darf aussortieren” erinnert an “Stop the line” - das Toyota-Prinzip, nach dem man bei einem Problem lieber die Produktion anhält, als ein fehlerhaftes Teil zu verbauen. Wenn trotz aller Anstrengungen doch mal ein fehlerhaftes Teil auftaucht, ist jede/r ermächtigt, etwas zu tun. Die Verantwortung für Qualität wird nicht auf denjenigen abgeladen, der den Ofen angestellt hat. Es wird auch nicht jedesmal die Filialleiterin zur “Abnahme” der fertigen Gebäcke gerufen. Weil die Kriterien einfach und klar kommuniziert sind, kann jede/r im Sinne des Kunden handeln und Schlimmeres verhüten.
Was für Brötchen funktioniert, funktioniert auch in der Softwareentwicklung: Kriterien dafür, ob etwas gut gelungen und “fertig für den nächsten Schritt” ist, sollten für alle transparent und überprüfbar sein. Die Überprüfung sollte nicht unbedingt nur auf festgelegte Synchronisationspunkte (“Quality Gates”) beschränkt werden.
Wann ist eine User Story “fertig entwickelt”? Wenn alle Akzeptanztests laufen, wenn die Seitenladezeit mit realistischen Daten unter 500ms liegt, und wenn sie dem Fachbereich demonstriert wurde.
Wann läuft der Webshop stabil? Wenn 99% der Requests innerhalb von 500mms beantwortet werden.
Wann ist ein Projektvorhaben fertig zum Start der Entwicklung? Wenn wir den Geschäftsnutzen klar herausgearbeitet haben und die Verzögerungskosten geschätzt haben und ausreichende Entwicklungskapazitäten bereit stehen.
Das sind nur Beispiele, Sie müssen eigene Qualitätskriterien für Ihren Software-Lieferprozess finden. Dafür braucht es Einiges an Diskussion, und es ist nicht ganz so einfach wie die Frage, ob ein Croissant zu dunkel geworden ist – aber es lohnt sich.
Matthias Berth