Erkunden von Continuous Quality
Continuous Quality ist eine der acht Funktionen in der DevOps-Taxonomie.
Gründe für die Notwendigkeit von Continuous Quality
Sehen wir uns anhand eines Beispiels an, warum Qualität und Continuous Quality so wichtig sind.
Japan hat ein strenges Qualitätssicherungsprogramm eingeführt, das auch Einfluss auf seine Automobilhersteller hat. Aufgrund des Programms erlangten sie den Ruf, hocheffiziente und zuverlässige Fahrzeuge zu produzieren, wodurch sie sich von ihren Mitbewerbern absetzten.
Durch die Abgrenzung mit höherwertigen Produkten konnten die japanischen Automobilhersteller Innovationen in den Bereichen Kraftstoffeffizienz, Sicherheit und Produktionsprozesse entwickeln. Außerdem sanken die Kosten aufgrund der geringeren Fehlerraten, die sich aus der höheren Qualität ergaben. Ihre Mitbewerber hatten keine andere Wahl, als aufzuschließen.
Warum müssen Sie also Qualität liefern?
- Um Produkte verkaufen zu können.
- Um die Kosten zu senken.
- Um sich von den Mitbewerbern abzuheben.
Die wichtigsten Vorteile von Continuous Quality umfassen Folgendes:
- Eine qualitätsorientierte Denkweise, die eine gemeinsame Verantwortung für die Qualität fördert.
- Weniger Ausschuss durch häufige Überarbeitung aufgrund von Fehlern.
- Weniger technische Schulden aufgrund fehlender Qualitätsanforderungen, die sich mit der Zeit ansammeln.
- Höhere Kundenzufriedenheit.
- Weniger Vorfälle, die den Geschäftsbetrieb stören.
Wenn Sie sich im Entwicklungszyklus so früh wie möglich auf die Qualität konzentrieren, sparen Sie viel Zeit und Aufwand.
Je länger es dauert, bis der Code zusammengeführt wird, und je später die Probleme gefunden werden, desto kostspieliger ist die Problembehebung. Schauen wir uns die Rendite an:
- Es kostet das 5-fache, wenn ein Fehler in der Entwicklungsphase gefunden wird.
- Es kostet das 10-fache, wenn ein Fehler bei den Integrationstests gefunden wird.
- Es kostet das 15-fache, wenn ein Fehler bei den Benutzerakzeptanztests gefunden wird.
- Es kostet das 30-fache, wenn ein Fehler nach der Produktfreigabe gefunden wird.
Die Moral von der Geschichte ist, früher in Qualität zu investieren!
Fördern einer Qualitätskultur mit Continuous Quality
Continuous Quality zielt darauf ab, eine Qualitätskultur zu fördern, damit Teams die folgenden Aktionen ausführen können:
- Gestalten von hochwertigen Benutzeroberflächen
- Entwickeln von Features, die den zeitlichen Anforderungen des Markts entsprechen
- Aktivieren der Eigenschaften einer Anwendung, die schneller einen Mehrwert liefern, als sie technische Schulden erzeugen
Es ist auch wichtig, sich vor der falschen Annahme zu hüten, dass die Qualität umso besser wird, je mehr Fehler wir finden und beheben.
Wenn wir keine Fehler erzeugen würden, müssten wir auch keine Fehler finden. Aber wir sind Menschen, und wir werden Fehler machen und Bugs erzeugen. Wir sollten uns von dem Glauben verabschieden, dass wir durch das Finden der Fehler, die wir selbst erzeugt haben, die Qualität verbessern.
Stellen Sie sich die Frage: Wer erzeugt Fehler? Der Produkteigentümer, der Autor, der Designer, der Architekt, der Programmierer, der Tester ... eigentlich jeder.
Neben der Förderung einer Qualitätskultur geht es bei Continuous Quality auch um die Mentalität – die Leidenschaft zu lernen und jeden Tag unser Bestes zu geben, um einen größeren Unterschied in der Welt zu machen.
Eine Continuous Quality-Mentalität:
- Fördert Wachstum und Innovation und schafft die Kultur, die qualitätsorientiertes Verhalten ermöglicht und unterstützt.
- Weiß, dass Qualität integriert ist und nicht „eingetestet“ werden kann.
- Priorisiert Qualität gegenüber neuen Funktionen.
- Befürwortet Teamarbeit.
- Übernimmt die Verantwortung für die Leistungen.
- Verschiebt das Testen seitlich.
Wechsel von der Qualitätssicherung zu Continuous Quality
Es ist ein bedeutender Paradigmenwechsel, von der herkömmlichen Qualitätssicherung auf Continuous Quality umzusteigen. In der folgenden Tabelle werden die Unterschiede zwischen den beiden veranschaulicht:
Herkömmliche Qualitätssicherung | Continuous Quality | |
---|---|---|
Hintergründe | Unterbrechen des Systems | Verbessern des Systems |
Was | Überprüfen der Funktionalität | Verstehen des Systems |
Wer | Verantwortung des Testers | Gesamtes Team ist für die Qualität verantwortlich |
When | Testen am Ende | Kontinuierliches Testen |
Where | QA-Phase | Überall |
Wie | Finden von Problemen | Verhindern von Problemen |
Ergebnis | Mindestqualität | Erhöhen der Qualität |
Berücksichtigen der Herausforderungen und Risiken von Continuous Quality
Kontinuierliche Qualität | Herausforderungen und Risiken |
---|---|
Organisatorische Silos und herkömmliche Top-Down-Verwaltungsstrukturen können die Akzeptanzraten beeinträchtigen. Diese Herausforderungen können nur überwunden werden, wenn der Organisationsreifegrad und der notwendige Kulturwandel in der gesamten Organisation zum Tragen kommen und die DevOps-Praktiken und -Projekte reifen. | |
Continuous Quality erfordert die Einbindung aller Projektbeteiligten und die Möglichkeit zum Pushback. Das Fehlen klar definierter Ziele und die Angst vor dem Unbekannten können ebenfalls zu Pushbacks führen. Die Unterstützung durch die Führungsebene ist entscheidend für den Erfolg, wenn es darum geht, eine Continuous Quality-Mentalität in der gesamten Organisation durchzusetzen. | |
Die Verwendung von Continuous Quality in der Softwareentwicklung erfordert Änderungen an den Rollenverantwortlichkeiten und der Organisationskultur. Diese Änderungen erfordern beträchtliche Investitionen und Zeit, was sich auf Zeitpläne auswirkt und zu einer Abnahme der Produktivität führt, bevor Expertenlevel erreicht werden. Dadurch erhöht sich aber auch die Qualität Ihrer digitalen Systeme. | |
Tools und Technologien ermöglichen Continuous Quality, aber Sie können nicht einfach Technologien auf ein erkanntes Problem anwenden und hoffen, dass es damit gelöst wird. Auch wenn Tools Prozesse automatisieren und vereinfachen, erfordert Continuous Quality eine Änderung der Organisationskultur. Wenn Sie keinen eigenen Prozess entwickelt haben, sollten Sie hoffen, dass der Prozess des Anbieters für Sie geeignet ist. | |
Continuous Quality kann durch neue Modelle der Zusammenarbeit und Kommunikation sowie durch die Förderung einer gemeinsamen Qualitätsverantwortung zu einem Hebel für einen umfassenden Organisationswandel werden. Wenn der Fokus jedoch nur technisch auf Continuous Integration und Tests liegt, wird die Organisation nicht die erhofften Vorteile nutzen können. | |
Die Messung ist wichtig, aber ein enger Fokus auf eine einzige Qualitätsmetrik kann Mitarbeiter dazu verleiten, die Metrik auf Kosten anderer Unternehmensziele oder sogar der Kundenzufriedenheit zu verbessern. Wenn die Mitarbeiter einer Organisation nicht wissen, was Continuous Quality für sie bedeutet, können sie mehrere Fehlstarts erleben, während sie es herausfinden. Und ein Ausbleiben frühzeitiger Erfolge könnte Organisationen davon abhalten, die vorteilhaften kulturellen und auf Zusammenarbeit ausgerichteten Änderungen zu verfolgen, die Continuous Quality bieten kann. |