Experiences with the development of a reverse engineering tool for UML sequence diagrams: a case study in modern Java development

  • Authors:
  • Matthias Merdes;Dirk Dorsch

  • Affiliations:
  • EML Research gGmbH, Villa Bosch, Heidelberg, Germany;EML Research gGmbH, Villa Bosch, Heidelberg, Germany

  • Venue:
  • PPPJ '06 Proceedings of the 4th international symposium on Principles and practice of programming in Java
  • Year:
  • 2006

Quantified Score

Hi-index 0.01

Visualization

Abstract

The development of a toot for reconstructing UML sequence diagrams from executing Java programs is a challenging task. We implemented such a tool designed to analyze any kind of Java program. Its implementation relies heavily on several advanced features of the Java platform. Although there are a number of research projects in this area usually little information on implementation-related questions or the rationale behind implementation decisions is provided. In this paper we present a thorough study of technological options for the relevant concerns in such a system. The various options are explained and the trade-offs involved are analyzed. We focus on practical aspects of data collection, data representation and meta-model, visualization, editing, and export concerns. Apart from analyzing the available options, we report our own experience in developing a prototype of such a tool in this study. It is of special interest to investigate systematically in what ways the Java platform facilitates (or hinders) the construction of the described reverse engineering tool.