Die anderen unter Verfahren zur Problemidentifikation diskutierten Verfahren sind präzise in dem Sinne, dass sie auf konkrete Vorkommen verdächtiger Strukturen hinweisen. Beim Ansatz der metrikbasierten Qualitätsanalyse wird eine viel abstraktere Sichtweise eingenommen. Das Verfahren ist ein Vertreter der statischen und ausschließlich strukturell-orientierten Methoden.
Generell ist eine Metrik eine Festlegung über die Abbildung von Eigenschaften eines Untersuchungsgegenstandes auf eine Skala (z.B. Zahlen von 0 bis 100). Metriken (oder korrekter Maße), werden so gewählt, dass die erhobenen Messwerte Aussagen über Qualitätsaspekte des Quellcodes zulassen. Im Fokus der Untersuchung stehen dabei meist Aspekte der Größe, der Kopplung (Grad an Zusammenhang zwischen verschiedenen Artefakten), der Kohäsion (Grad des Zusammenhalts eines Artefakts) oder der Komplexität, wobei damit allgemein die Schwierigkeit verbunden wird, mit der Quellcode verstanden und letztlich gewartet werden kann (siehe auch: Wesentliche interne Produktmerkmale).
Seit den 70er Jahren wird durch Hervorbringen immer neuer Metriken versucht, die aufgrund „komplizierter“ Strukturen eines Softwaresystems erwachsenden Schwierigkeiten für das Programmverstehen zu messen und vorherzusagen. Beim Ansatz der metrikbasierten Qualitätsanalyse wird die exakte Identifikation von Mustern oder Strukturen durch einen Vergleich der erhobenen Messwerte mit Sollvorgaben ersetzt. Die „Komplexität“ einer Funktion f kann gemessen werden, indem z.B. die Anzahl von Funktionen gezählt wird, die f aufruft. Übersteigt der Messwert eine vorgegebene Schranke, wird dies als Indiz für später zu erwartende Wartungsschwierigkeiten gewertet.
Die Vorteile der Methode sind:
Metriken können mit relativ geringem Aufwand automatisch erhoben werden, so dass bei einer Vielzahl parallel ermittelter Messwerte ein umfassenderes Bild über die Eigenschaften eines Systems gezeichnet wird, als einzelne Vorkommen von Strukturen dies tun.
Bei der Suche das Problemstrukturen werden Probleme nur angezeigt, wenn diese tatsächlich vorhanden sind, Metriken können auch positive Qualitätsaspekte bestätigend charakterisieren (es gibt keine „leere“ Ausgabe).
Metriken können auch anhand unvollständigen Codes erhoben werden
Die Nachteile sind:
Der Vergleich findet auf sehr hohem Abstraktionsniveau satt, wodurch die Gefahr vieler falsch positiver Alarme steigt.
Die ermittelten Messwerte sind häufig in weiten Grenzen interpretierbar.
Die Aussagen können weniger genau auf einzelne Quellcodestellen zurückgeführt werden wodurch nicht völlig klar ist, wie Probleme behoben werden sollen (z.B. Messung der Kopplung von Klassen).
Die Vorhersagekraft der eingesetzten Metriken ist bisweilen anfechtbar. Metriken müssen umfassend validiert werden, bevor den Messwerten ausreichend Vertrauen entgegengebracht werden kann. Die Verallgemeinerung der Validität der Metriken ist nur schwer sicherzustellen.
Es ist sehr schwer, fixe Sollwertbereiche für einzelne Metriken anzugeben, weil die Messwerte häufig auch von der Größe des Systems abhängig sind. Ermittelte Sollwerte können jedoch in einem spezifischen Projekt unter den spezifischen Randbedingungen vereinbart werden.
Die Methode verleitet dazu, alle möglichen Qualitätsaspekte in einem „managementgerechten Qualitätsindex“ zusammenzufassen (indem z.B. Messwerte verschiedenster Metriken aufsummiert werden). Dies ist gefährlich, weil dabei zu viele unvalidierte Annahmen in die Verknüpfbarkeit der Eigenschaften einfließen. Die Einhaltung der Qualitätsschranke (gemessen an diesem Index) steht dann kaum in einem kausalen Zusammenhang mit den wahren Qualitätseigenschaften des Systems.