 |
 | |  |  | | Beschreibung |  | Die metrikbasierte Qualitätsanalyse von Software-Produkten konzentriert sich wie Inspektionen auf die Begutachtung einer statischen Beschreibung von Software, meist also des Quellcodes, manchmal auch der Entwurfsdokumente.
Ziel ist es, solche Teile des Quellcodes oder des Entwurfs zu identifizieren, die als qualitätskritisch einzustufen sind ( Qualitätsanomalie), so dass qualitätsverbessernde Maßnahmen gezielt eingesetzt werden können. Dies kann entwicklungsbegleitend als Teil eines Qualitätssicherungssystems oder im Nachhinein, etwa bei der Altlasten-Sanierung bestehender Software geschehen.
Eine solche Qualitätseinschätzung kann für Software jeglicher Art von Bedeutung sein, besonders aber wenn erwartet wird, dass die Software eine hohe Lebensdauer haben wird oder viele Änderungen auch nach der Erstinstallation auftreten. Dann kommt es nämlich nicht mehr allein auf die Erfüllung der funktionalen Anforderungen an, sondern zusätzlich muss der interne Aufbau der Software so gestaltet sein, dass er von neuen Entwicklern gut verstanden wird und dass eine spezifische Änderung mit minimalem Aufwand (bei Entwicklung, Test und Integration) verbunden ist.
Die Methode zielt dabei auf große Systeme mit mehr als 106 Quellcodezeilen. Für große Software-Systeme ist eine Qualitätsbeurteilung ein komplexes Problem, weil es für den Einzelnen sehr schwierig ist, überhaupt ein Grundverständnis über die Systemstruktur zu erlangen. Manuelle Methoden können nur noch stichprobenartig durchgeführt werden. Die metrikbasierte Qualitätsanalyse erfolgt werkzeuggestützt und bezieht das gesamte Software-Produkt ein. Allerdings sind die Ergebnisse als Qualitätsanomalien zu verstehen, die manuell nachgeprüft werden müssen. Der entscheidende Vorteil liegt also darin, dass bei großen Systemen eine breite Voruntersuchung automatisch erfolgen kann, während eine genauere manuelle Nachprüfung der identifizierten Schwachstellen besser fokussiert erfolgen kann. Letzteres ist kein schwer wiegender Nachteil, weil die Bestimmung einer Schwachstelle ohnehin eine Überarbeitung nach sich zieht, bei der die Überprüfung der Richtigkeit der Aussage zwangsläufig erfolgt. Weitere Vorteile sind:
- frühestmögliche Resultate: Das Verfahren kann bereits während der Entwicklung auch an unfertigen Produkten eingesetzt werden.
- Objektivität: Die Resultate sind unabhängig von der Person, die eine Messung durchführt.
- Verbesserungspotenzial aufzeigen: eine Interpretation von Messwerten bietet die Möglichkeit, konstruktiv Verbesserungsmöglichkeiten abzuleiten.
Personen (Bewerter), die eine Qualitätsanalyse durchführen, benötigen gute Kenntnisse in Entwurfsprinzipien (evtl. für spezielle Entwurfsmethoden, z.B. Objektorientierung). Ein Bewerter nimmt in diesem Prozess eine Vermittlungsrolle zwischen Qualitätssicherung und Entwicklungsabteilung ein. Ihm werden zugleich mehrere Fähigkeiten abverlangt:
- Verständnis über die zu erreichende Qualität und Möglichkeiten zur Operationalisierung
- vorausschauendes Denken (über zu erwartende Änderungen der Anforderungen und in der Umgebung)
- technisches Verständnis (über die Implementierungstechniken für das zu analysierende System)
- projekt-spezifisches Wissen (z.B. über vereinbarte Programmierkonventionen)
- Erfahrung darüber, welche technischen Ausprägungen eines Systems welchen höheren Qualitätsanforderungen entgegenstehen (z.B. Welche Strukturmerkmale eines Entwurfs treten häufig unbewusst auf, stehen dem Ziel "Wartbarkeit" jedoch entgegen?).
- soziale Kompetenzen, um die Ergebnisse im Spannungsfeld zwischen Qualitätssicherern, Entwicklern und der Leitungsebene fair präsentieren zu können.
Kritischer Kostenfaktor bei dem Einsatz dieses Verfahrens ist somit der Aufbau der entsprechenden Kompetenz in all diesen Bereichen. Sind die Kompetenzen sowie entsprechende Werkzeuge vorhanden, kann ein erster Prozessdurchlauf erfahrungsgemäß innerhalb zwei Wochen erfolgen. |  |
 | |  |  | |  | |  | |  |  |  | | Zu dieser Seite wurden noch keine Kommentare oder Bewertungen abgegeben. |
|
|  | |  |  |   | Übergeordnet |  |  |  | |  |  |  |  |  | Ziele, Voraussetzungen... |  |  |  |  |  | Weitere Themen |  |  |  | |  |  | |  |  |  | Glossar |  |  |  | |  |  | |  |  | |  |  |  |  |  |  |
|