Hypothesen-gesteuerte Analyse von Objektarchitekturen
Sprache der Bezeichnung:
Deutsch
Original Kurzfassung:
Die objektorientierte Programmierung hat das Potential zur Steigerung der Softwarequalität und der Entwicklungsproduktivität. Die Analyse eines objektorientierten Programms ist jedoch auch bei übersichtlicher Klassenhierarchie schwierig. Ein wesentlicher Grund für diese Schwierigkeiten ist der Unterschied zwischen der statistischen Programmstruktur (der Struktur des Quelltexts) und dem Programmverhalten. Dieser Unterschied erschwert die Analyse dynamischer Eigenschaften und damit besonders das Testen und Dokumentieren des Programmverhaltens.
Die Ergebnisse dieser Arbeit unterstützen zielgerichtete Analysen des Verhaltens objektorientierter Programme. Das Analyseziel wird als Hypothese über veränderliche Strukturen kooperierender Objekte formuliert. Als Informationsquelle dient der Quelltext. Nach der Festlegung des Analyseziels wird ein Programmlauf auf Übereinstimmung mit der Hypothese geprüft. Je nach Analyseergebnis wird die Analyse abgebrochen, die Hypothese verfeinert oder ein anderer Programmlauf gegen die gleiche Hypothese geprüft. Durch dieses Verfahren leisten hypothesengesteuerte Verhaltensanalysen einen wichtigen Beitrag zur Sicherung der Programmqualität.
Sprache der Kurzfassung:
Deutsch
Englische Bezeichnung:
Hyotheses-driven Analysis of Object Architectures
Englische Kurzfassung:
An object-oriented program is difficult to analyze even when the program is clearly structured. The difficulty results from the difference between static program structure (the structure of the source code) and program behavior. This difference impedes especially the analysis of dynamic properties for testing and documenting program behavior and hence the incremental development of object-oriented programs.
The results of this project support goal-oriented analysis of program behavior. A goal is expressed as a hypothesis about an object architecture, i.e., a mutably graph of interacting objects. The special-purpose language OASE was designed for stating hypotheses based on the source code of a program. OASE-scrips control a tool that automatically checks program executions against hypotheses. Using this tool an analysis is performed in several steps. Depending on the result of one step an analysis is finished, the hypothesis is refined, or another program execution is checked against the same hypothesis. By means of this procedure, hypotheses-driven analysis of program behavior helps to ensure quality of highly dynamic object-oriented programs.