Research domain, current interests
My research domain is software engineering; I want to make software easier to understand and evolve. My approaches revolve mainly around applying metamodeling and metaprogramming, either to provide more expressive programming tools, or to extract meaning from existing programs.
Conferences, events, involvement
To get an idea of what my fields of interest are, you can also take a look at the list of my involvements in the community.
Current work
My current work is between software architecture and reengineering, using metamodeling and metaprogramming to extract architectural information from programs. We started by surveying the domain of software architecture reconstruction.
We designed two software visualizations to help understand dependancies among a set of packages. These visualizations are like microscopes, because they help us look into the organisation of the studied sofware system, and identify patterns and outliers among dependancies (work published at ICSM 2007 and CSMR 2008). The visualizations were developed using the Moose reegineering framework.
Previous work
During my master thesis I proposed several refactorings for UML. Originally, refactorings are behaviour-preserving program transformations; those are now available in recent development environments such as Eclipse. I showed that some refactorings are adaptable to work at the semantic level of UML models.
During the Ph.D. I worked in the domain of Model-Driven Engineering (MDE). During my Ph.D. we put down the bases for what would become the open-source metamodel engineering language Kermeta. I contributed in defining model transformations, and the methodology and the tools needed to develop them.