Session Title Lessons Learned in Re-engineering - Integrating Legacy Code in Model Driven Software Development

Session Type Case Study

Duration 90 minutes

Session Description

Re-engineering and integration of legacy software is a common problem in model driven software development, which is inherently difficult, due to the very nature of legacy systems. Our case study will present the model driven re-engineering of a wind tunnel control and data acquisition system. Key to the presented solution is a semi-automatic code inspection to establish a service interface for controlling the legacy components in a model driven fashion. The wind tunnel system is a mid-size software system with 150k lines of C code comprising 20 applications. We will stepwise illustrate our approach, in particular showing how it enabled us to exchange and recompose various parts of the system, like the graphical user interface and the communication with the PLCs. This process was managed by means of a framework for model driven design called jABC. However, our approach is not bound to this specific tool and could also be performed using any other MDSD-tool.


Speaker(s) Christian Wagner (University of Potsdam)

Christian Wagner graduated in 2002 in Information Technology in Mannheim, Germany. His research interests include re-engineering and re-purposing of legacy systems, model driven development, and the integration of self-healing technologies in advanced re-engineering processes.

From 1999 till 2008 he was with the foundation Dutch-German Wind Tunnels, as a software developer and subsequently as responsible for the re-engineering of the existing wind tunnel software. Since 2005 he has been the project leader for the German wind tunnel facilities in the international project that specifies generic wind tunnel control and management systems.

In 2008 Christian Wagner joined the EU-IST SHADOWS project, on self-healing approaches to designing complex software systems. He is currently completing his PhD at the University at Potsdam in model driven re-engineering of legacy systems.

Sven Jörges (University of Dortmund)
Sven Jörges holds a MSc in Computer Science from Dortmund University of Technology. He previously worked at IHK-GfI mbH & ComNetMedia AG in Dortmund. His special interests focus on code generation for approaches that support business process modeling and service-oriented development, and on the creation and generation of compliance rules for advanced system verification. He has been involved in several industry projects that practically applied those techniques in a wide span of domains, from telecommunications to embedded systems to the migration of legacy applications in Cobol. He is currently research associate at the Chair of Programming Systems, Dortmund University of Technology, where he helps establishing a Genesys-based MSc Module on \"Virtualization & Compilation\".

Intended Audience Beginner and upwards.