Diploma Thesis DIP-2258

BibliographyLösch, Felix: Instrumentation of Java Program Code for Control Flow Analysis.
University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Diploma Thesis No. 2258 (2005).
114 pages, english.
CR-SchemaD.1.5 (Object-oriented Programming)
D.2.2 (Software Engineering Design Tools and Techniques)
D.3.3 (Programming Language Constructs and Features)
D.3.4 (Programming Languages Processors)
F.3.2 (Semantics of Programming Languages)
KeywordsInstrumentation; decision tables; maintenance; legacy systems; control flow analysis; polymorphism; Java
Abstract

In this thesis we describe an approach and introduce a new tool, called JDeTEx, to extract decision tables from Java programs in order to give the maintenance engineer a better understanding of the control flow of the program. Decision tables are a compact, yet precise way to model the control flow of computer programs. In order to extract the decision tables the explicit and implicit control flow of Java programs needs to be analyzed by the tool. Firstly, the tool uses static byte code analysis to automatically extract information about polymorphic method calls that represent implicit control flow in Java programs. Secondly, the tool uses source code analysis to extract information about explicit control flow in the Java program.

The main contribution of this thesis is an approach to instrument Java programs in order to extract decision tables from programs. We use the information extracted during byte code and source code analysis to guide the instrumentation process and show that the instrumentation does not change the execution behavior of the original program. The instrumented program is executed in order to extract the program path which can then be used to construct the decision tables.

We can conclude that the use of decision tables during the maintenance phase of a project reduces the time to understand a program, especially when a lot of implicit control flow in form of polymorphism is present in the program.

Full text and
other links
PDF (1073017 Bytes)
Access to students' publications restricted to the faculty due to current privacy regulations
ContactFelix Lösch felix.loesch@gmx.net
Department(s)University of Stuttgart, Institute of Software Technology, Software Engineering
Entry dateMarch 21, 2005
   Publ. Computer Science