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.


  • May 2018 - Our paper "Towards Model Checking Security of Real Time Java Software" has been accepted at SHPCS 2018, co-located with HPCS 2017 in Orléans, France.
  • March 2018 - Our paper "Modeling Time in Java Programs for Automatic Error Detection" has been accepted at FormaliSE 2018, co-located with ICSE 2018 in Gothenborg, Sweden.

Topic revision: r13 - 2018-05-08 - MartinPinzger

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