⇒ English

Softwaremetrie auf Abwegen

Erhard Konrad

Es wird über einen wissenschaftlichen Streit berichtet, den Dick Wexelblat, Herausgeber von SIGPLAN Notices, "die Schlacht von Berlin" nannte (ACM online).

Am Anfang steht ein Artikel, in dem Peter Bollmann und Horst Zuse einen neuen Ansatz zur Diskussion stellen:

Zuse, Horst; Bollmann, Peter: Software Metrics - Using Measurement Theory to Describe the Properties and Scales of Static Software Complexity Metrics, SIGPLAN Notices 24, No. 8, New York 1989, 23-33. ACM online.

Dies ist eine leicht geänderte Version der folgenden Schrift:

Bollmann, Peter; Zuse, Horst: An Axiomatic Approach to Software Complexity Measures. In: J. Rasmussen, P. Zunde (Eds.), Empirical Foundations of Information and Software Science III, Plenum Press, New York 1987, 13-20.

Zu dem Artikel in SIGPLAN Notices schrieb ich kritische Beiträge in Deutsch und Englisch:

Konrad, Erhard: Über Softwarekomplexität, Meßtheorie und Standpunkte - Kritik des Bollmannschen Ansatzes, WBS-Bericht 6/90, TU Berlin, Mai 1990.

"Die Hauptschwäche des Bollmannschen Ansatzes sehe ich in der Standpunktmethode, die - verbunden mit einer Fehlanwendung der Meßtheorie - als zukunftweisender Schritt für die Softwaremetrie vorgeschlagen wird. ... Die Brücke, durch die Meßtheorie und Softwaremetrie miteinander verbunden werden, ist eine Fehlkonstruktion. ... Es werden keine allgemeingültigen Kriterien angegeben, sondern gesagt, dieselben hingen davon ab, welche Elementarstandpunkte, Standpunkte oder Axiome ein Anwender von Softwarekomplexitätsmaßen akzeptiert. Die Antwort ist unbefriedigend, denn die wissenschaftliche Arbeit wird auf Anwender abgeladen: Nur einem Experten der Meßtheorie und Softwaremetrie könnte zugemutet werden, meßtheoretische Axiome der Softwarekomplexität begründet zu akzeptieren oder zu verwerfen." (Aus dem Text.)

Konrad, Erhard: Software Metrics, Measurement Theory, and Viewpoints - Critical Remarks on a New Approach, ACM SIGPLAN Notices 26, No. 3, New York 1991, 53-62. ACM online.

"This paper presents a critical discussion of a new approach to software quality assurance. Zuse and Bollmann, the protagonists of this approach, claim that they can offer a methodology for properly selecting and applying software metrics. Their approach incorporates ideas borrowed from measurement theory and information retrieval. In this paper, it is shown that Zuse and Bollmann go astray even under their own premises." (Aus dem Text.)

Zum WBS-Bericht 6/90 verfasste Bollmann eine Erwiderung (Bollmann-Sdorra, Peter: Der meßtheoretische Ansatz in der Softwaremetrie - eine Erwiderung zur Konradschen Kritik, Bericht, Fachbereich Informatik, TU Berlin, Januar 1991). Dazu meine Replik:

Konrad, Erhard: Der Bollmannsche Ansatz in der Softwaremetrie - Replik auf Bollmanns Erwiderung, WBS-Bericht 3/91, TU Berlin, September 1991.

"In der vorliegenden Replik habe ich Bollmanns Argumente gegen meine Kritik entkräften können. ... Bollmann unterschlägt in seiner Erwiderung ganze Komplexe meiner Kritik: das unbewiesene ‘Theorem’ 5.1, die trivialisierte Differenzenmessung, die deformierte Standpunktemethode, die defekte Brücke zwischen Meßtheorie und Softwaremetrie." (Aus dem Text.)

In SIGPLAN Notices (ACM online) bemühten sich Bollmann and Zuse, meine Kritik zu widerlegen. Meine Antwort:

Konrad, Erhard: Application of Measurement Theory to Software Metrics - Comments on the Bollmann-Zuse Approach, ACM SIGPLAN Notices 27, No. 12, New York 1992, 13-19. ACM online.

"In this paper, Bollmann and Zuse's reply to a criticism of their approach to software metrics will be examined. As a result it will be shown that they have failed to achieve their goal of refuting this criticism. ... Bollmann and Zuse do not address the main issue of my criticism, namely the bridge between measurement theory and software metrics. Instead they introduce material susceptible to shortcomings and unsubstantiated claims. This suggests that the Bollmann-Zuse approach is a specious line of research in the field of software metrics." (Aus dem Text.)

Im selben Heft von SIGPLAN Notices veröffentlichten Bollmann and Zuse eine abschließende Replik (ACM online). Sie formulierten als Ergebnis, dass ihre Position und meine Position unverträglich seien. Dieser These kann ich zustimmen.

Zwischenzeitlich hatte Zuse ein Buch veröffentlicht. In einer Besprechung des Buches weise ich auf zahlreiche Schwächen hin:

Konrad, Erhard: Review of Zuse, Horst: Software Complexity - Measures and Methods, Zentralblatt für Mathematik / Mathematics Abstracts, 731/68.003, Berlin New York 1992. Online.

"The aim of this book, as outlined by the author in the preface, is ‘to prepare the reader for a detailed study of the methods of application of measurement theory, the definition and use of scales, the description of measures as ordinal or ratio scale, ... and the application of software complexity measurement in practice. The book presents ... a theoretical foundation of the measurement of software complexity, and ... a detailed discussion of more than ninety software complexity measures and their application to software complexity measurement.’ Unfortunately, the reader who approaches this book with high expectations will be disappointed. A careful study reveals grave shortcomings: Measurement theory is misrepresented; the theoretical foundations of software complexity measurement are unsound; the methods for the practical application of software complexity measurement are insufficiently elaborated. The best features of the book are the nearly complete collection of complexity measures and the extensive annotated bibliography." (Aus dem Text.)

Bollmann und Zuse antworteten auf meine Buchbesprechung mit zwei Berichten:

Bollmann-Sdorra, Peter: Reply to: "Erhard Konrad: Review of Zuse, Horst: Software Complexity - Measures and Methods", Report,TU Berlin, September 1992.
Bollmann-Sdorra, Peter; Zuse, Horst: Supplement (Part I) for "Software Complexity - Measures and Methods by Horst Zuse", Proofs of Theorems, Report, TU Berlin, October 1992.

Im ersten Bericht versucht der Autor, von den Schwächen des Buches abzulenken, indem er Randprobleme aufbauscht. Im zweiten Bericht korrigieren die Autoren Fehler des Buches, ergänzen mathematische Definitionen und beweisen einige Theoreme, die den Pseudo-Theoremen des Buches ähnlich sind. Aber das Hauptproblem, ob Zuses modifizierte extensive Struktur überhaupt eine extensive Messstruktur ist, wird ausgespart. Wegen dieser Lücke hängt der Ansatz von Bollmann und Zuse in der Luft.

In einem zweiten Buch (Zuse, Horst: A Framework of Software Measurement, Berlin 1998) versucht Zuse, die Lücke zu schließen. Er bietet einen Beweis für die Behauptung an, dass das Axiomensystem der modifizierten extensiven Struktur mit einem Standard-Axiomensystem der extensiven Messstruktur (vgl. Krantz et al. 1971 und Roberts 1979) äquivalent ist. Aber der Beweis ist inkorrrekt. Auf Seite 675 behauptet Zuse, dass die 6. Zeile aus der 4. Zeile folgt. Dieser Schritt ist jedoch offensichtlich ein logischer Fehler (•≥ wird mit •> gleichgesetzt; Definition von •>: a•>b genau dann, wenn a•≥b und nicht(b•≥a)). Somit scheitert er beim Versuch zu zeigen, dass das starke Archimedische Axiom der modifizierten extensiven Struktur aus dem Axiomensystem der extensiven Struktur folgt. - Daher bleiben Zuses Ausführungen ohne messtheoretische Fundierung.

Konklusion: Bis zu ihrem Ziel - eine tragfähige Brücke zwischen Softwaremetrie und Messtheorie - werden Bollmann und Zuse noch einen weiten Weg gehen müssen. Literaturhinweise

Nachtrag (2007): Den Kern der Kontroverse sieht Eggers im Verhältnis von Komplexität und Kognition (Eggers 2003). Komplexität beziehe sich darauf, "dass Strukturen von realen Objekten und Artefakten nicht ganzheitlich erfasst werden können oder gar nicht erkennbar sind". Diese "kognitive Schwierigkeit" (Eggers) wird am Beispiel des Isomorphie- und Codierungsproblems für Graphen demonstriert. - Um kognitive Schwierigkeitsgrade bei Kontrollflussgraphen objektiv unterscheiden zu können, hat McCabe ein Komplexitätsmaß eingeführt (McCabe 1976) und gezeigt, dass zyklomatische Komplexität und kognitive Komplexität korrelieren. Die Arbeit von McCabe, die von Bollmann und Zuse kritisiert wird, bildet den Ausgangspunkt der Kontroverse.

Literaturhinweise:
Eggers, Bleicke: Informatik im interdisziplinären Kontext. Gedanken zum Selbstverständnis, Informatik zwischen Konstruktion und Verwertung, Materialien der 3. Arbeitstagung Theorie der Informatik, Bad Hersfeld 3. bis 5.4.2003, hrsg. von Frieder Nake, Arno Rolf & Dirk Siefkes, Bericht Nr. 1/ 04, Universität Bremen, Fachbereich Mathematik & Informatik, Bremen 2003, 31-36. Online.
McCabe, Thomas J.: A Complexity Measure, IEEE Transactions on Software Engineering SE-2(4), 308-20, 1976. Online.


Letzte Änderung: 7. November 2014
[Zurück]