January 21 – 26 , 2001, Dagstuhl Seminar 01041

Interoperability of Reengineering Tools


Jürgen Ebert (Universität Koblenz-Landau, DE)
Kostas Kontogiannis (University of Waterloo, CA)
John Mylopoulos (University of Toronto, CA)

For support, please contact

Dagstuhl Service Team


List of Participants
Dagstuhl's Impact: Documents available
Dagstuhl-Seminar-Report 296

Software Reengineering is the present-day term for all activities for renovating aging systems to be more responsive to changes. Problems of the 90s like the Y2k-problemor the problem of converting software to the new European currency witnessed the importance of concepts, tools and techniques to improve the quality and maintainability of software. Reengineering is a part of software engineering with its focus on all problems appearing during software maintenance of legacy software. Here, we focus on the technical part related to the software artifacts themselves and exclude all management aspects of software maintenance.

Software Reengineering activities are widespread and mostly focus on the development of tools for software analysis. The current state of practice is however that reengineering tools still solve insular problems and are treated as research prototypes within the research group that developed them. In this context, it is very important to define a data interchange format that allows for different reengineering tools to communicate so that integrated, multi-faceted representations of software systems can be created.

Even though this issue may look simple at the beginning, it involves a number of research issues to be resolved. One issue is the definition of the levels of abstraction that information about a software system is to be presented. These levels of abstraction may include the abstract syntax tree level, the data and control flow level, while a higher one may be the architectural level. The challenge to the research community is to design a formalism for each level of abstraction so that information about a software system can be passed from one analysis tool to another. Moreover, the formalism must allow for software systems and constructs in various languages to be presented. Another research challenge is the definition of schemata that allow for data emitted from different parsers to be fused in a uniform, normalized source code representation. Emerging markup languages such as XML may provide a vehicle for data fusion and data integration, in this context.

This Dagstuhl seminar aims at a concrete deliverable, namely the definition of an interchange language format for reengineering tools. Apparently such a language for describing software is needed on different levels of semantic expressiveness, like abstract syntax trees and abstract syntax graphs, call graphs, program dependence graphs, architecture descriptions, etc. Thus, tool interoperability highly relies on the agreement of common concepts, schemas, and information structures. Work on reverse engineering in the sense of extracting information to a higher level of abstraction can not be separated from the interchange aspect.

The aim of the seminar is to provide the working environment where:

a) reengineering tasks and activities are categorized;
b) schemata for language domain models are presented;
c) data exchange formats are defined for different levels of abstraction and;
d) the role of emerging markup language technologies (XML, RDF) is evaluated as a vehicle for reengineering tool interoperability.

Book exhibition

Books from the participants of the current Seminar 

Book exhibition in the library, ground floor, during the seminar week.


In the series Dagstuhl Reports each Dagstuhl Seminar and Dagstuhl Perspectives Workshop is documented. The seminar organizers, in cooperation with the collector, prepare a report that includes contributions from the participants' talks together with a summary of the seminar.


Download overview leaflet (PDF).


Furthermore, a comprehensive peer-reviewed collection of research papers can be published in the series Dagstuhl Follow-Ups.

Dagstuhl's Impact

Please inform us when a publication was published as a result from your seminar. These publications are listed in the category Dagstuhl's Impact and are presented on a special shelf on the ground floor of the library.

NSF young researcher support