Safe Round-Trip Software Engineering for Improving the Maintainability of Legacy Software Systems (Safe RTSE)

Funding: FFG, Bridge 1, project number 850757
Duration: November 2015 - April 2019


When maintaining and evolving legacy software systems, the main problems, well-known in the software maintenance community, are: (1) to retain the knowledge available in the project artefacts, (2) to make implicit knowledge explicit, (3) to prevent from knowledge deterioration along maintenance activities, and (4) to keep all the documents consistent to each other. Reverse engineering techniques have been used to address these problems, however, they usually output some "abstract view" of the original system which is of limited help from a re-engineering point of view.

In this project we aim to tackle these problems by investigating methods and techniques to reverse engineer "formal models" from existing systems based on rewriting logic capturing explicit and implicit aspects of the original system. We claim that by using formal reasoning techniques on top of the extracted models the software engineer can first express a formal property that the system exhibits before re-engineering, and later check it against the re-engineered models representing the system design.

This research project is a collaboration with XAutomata Technology GmbH, Klagenfurt, Austria and Università Politecnica delle Marche, Ancona, Italy.


  • October 2019 - Our paper "Automatic Repair of Timestamp Comparisons" has been accepted for publication in the IEEE journal Transactions on Software Engineering (TSE).
  • March 2019 - Our paper "Semantics-Driven Extraction of Timed Automata from Java Programs" has been accepted for publication in the journal Empirical Software Engineering.

Topic revision: r15 - 2019-10-15 - MartinPinzger

Copyright © 2012-2021 by the Software Engineering Research Group, University of Klagenfurt, Austria