Information Systems Audit and Control Association Messung von Softwarequalität

Ordnungsmerkmale

erschienen in: <kes> 2004#2, Seite 67

Rubrik: ISACA informiert

Zusammenfassung: Eine alte Physikerweisheit besagt: Was wir nicht messen, können wir auch nicht verstehen. Zur Einschätzung von Zuverlässigkeit, Verfügbarkeit und Robustheit sind Metriken auch in der praktischen Prüfung von Anwendungsprogrammen gefragt.

Die Anforderung an die Datenqualität nimmt in der betrieblichen Praxis einen immer höheren Stellenwert ein. Als praktisches Beispiel können gegenwärtig der Aufbau von Daten zur Bestimmung von Ausfallwahrscheinlichkeiten des Kreditgeschäftes (Basel II) oder die Risikobewertung von Handelsgeschäften über die Methode der historischen Simulation (MaH) genannt werden.

Die notwendige Datenqualität wird jedoch nur dann erreicht, wenn die korrespondierenden Anwendungsprogramme mit der entsprechenden Zuverlässigkeit, Verfügbarkeit und Robustheit ausgestattet sind. Um diese Eigenschaften der Anwendungsprogramme zu identifizieren und eine Fehlerwahrscheinlichkeit zu erkennen, bietet sich die Messung über Softwaremetriken an.

In der Lehre werden schwerpunktmäßig zwei Ansätze hervorgehoben: Es handelt sich um die Softwaremetriken nach Halstead (Messung der textuellen Komplexität) zur Bestimmung des Aufwands bei Programm-Inspektionen und des Programmverständnisses bei Wartungsvorgängen sowie zweitens nach McCabe (Messung der strukturellen Komplexität). Trotz ihrer Entstehungsgeschichte bereits in den 70er-Jahren des 20. Jahrhunderts haben diese Softwaremetriken ihren Nutzen nicht verloren. Im Gegenteil: Die Vorteile von Softwaremetriken sind die Vergleichbarkeit von Anwendungsprogrammen in ihren Qualitätsausprägungen und die Notwendigkeit zur Verschaffung von Transparenz im Wege einer ausreichenden informationstechnischen Dokumentation.

Die informationstechnische Dokumentation kann man grundsätzlich in Gestalt von Datenflussplan, Programmablaufplan, Struktogramm, Pseudocode, Programmorganisationsplan, Baumdiagramm, Kontrollflussdiagramm oder Entscheidungstabelle entwickeln. Zunehmend werden auch Repository-Systeme (bspw. Rochade) in den Softwareentwicklungsprozess aktiv eingebunden. In der prüferischen Praxis wurden effektive Erfahrungen mit dem Entwicklungswerkzeug Easycode V7 für Cobol nach McCabe gewonnen. Daneben wurde auch ein individuelles Prüfwerkzeug aus der internationalen Projektarbeit herangezogen. Dieses für Cobol und Assembler verfügbare Prüfwerkzeug dokumentiert ein "Scoring" mit den nachfolgendd beschriebenen Ausprägungen.

Komplexitätsmetriken sind ausgewählte relationale Maße für die Programmkomplexität auf der Skala von 0 bis 1. Je niedriger der Wert, desto geringer die Komplexität:

0,0–0,2 "keine" Komplexität
0,2–0,4 geringe Komplexität
0,4–0,6 mäßige Komplexität
0,6–0,8 hohe Komplexität
0,8–1,0 sehr hohe Komplexität

Ein individuelles Merkmal zur Berechnung der Komplexität wird mit dem Datenzugriff nach folgender Funktion bestimmt: Datenzugriff = 1 - (Anzahl Dateien + Anzahl Datenbanken) / (Anzahl Dateneingaben + Anzahl Datenausgaben + Anzahl Datenbankzugriffe)

Qualitätsmetriken sind ausgewählte relationale Maße für die Programmqualität auf der Skala von 0 bis 1. Je höher der Wert, desto besser die Qualität:

1,0–0,8 Spitzenqualität
0,8–0,6 gute Qualität
0,6–0,4 ausreichende Qualität
0,4–0,2 schlechte Qualität
0,2–0,0 "keine" Qualität

Ein Merkmal zur Berechnung der Qualität wird mit der Lesbarkeit nach folgender Funktion bestimmt: Lesbarkeit = 1 - (Anzahl Kommentarzeilen x 4) / (Anzahl gesamter Source-Code-Zeilen)

Die Ergebnisse werden wesentlich bestimmt vom Ausgangsstatus des geprüften Anwendungsprogramms. Das bedeutet, zu häufige Änderungen eines Quellprogramms beeinflussen das Ergebnis der Softwaremetriken negativ.

Die praktischen Erfahrungen haben dabei gezeigt, dass es sich lohnt das "theoretische" Thema der Softwaremetriken in die Prüfung von Anwendungsprogrammen aktiv einzubinden. (Bernd Wojtyna)

Weitere Informationen

ISACA German Chapter e. V.
Eichenstrasse 7
46535 Dinslaken
[externer Link] www.isaca.de

Ingo Struckmeyer
Vorstand Publikationen
Tel.: +49 4106 704-2336
E-Mail: Publikationen@isaca.de

Bernd Wojtyna
Vorstand Facharbeit
Tel.: +49 251 288-4253
E-Mail: Facharbeit@isaca.de