Legacy Systems: The Forgotten Frontier

Session Type: 
Standard [25 minutes]

Schedule info


Legacy systems: the painful frontier. These are the voyages of the Yatta re-engineers. Their mission: to explore ancient software worlds, to seek out dependencies, structures and models, to boldly go, where no tool has gone before.

In many enterprises software is developed for decades. Ada, Eiffel, Smalltalk, Visual Objects – whatever programming language has been used, there are systems out there that have never been touched by a modern IDE.

Staff varies over time and documentation is rare. Maintenance and enhancements are becoming increasing pain points. Migration to new technologies is sorely needed – but too expensive.

In our session we will describe reverse engineering approaches for ancient software systems. The audience is going to see several reverse engineering techniques using Eclipse technologies (free and commercial) for creating documentation of legacy systems that can be used for further development or re-engineering.

This session is aimed at IT managers, software engineers and project leaders who have experience working on, with or suffering from grown legacy systems.


Hi, that's great news. A


that's great news. A standard talk is fine with us.


Hi Manuel, Hi Carsten We

Hi Manuel, Hi Carsten

We would like to accept your talk as a standard talk. (The vast majority of talks will be standard talks) . Please let us know until Friday if this is ok for you.

Thank you

thanks christian campo

christian campo

Hi, Sorry for the late


Sorry for the late response, I was on sick leave last week.

In the talk we'd like to show how to get EMF models from legacy source code (Java and non-Java).

Starting in the Java domain we'll briefly show open source tooling based on the JDT for code analysis/code metrics.

Outside of the Java domain, similarly good tooling is often not available. We are usually facing two challenges here. The first is understanding the legacy language and code.

We'll present three different approaches for that:
1) using simple search utilities (grep/regex)
2) creating new language parsers (with Xtext or Antlr)
3) using Xpand as a grammar for Reverse Engineering (with UML Lab - commercial)

The second challenge lies in extracting higher level information suitable for an architectural overview of the system.

Here, we'll show how to use OCL and QVTO to abstract from the results in 1) and 2) as well as the template based approach of UML Lab.

Eclipse technologies involved: JDT, Xtext, Xpand, EMF, OCL, QVTO

Best regards
Manuel Bork

Hi! Any update on that? We


Any update on that? We need an answer until 3 pm this afternoon.


Hi Christian, How quickly do

Hi Christian,

How quickly do you need that list? Manuel is on sick leave and probably won't return until next Monday (Sept. 5th).

As far as I remember he plans to show 3 or 4 different approaches, each using several technologies, of which only one uses commercial solutions.

Best regards,
Carsten Reckord

Can you supply a list of

Can you supply a list of Eclipse technologies that you plan to cover and mention which ones are free and which ones are commercial.

I find the topic in general interesting but if most technologies that you plan to show are commercial than thats a different story.

christian campo