Software-Qualität

Das Wort Qualität steht für viele verschiedene Aspekte eines Produktes oder einer Dienstleistung. Täglich beschäftigen wir uns mit Qualität, auch wenn wir dieses Wort nicht dazu gebrauchen.

Inhaltsverzeichnis


Auswirkungen von Fehlern

In der Praxis können kleine Fehler grosse Konsequenzen haben:

Die Folgen und Kosten von Fehlern hängen stark von der Art des Einsatzes eines Produktes ab:

Arten von Fehlern

Welche Fehlerarten gibt es? Nachfolgend eine Auswahl:

Normierte Qualitätsmerkmale

Was kann der Kunde erwarten, wenn er Ihnen eine Software (z.B. Webblog oder ein CMS inkl. Styling, JavaScript, PHP und Datenbank) in Auftrag gibt?

 Abb-1: Erwartungen des Kunden an der Software-Qualität

Es gibt eine Norm (DIN/ISO 9126), welche die wichtigsten Qualitätsmerkmale regelt:

  1. Zuverlässigkeit (reliability): Fähigkeit der Software, ihr Leistungsniveau unter festgelegten Bedingungen über einen festgelegten Zeitraum zu bewahren.
  2. Funktionalität (functionality): Vorhandensein von Funktionen mit festgelegten Eigenschaften. Diese Funktionen erfüllen die definierten Anforderungen.
  3. Benutzbarkeit (usability): Der Aufwand, der zur Benutzung erforderlich ist, und individuelle Beurteilung der Benutzung durch eine festgelegte oder vorausgesetzte Benutzergruppe.
  4. Effizienz (efficiency): Das Verhältnis zwischen dem Leistungsniveau der Software und dem Umfang der eingesetzten Betriebsmittel unter festgelegten Bedingungen.
  5. Änderbarkeit (maintainability): Aufwand, der zur Durchführung vorgegebener Änderungen notwendig ist. Änderungen können Korrekturen, Verbesserungen oder Anpassungen an Änderungen der Umgebung, der Anforderungen und der funktionalen Spezifikationen einschließen.
  6. Übertragbarkeit (portability): Eignung der Software, von einer Umgebung in eine andere übertragen zu werden. Umgebung kann organisatorische Umgebung, Hardware- oder Software-Umgebung einschließen.

Testaktivitäten und -planung

Die Testaktivitäten können nicht kurz vor Schluss durchgeführt werden. Das Testen von Software muss geplant sein, nimmt es doch bei grossen Projekten ca. 15%–30% in Anspruch.

 Abb-2: Testaktivitäten und -planung

Es gibt für das Durchführen von Testaktivitäten einige Prinzipien, die sich in der Praxis bewährt haben:



Dynamische Testmethoden

Bei den dynamischen Testmethoden wird die Software gestartet und nach bestimmten Testkriterien durchlaufen. Es gibt einige Grundsätze für die Testfallermittlung. Details zu Testfällen und wie diese erstellt werden finden Sie unter Testbericht und Testprotokoll erstellen.



White-Box-Testmethode

Bei der White-Box-Methode werden die Testfälle mit Kenntnis der internen Strukturen des Testobjekts (Source-Code) entwickelt, d.h. diese Methode kann nur von Entwicklern eingesetzt werden.

Der laufende Test beim Programmieren ist ebenfalls ein White-Box-Test. Die meisten Entwicklungsumgebungen stellen dazu umfangreiche Tools zur Verfügung (DEBUG), es sind aber auch eigenständige Applikationen für White-Box-Tests auf dem Markt erhältlich.

Black-Box-Testmethode

Bei dieser Methode werden die Testfälle aus der vorliegenden Spezifikation (z.B. Pflichtenheft) oder aber aus der Oberflächenstruktur (z.B. Erfassungsmasken, GUI) hergeleitet. Die innere Struktur des Objektes wird nicht berücksichtigt und kann unbekannt sein. Diese Testmethode kann also auch vom Anwender durchgeführt werden.

Diese Methoden können sinnvollerweise auch kombiniert werden.


Quellen: TBZ-Modul 103: Testen und Dokumentieren