In der Technologiewelt werden die Begriffe Qualitätskontrolle und Qualitätssicherung häufig unter dem Kürzel QA/QC zusammengefasst. Der Begriff wird verwendet, als wären QA und QC ein Komplettpaket ohne klare Unterscheidung der Rollen. Es hat sich eingebürgert, den gesamten Prozess der Qualitätsbewertung als QA/QC zu bezeichnen.
Das kann für jemanden, der neu in diesem Bereich ist oder außerhalb davon steht, verwirrend sein, da es hinsichtlich der tatsächlichen Arbeitsaufgaben deutliche Unterschiede zwischen den beiden gibt.
Wenn Sie unsicher sind, worin der Unterschied zwischen Qualitätskontrolle und Qualitätssicherung besteht, ist dies genau das Richtige für Sie. Hier finden Sie eine Aufschlüsselung einiger wichtiger Unterschiede zwischen QA/QC.
Der Hauptunterschied zwischen QA und QC
Es gibt einen grundlegenden Unterschied zwischen QA und QC.
Qualitätssicherung findet während der Entwicklungsphase statt.
während...
Qualitätskontrolle erst nach Abschluss der Entwicklung stattfindet.
QA VS QC
Es gibt fünf Möglichkeiten, die Unterschiede zwischen QA/QC zu betrachten. Diese sind:
- Entwicklungsphase
- Hauptfokus
- Wie sie ihre Arbeit angehen
- Wichtige Fähigkeiten
- Was passiert, wenn Fehler gefunden werden?
Auf jeder dieser Ebenen werden Sie erkennen, wie sich QA/QC voneinander unterscheiden. Am Ende dieses Artikels wissen Sie genau, welche Aufgaben zur Qualitätssicherung und welche zur Qualitätskontrolle gehören.
Entwicklungsphase
Qualitätssicherung
QA beginnt früh im Entwicklungszyklus.
Bestimmte Arten von QA-Tests, wie etwa statische Tests, können durchgeführt werden, bevor die Software vollständig funktionsfähig ist.
Indem sie bereits zu Beginn des Produktionszyklus mit den Entwicklern zusammenarbeiten, können sie sicherstellen, dass Fehler, die am Anfang gemacht werden, nicht zu schwerwiegenden Problemen werden, wenn sich die Entwicklung dem Ende zuneigt. QA-Tests finden in jeder Phase der Entwicklung statt.
Qualitätskontrolle
QC beginnt, sobald die Entwicklung abgeschlossen ist.
QC sorgt dafür, dass das entwickelte Produkt die festgelegten Standards und Spezifikationen erfüllt. Sie sind Produktprüfer und ihr Ziel ist es, die Fehlerquote beim Launch des Produkts für die Öffentlichkeit möglichst gering zu halten.
Hauptfokus
Sowohl Qualitätssicherung als auch Qualitätskontrolle beschäftigen sich mit dem Auffinden von Fehlern und Defekten. Das ist der Grund, warum sie oft gemeinsam als QA/QC bezeichnet werden. Auch wenn sie das gleiche Ziel haben, unterscheiden sich jedoch die Beweggründe für ihre Arbeit.
Qualitätssicherung
Ziel von QA ist es, Fehler und Ineffizienzen im Softwareentwicklungsprozess zu erkennen, vorherzusagen und zu verhindern.
QA-Teams arbeiten oft eng mit Softwareentwicklern zusammen, um auftretende Fehler zu beheben. QA-Analysten beispielsweise arbeiten mit verschiedenen Teams, von Projektmanagern bis hin zu Entwicklungsleitern, um den optimalen Weg für die Entwicklung des Produkts herauszufinden.
QA ist proaktiv.
Qualitätskontrolle
QC konzentriert sich darauf, Fehler und Defekte in der fertigen Software zu finden. Sie stellen sicher, dass weder Entwickler noch QA-Analysten oder QA-Tester etwas übersehen haben.
Qualitätskontrolle ist grundsätzlich ein reaktiver Prozess, da sie zu einem Zeitpunkt innerhalb des Softwarezyklus stattfindet, an dem es zu spät ist, um Entwicklern noch Änderungsvorschläge zu machen.
Wie QA/QC ihre Arbeit angehen
Qualitätssicherung
QA ist ein proaktiver Ansatz zur Identifizierung von Fehlern und Ineffizienzen.
Das QA-Team versucht häufig, Wege zu finden, die Prozesse sowie die Entwicklung und das Testen zu optimieren. QA-Teams nutzen Methoden wie das Capability Maturity Model Integration (CCMI), bei dem ein Unternehmen in mehrere Bereiche unterteilt und jedem Bereich eine Zahl zwischen 1 und 5 zugewiesen wird, die die Reife dieses Bereichs bestimmt.
Durch Ansätze wie das CCMI können QA-Analysten Möglichkeiten zur Effizienzsteigerung und besserer Steuerung der Ergebnisse identifizieren.
Qualitätskontrolle
Durch den reaktiven Ansatz von QC zur Fehlererkennung benutzen sie andere Methoden zur Ausübung ihrer Aufgaben.
QC legt großen Wert auf Gründlichkeit. Sie arbeiten auch mit Wahrscheinlichkeiten. QC verfügt über den sogenannten zulässigen Qualitätsgrenzwert, also den Prozentsatz an Produkten, die die Inspektion nicht bestehen dürfen. Für die meisten Aufgaben sieht der zulässige Qualitätsgrenzwert so aus:
- Kritische Fehler: 0 %
- Große Fehler: 2,5 %
- Kleine Fehler: 4 %
Das bedeutet, dass es die Aufgabe des QC-Teams ist, sicherzustellen, dass keines der Produkte, die freigegeben werden sollen, katastrophal versagt.
Was passiert, wenn QA/QC Fehler finden?
Qualitätssicherung
Wenn ein QA-Tester einen Fehler in der Software entdeckt, dokumentiert er seine Erkenntnisse (einschließlich einer Anleitung zur Reproduktion des Fehlers) und meldet sie dem Entwicklerteam.
Danach behebt das Entwicklerteam das Problem und gibt es zur weiteren Prüfung an die QA zurück. Ein QA-Tester steht in ständigem Kontakt mit der Entwicklung. Dokumentation ist erforderlich, um den Entwicklern mitzuteilen, wo ein Fehler aufgetreten ist und wie er behoben werden kann.
Die größte Sorge eines QA-Testers ist, dass ein Fehler, der in seinem Testbereich lag, in die Produktion gelangt. Sie sind das Puffer zwischen Entwicklung und Produktion.
Qualitätskontrolle
Wenn das QC-Team mit der Fehlersuche beginnt, ist das Produkt fertiggestellt und fast bereit zur Markteinführung.
Das QC-Team sammelt Daten, wie z. B. den Prozentsatz der fehlerhaften Einheiten, und berichtet die Ergebnisse an das Management. Was als Nächstes passiert, hängt von den Ergebnissen ihrer Tests ab.
Wenn die Fehlerquote der Software hoch ist, kann eine Besprechung einberufen werden, um einen Plan zur Verbesserung des Produktionsprozesses zu erstellen (das ist wirklich das Letzte, was ein Qualitätssicherungsteam sich wünscht).
Meistens, wenn das Produkt innerhalb des zulässigen Qualitätsgrenzwerts liegt, bietet das Qualitätskontrollteam allen Kunden mit wiederholten Problemen Vorteile an.
Die Qualitätskontrolle ist oft der Puffer zwischen Produktion und Kunde.
Wichtige Fähigkeiten
Qualitätssicherung
QA-Tester müssen ein solides Verständnis gängiger Programmiersprachen haben. Fünf wichtige Sprachen sind:
- Python
- Java
- C++
- Ruby
- PHP
Außerdem müssen sie wissen, wie sie gängige QA-Tools (wie Selenium) einsetzen können.
Ein QA-Tester muss nachweislich in der Lage sein, Testfälle durchzuführen und seine Erkenntnisse auf verständliche Weise zu dokumentieren. Ein QA-Analyst, der gut im Ausführen von Testfällen ist, muss auch fähig sein, solche selbst zu schreiben.
Da das QA-Team ständig mit den Entwicklern kommuniziert, ist die Fähigkeit der QA-Tester, klar und präzise zu kommunizieren, ebenfalls sehr wichtig.
Qualitätskontrolle
QC-Mitglieder müssen ein fundiertes Verständnis der sieben wichtigsten QC-Strategien haben. Diese Strategien sind:
- Stratifizierung: Trennt Daten, die aus verschiedenen Quellen gesammelt wurden, um Muster sichtbar zu machen.
- Histogramm: Ein gängiges Diagramm zur Darstellung von Häufigkeitsverteilungen.
- Checkliste:
- Ursache-Wirkungs-Diagramm: Organisiert Ideen und erleichtert das Erkennen von Zusammenhängen zwischen möglichen Ursachen.
- Pareto-Diagramm: Priorisiert die Faktoren, die den größten Einfluss auf das Problem haben.
- Streudiagramm: Hilft, die Beziehung zwischen Variablen zu visualisieren.
- Regelkarte: Untersucht die Schwankungen in einem Prozess über einen bestimmten Zeitraum.
Darüber hinaus muss QC in der Lage sein, genaue Datenproben zu erheben, um sicherzustellen, dass das Produkt den zulässigen Qualitätsgrenzwert erfüllt.
Unterschiede verstehen
Beim Testen gibt es viele Begriffe und unterschiedliche Rollen. Manchmal werden Dinge zusammengeworfen, und die Unterscheidungen sind nicht mehr klar erkennbar. Hast du jetzt ein besseres Verständnis der Unterschiede zwischen QA und QC? Schreib es mir in die Kommentare!
