Qualitätssicherung für Software

Nahezu jedes Produkt das heutzutage industriell gefertigt wird, unterliegt nach der Her­stellung einer Qualitätssicherung. Ein seriengefertigter Neuwagen wird nach Produktion auf die Anforderung der Fahrtüchtigkeit überprüft. Wird diese Anforderung nicht erfüllt, so müssen Maßnahmen getroffen werden, um die Fahrtüchtigkeit wiederherzustellen.

Fast identisch verhält es sich mit einer immateriellen Software, für welche analog eine Qualitätssicherung für Software notwendig ist. Gleich dem industriellen Gut bestehen klare Anforderungen, die nach Entwicklung oder Korrektur auf ihre korrekten Eigenschaften überprüft werden müssen. Diese Eigen­schaften der Anwendung werden auch als Qualitätsmerkmale bezeichnet.[1]

Dazu gehören nach ISO 9126 die Faktoren Funktionalität, Zuverlässigkeit, Benutzbarkeit, Effizienz, Änderbarkeit und Übertragbarkeit.[2]

Glossar - Qualitätssicherung für Software

Qualitätsmerkmale

Die nachfolgende Übersicht untergliedert die Qualitätsmerkmale anhand ISO 9126 genauer

Funktionalität
Angemessenheit
Richtigkeit
Interoperabilität
Ordnungsmäßigkeit
Sicherheit
Effizienz
Verbrauchsverhalten
Zeitverhalten
Benutzbarkeit
Verständlichkeit
Erlernbarkeit
Bedienbarkeit
Änderbarkeit
Analysierbarkeit
Modifizierbarkeit
Stabilität
Prüfbarkeit
Zuverlässigkeit
Reife
Fehlertoleranz
Wiederherstellbarkeit
Übertragbarkeit
Anpassbarkeit
Installierbarkeit
Austauschbarkeit

In der Praxis liegt der Fokus der Qualitätssicherung für Software meist auf dem Qualitätsmerkmal Funktionalität. Bzgl. einer Anwendung lassen sich somit die unterschiedlichsten Anforderungen definieren.

Eine WebApp für das Smartphone soll es beispielsweise dem Nutzer ermöglichen Standortdaten zu einem Geschäft auf einer interaktiven Karte anzuzeigen. Somit ließe sich z.B. im Rahmen einer Qualitätssicherung für Software eine Anforderung an die Funktionalität definieren, anhand derer das Geschäft mittels Marker visuell am zugehörigen Standort dem Nutzer auf der Karte gekennzeichnet werden soll.

Dazu soll der visualisierte Standort auch der tatsächlichen GPS Position entsprechen. Ein Qualitätsmerkmal hinsichtlich Richtigkeit könnte also dadurch definiert werden, als dass die gekennzeichnete Position korrekt sein muss.

Das zuvor beschriebene Beispiel beschreibt funktionale Anforderungen, welche im Hinblick auf die Qualitätsmerkmale definiert werden können. Daneben können auch sogenannte nicht-funktionale Anforderungen formuliert werden. Hierbei geht es insbesondere um das Verhalten der Software während des Betriebs.  Eigenschaften wie Antwortzeitverhalten, Lastfestigkeit oder Benutzbarkeit stehen hier im Vordergrund.

Unternehmen legen in der Praxis den Schwerpunkt hinsichtlich nicht-funktionaler Anforderungen meist auf die Themen Last- und Performance-Verhalten einer Software. Im Bereich Webanwendungen müssen vor allem dynamische Webseiten performant ausgeliefert werden. Google beispielsweise lässt das Antwortzeitverhalten bzgl. der Auslieferung einer Website in das Ranking seiner Suchergebnisse einfließen.

Um sowohl funktionale, als auch nicht-funktionale Anforderungen mittels Softwaretests zu verifizieren, greifen große Unternehmen auf spezifische Beratung für Qualitätssicherung zurück.

[1]     Vgl. Spillner, Linz 04 /Softwaretest/ S.10

[2]     Vgl. Wikipedia/Softwarequalität/Beispiel ISO/IEC 9126