Software-Qualitäts-Management

Ein "Software-Blutbild" zur Qualitätssteuerung

10.04.2008
Von 
Technischer Geschäftsführer der Maiborn Wolff GmbH, München

Fehlerprognosen zeigen Zuverlässigkeit auf

Um die Zuverlässigkeit einer Software zu bewerten, werden die offenen und geschlossenen Fehler auf Komponentenebene angezeigt. So ist ein schnelles Reagieren möglich, um die angestrebte Fehlerzahl von null zu erreichen. Die Fehlerdichte ist die Anzahl der Fehler pro Codeumfang. Sie ist das am besten vergleichbare und belastbare Qualitätsmaß und zeigt Qualitätsbrennpunkte. Erfahrungsgemäß wird eine Komponente, die in allen Projektphasen durchgängig viele Fehler aufwies, voraussichtlich auch im späteren Einsatz Probleme haben - auch wenn es zum Zeitpunkt der Produktion keine offenen Fehler gab und alle zuvor aufgetretenen Fehler behoben wurden. Mit der Kennzahl Fehlerdichte kann so bereits eine Fehlerprognose berechnet werden, bevor die Software in Produktion geht. Ist die Prognose schlecht, sollten zusätzliche Tests oder eine vorgeschaltete Pilotphase die Funktionalität der Software nochmals prüfen.

Kritische Komponenten definieren

Kritikalität kann im Gegensatz zu den anderen Eigenschaften des Modells nicht über integrierte Sensoren gemessen werden, sondern bedarf einer Einschätzung des verantwortlichen Softwarearchitekten. Dennoch ist sie eine zentrale Größe, um die Produktqualität einer gesamten Softwarelösung bewerten und andere Eigenschaften einordnen zu können. Der Softwarearchitekt identifiziert diejenigen Komponenten, die nach fachlichen Gesichtspunkten für das Gesamtsystem besonders relevant oder technisch neu sind, und kategorisiert sie nach ihrer kritischen Bedeutung. Bei einer Auftragsverwaltung in der Automobilindustrie wären kritische Komponenten beispielsweise die Preisberechnung mit ihren komplizierten Währungsumrechnungen, die Baubarkeitsprüfung oder die Fahrzeugkonfiguration. Im Bereich Logistik sind Routenoptimierungen schwierig, während die Kundenverwaltung eher zum Standard gehört. Kritikalität gestattet eine Fokussierung und eine gezielte Steuerung von Qualität.