Bringing Models Closer to Code

Bringing Models Closer to Code is a project funded by the Swiss National Science Foundation (SNSF project # 200020_121594).

Funding: 395'304.— SFr.
Period: Oct 1, 2008 - Sept. 30, 2010
Collaborating teams: Run-time instrumentation group, University of Lugano, Switzerland
REVEAL research group, University of Lugano, Switzerland
RMod group, INRIA, Lille, France
Loose Research Group, Politehnica University of Timisoara, Rumania

Keywords

Software evolution; software models; model-driven-engineering; reverse engineering; domain specific languages; dynamic analysis; integrated development environments; model-centric development.

Summary

Software models are notoriously disconnected from source code. At the start of a software development project, the emphasis is on eliciting system requirements and defining domain and architectural models. Once development commences, the original models become disconnected from the code that they describe. It becomes increasingly difficult to reestablish traceability links as crucial knowledge of design decisions and user features are implicit in the code.

This situation poses difficulties for developers who need to understand existing code before adding new features or making changes. Furthermore, developers need to communicate with the domain experts and stakeholders using a representation of the system that both parties can understand. The problem is particularly critical for today's software applications which are constantly evolving and being adapted to new requirements, platforms or services.

We propose to investigate four related research tracks that seek to bring models and code closer together:

Intermediate report

The intermediate report covers the period from Oct. 1, 2008 through Sept. 30, 2009.

This project explores various ways of synchronizing software source code with implicit application domain knowledge. The key results achieved in the four tracks of this project in the first year include:

This research has resulted in 5 journal papers, 11 full papers in international, peer-reviewed conferences, as well as numerous other papers, reports and theses.

For further details see:

Final report

The final report covers the period from Oct. 1, 2009 through Sept. 30, 2010. The key results achieved in the four tracks of this project include:

This research of the final year has resulted in 2 journal papers, 8 papers in international, peer-reviewed conferences, as well as numerous other workshop papers, reports and theses.

For further details see:

For more information, please consult the Research Plan of the project [pdf].