Skip to main content

Jede Organisation auf der Welt betreibt Qualitätsengineering, ob sie es nun weiß oder nicht. Allein das Schaffen eines Produkts oder einer Dienstleistung bedeutet, sich mit der Herausforderung auseinanderzusetzen, hohe Qualität zu liefern. Die Missachtung von Qualität hat fast immer zu katastrophalen Ergebnissen geführt. 

Tatsächlich beliefen sich allein in den USA die Kosten für schlechte Softwarequalität im Jahr 2018 auf 2,8 Billionen US-Dollar.

Jeder ist auf der Suche nach dem heiligen Gral für qualitativ hochwertige Produkte und Dienstleistungen: mehr Kunden und Wachstum, geringere Kosten und gesteigerte Gewinnmargen. Aus dieser Suche, die längst nicht abgeschlossen ist, entstand die Disziplin des Qualitätsengineerings.

Want more from The CTO Club?

Create a free account to finish this piece and join a community of CTOs and engineering leaders sharing real-world frameworks, tools, and insights for designing, deploying, and scaling AI-driven technology.

This field is for validation purposes and should be left unchanged.
Name*

Qualitätsengineering ist eine Sammlung von Methoden, Prozessen und Prinzipien, die Organisationen helfen, ihre Geschäftsprozesse zu verbessern, um ein bestimmtes Qualitätsniveau für ihre Produkte oder Dienstleistungen zu erreichen. Als kluge Quality Assurance Fachkraft wirst du die zirkuläre Definition des Begriffs Qualität bemerkt haben, was uns zur nächsten Frage bringt:

Was ist Qualität? Welche Aspekte hat Qualität?

Qualität lässt sich nicht einfach definieren, da sie mehrere subjektive Aspekte hat. Tatsächlich hat der Philosoph und Autor Robert Pirsig ein Buch über Qualität geschrieben: „Zen und die Kunst ein Motorrad zu warten“, in dem er seine Metaphysik der Qualität darlegte.

Interessanterweise wurde sein Buch von 121 Verlagen abgelehnt, die es für minderwertig hielten. Pirsig blieb jedoch beharrlich, und Verlag Nummer 122 war der Ansicht: „Dieses Buch ist unfassbar brillant, vermutlich ein echtes Meisterwerk...“, veröffentlichte es – und es verkaufte sich anschließend über 5 Millionen Mal.

Pirsig hat wohl recht, wenn er sagt, dass Qualität schwer zu definieren ist, aber wir alle verstehen sie intuitiv. Doch als Ingenieure können und wollen wir uns nicht damit zufriedengeben. Deshalb versuchen wir, eine Liste von Qualitätsaspekten aufzustellen.

Aspekte von Qualität.


Weltweit setzen Unternehmen in der Fertigungsindustrie verschiedene Qualitätsstandards und -ansätze ein, um Qualität besser zu standardisieren, etwa ISO 9001, Six Sigma und Total Quality Management.

Qualitätsengineering in der Softwareentwicklung

Die Softwarebranche hat erkannt, dass der durch Qualitätssicherung und Qualitätskontrolle vorgeschriebene korrigierende Ansatz – Fehler nachträglich zu finden und zu beheben – an seine Grenzen gestoßen ist.

Qualitätsengineering bietet einen Weg nach vorn mit einem proaktiven, vorbeugenden Ansatz, um Qualitätssysteme zu implementieren, die das Qualitätsproblem in der Softwareentwicklung allgemein und in der Produktentwicklung im Besonderen lösen.

Abgesehen von der Philosophie „Qualität liegt im Auge des Betrachters“ beschäftigt sich Qualitätsengineering in der Softwaretechnik mit zwei Aspekten, die eine hohe Qualität sicherstellen:

Funktionale Qualität, die sich mit den funktionalen Aspekten eines Softwareprodukts oder einer Softwarelösung befasst: Erfüllt sie die erwarteten Anforderungen? Entspricht sie der Entwurfsspezifikation?

Strukturelle Qualität, die sich mit den nicht-funktionalen Aspekten der Software beschäftigt: Ist sie robust? Sicher? Hochverfügbar? Einfach zu warten? 

Upgrade your inbox with more tech leadership wisdom for delivering better software and systems.

Upgrade your inbox with more tech leadership wisdom for delivering better software and systems.

This field is for validation purposes and should be left unchanged.
Name*

Die Entwicklung & der Lebenszyklus von Qualitätsengineering in der Softwareentwicklung

Das Software-Qualitätsengineering erlebt eine Renaissance, denn Organisationen setzen alles daran, Fehler so früh wie möglich zu verhindern oder zu erkennen.

Dies hat zu einer ganzen Reihe neuer QE-Tools und Methoden geführt, darunter Testautomatisierung, Shift-Left-Testing, DevOps, DevSecOps, Continuous Integration und Continuous Deployment (CI/CD), SDET, Testgetriebene Entwicklung (TDD) und verhaltensorientierte Entwicklung (BDD), Risikomanagement und Künstliche Intelligenz.

All dies zusammen ergibt einen neuen Ansatz des Qualitätsengineerings.

Der Qualitätsengineering-Lebenszyklus.

Die Rolle von Daten und Kennzahlen im Qualitätsengineering

Edwards Deming, Qualitätsmanagement-Guru, half dabei, die Fertigungsprozesse in Japan in den 80er- und 90er-Jahren zu einem weltweit führenden Vorbild zu machen.

Es ist allgemein anerkannt, dass Daten und Kennzahlen für Qualität von Bedeutung sind. Sie sind tatsächlich einer der wichtigsten Wege, um festzustellen, ob Ihre Qualitätsengineering-Initiative Fuß fasst und funktioniert. Aber von welchen Kennzahlen sprechen wir eigentlich?

Den Wandel mit Kennzahlen herbeizuführen, ist kein triviales Unterfangen.

Heutzutage ist es möglich, so viele Daten wie nie zuvor zu erfassen – oft mehr, als wir verarbeiten können. Es ist leicht, in diesem wahren Ozean zu versinken. Daher ist es wichtig, herauszufinden, welche Daten und Messgrößen relevant sind. Um The Rt. Hon. Rumsfeld zu paraphrasieren: „Hüten Sie sich vor unbekannten Unbekannten!“

Ich lehne mich jetzt mal aus dem Fenster und sage, dass Kennzahlen, die Endergebnisse und Resultate messen, am aussagekräftigsten sind. Schließlich müssen Qualitätsengineering-Initiativen zu einem stärkeren und besseren Unternehmen führen. Dazu gehören Kennzahlen wie:

  • Produktabsatzmenge
  • Kundenzufriedenheit – insbesondere Kundenempfehlungen an andere
  • Anzahl und Art der Supportanfragen

Der Weg zu diesen Kennzahlen kann jedoch von ein paar Monaten bis zu einigen Jahren nach der Einführung dauern, und so viel Zeit hat wirklich niemand!

Um die Qualitätsverbesserung schon während des laufenden Prozesses im Blick zu behalten, setzen wir Kennzahlen wie folgende ein:

  • Qualitätskosten
  • Fehlerkennzahlen
  • Testabdeckung
  • Leistungs- und Release-Kennzahlen
  • Produktivitäts-, Effizienz- und Effektivitätskennzahlen.

Letztendlich sollten alle Daten und Kennzahlen dazu beitragen, dass Führungsverantwortliche im Qualitätsengineering Risiken frühzeitig erkennen, Fehler und technische Schulden minimieren sowie Agilität und Time-to-Market steigern können.

Warum Qualitätsengineering wichtig ist

WAHRE GESCHICHTE: Zu Beginn meiner Karriere leitete ich ein Softwareteam, das Lösungen für Kunden entwickelte. An einem schönen Tag nahm ich an einem Vorgespräch bei einem potenziellen Kunden teil – nennen wir ihn „Frustrierte Finanzberater GmbH“ –, der eine Zeiterfassungs- und Ausgaben-Abrechnungs-Webanwendung wünschte. Frustrierte beschäftigte über 1.000 Berater für verschiedene Kunden.

Ich traf mich mit dem CTO des Unternehmens. Er erklärte mir, dass sie von ihrer bestehenden maßgeschneiderten Zeiterfassungslösung, an der jemand neun Monate gearbeitet hatte, die Nase voll hatten, weil das System einige eigenartige Verhaltensweisen zeigte. Immer wenn ein Mitarbeiter auf einen Link klickte, um einen Zeiteintrag auszufüllen, erschien ein Formular, das folgendermaßen aussah:

Als kluger QA-Ingenieur ist Ihnen das Problem von Grand-Canyon-Ausmaßen in diesem Formular sicher sofort aufgefallen.

Warum um alles in der Welt sollte ein Nutzer seinen eigenen Namen aus einer Mitarbeiterliste auswählen müssen!?

Viele Nutzer, die eigentlich Besseres zu tun hatten, vergaßen, ihren eigenen Namen aus der Liste auszuwählen, und ließen die Vorauswahl auf Amy Adams, die unglücklicherweise als erste im alphabetisch sortierten Verzeichnis auftauchte.

Doch es kam noch besser. Die arme Amy Adams war mit dieser Situation so unzufrieden, dass das Problem gelöst wurde, indem man eine fiktive Mitarbeiterin namens A. Aardvark erschuf! Kein Scherz!

So kam es, dass jede Woche die Abrechnungsleiterin feststellte, dass A. Aardvark plötzlich mit sage und schreibe 300 bis 500 gebuchten Stunden an die Spitze der Produktivitätsstatistik aufstieg! Die arme Frau musste Woche für Woche einen halben Tag aufwenden, um nach Mitarbeitern zu suchen, die diesen Fehler gemacht hatten, und sie dazu zu bringen, ihn zu korrigieren.

Und so wurde A. Aardvark für mehrere Monate in Folge zum fleißigsten Mitarbeiter des Monats – mit einer Produktivität von 6x bis 10x! Ehrlich, ich hätte mir das gar nicht ausdenken können…

Symbolfoto der fleißigen Mitarbeiterin des Monats, A. Aardvark.

Jedenfalls hat die Geschichte für die Mitarbeitenden von Frustrierte ein schönes Ende: Nach ein paar Monaten entwickelten wir eine hochmoderne Zeiterfassungsanwendung, bei der die Angestellten nicht mehr ihren eigenen Namen aus einer Liste auswählen mussten. Und sie lebten fortan glücklicher!

Und da haben Sie es, Leute, deshalb ist Qualitätsengineering so wichtig.

Was macht ein Qualitätsingenieur?

Softwarequalitätsingenieure sind ein integraler Bestandteil des Software-Design- und Qualitätsteams. Sie überwachen den Softwareentwicklungsprozess von der Ideenfindung bis zur Umsetzung, um sicherzustellen, dass die Software festgelegte Qualitätsstandards erfüllt.

Zertifizierte Qualitätsingenieure wenden Methoden der kontinuierlichen Verbesserung und verschiedene Werkzeuge der Qualitätskontrolle an, um Qualität zu gewährleisten. Maßnahmen wie Korrekturmaßnahmen und vorbeugende Maßnahmen werden eingesetzt, um Qualitätslücken zu beseitigen.

Um den vielfältigen und anspruchsvollen Anforderungen heutiger Softwareunternehmen gerecht zu werden, übernehmen Softwarequalitätsingenieure verschiedene Rollen, darunter Design, SDET, Testen und mehr. In der Regel ist dies eine anspruchsvolle Position, für die mehrere Fähigkeiten erforderlich sind — darunter Problemlösung, Fehlersuche, statistische Prozesskontrolle, Softwaretests, Automatisierung und Qualitätskontrolle.

Die American Society for Quality (ASQ) bietet die Certified Software Quality Engineer Zertifizierung für Qualitätsingenieure an.

Melden Sie sich für weitere Einblicke an

Der Wandel von Qualitätskontrolle und Qualitätssicherung hin zu Qualitätsengineering ist in vollem Gange. Das Qualitätsengineering hat die Art und Weise, wie Software entwickelt wird, verändert und entwickelt sich stetig weiter.

Steigern Sie das Wachstum Ihres SaaS und Ihre Führungskompetenzen. Abonnieren Sie unseren Newsletter für die neuesten Einblicke für CTOs und angehende Tech-Führungskräfte. Wir helfen Ihnen, intelligenter zu skalieren und stärker zu führen — mit Leitfäden, Ressourcen und Strategien von Top-Expert:innen!