Navigation auf uzh.ch
finished by Roman Flückiger
Reverse engineering techniques help to understand programs for maintaining and evolving large, complex software systems. For this engineers need to browse and navigate the existing source code using textual and graph-like visualizations. In this Diploma Thesis the focus is on eliciting existing source code browsing and navigation techniques and apply them on data of multiple source code releases. By including the data of past releases big changes in the implementation can be highlighted allowing users to reason about implementation and design specific aspects.
The goal of this Diploma Thesis is to extend existing graph-like information browsing and navigation techniques and implement the techniques in a prototype tool integrated into the Eclipse IDE.
The thesis comprises a scientific and an engineering part. The scientific part is concerned with the investigation and evaluation of current information browsing and navigation techniques handling data of multiple source code releases. The focus is on graph-like techniques with emphasis on the ArchView approach. ArchView follows the Polymetric-Views principle and uses Kiviat Graphs to represent data of multiple releases.
The engineering part is concerned with the implementation of a prototype tool that supports the user in browsing and navigating source code data of multiple releases. The basic requirements for the implementation are:
The output of the implementation phase is a prototype tool implemented as a plug-in into the Eclipse IDE. The tool then is applied in a case study with a medium-sized Java project (e.g., Bittorrent client Azureus) to validate the improved techniques and the tool.
The typical rules of academic work must be followed. "So what is a (Diploma) Thesis" describes guidelines which must be followed. At the end of the thesis, a final report has to be written. The report should clearly be organized, follow the usual academic report structure, and has to be written in English using our s.e.a.l. LaTeX-template.
Since implementing software is also part of this thesis, state-of-the-art design, coding, and documentation standards for the software have to be obeyed.
The diploma thesis has to be concluded with a final presentation.
Dr. Martin Pinzger, Sandro Boccuzzo, Prof. Harald Gall.
More information on "What is a Diploma Thesis and How to do a Diploma Thesis at IFI" is provided here.