Vision
I'm a software engineer with a particular interest in language-oriented software development.
The vision for software engineering that I share with many other researchers is to one day reach a point
where it becomes so easy to develop small, focused Domain-Specific Languages (DSLs), that the average programmer
will regard this as the normal thing to do; given a problem to solve, develop a suitable language in which you
can model precisely what you want in your problem domain, then develop a model transformation to map
this solution idea to a chosen solution domain.
Specialisation
The research field of model-driven engineering is all about realising this vision, and I've specialised and
focused on model transformations in general, and (model) consistency management in particular.
Consistency management encompasses a means of specifying consistency over models, and being able to: generate
consistent models, check if a set of given models are consistent, and restore consistency for a given set
of possibly inconsistent models.
The community currently working on all aspects of consistency management refers to the area as bidirectional transformations (bx).
The reason I'm particularly interested in bx is that I can only really advocate the proliferation of numerous DSLs
(and thus models in these DSLs), if we can guarantee that consistency can be restored and maintained as required in an efficient and effective manner.
My favourite hammer for working on bx has been and is still graph transformations (which is also just basic category theory).
A particularly simple flavour of graph transformations can be expressed using Triple Graph Grammars (TGGs), and I've spent a
good time of my life as an active researcher thinking about and extending the TGG formalism.
Contribution
I strive hard to be a balanced researcher, and I have made contributions towards developing the formal theory of TGGs (
,
,
,
), as well as embodying this theory in practical tools you can trust and actually (want to) use (
,
). I also try to be as methodic as possible, and have contributed to systematically comparing the diverse approaches to bx (
,
,
,
), as well as developing techniques towards the reproducible engineering of quality bx solutions (
,
,
). Please refer to my Google Scholar profile for a complete and up to date list of publications.
Research Projects
-
I worked on this research project during my time as a post-doc at Chalmers (Gothenburg,
Sweden).
Results of my work included a survey and analysis of the current use, challenges, and potential of traceability management solutions in the industry
(
,
).
I also helped initiate Capra, a flexible traceability management tool that is now being
developed as an Eclipse project.
Jul 2015 – Mar 2016
-
I worked on this research project during my time as a post-doc at Chalmers (Gothenburg,
Sweden).
Results of my work included an analysis of the potential and feasibility of transitioning from informal requirements to more formal models in the
embedded industry
(
).
Jul 2015 – Mar 2016
-
This was a case study for model synchronisation in the context of manufacturing engineering.
Refer to my PhD thesis
(
) for a detailed overview. This screencast demonstrates the developed synchroniser.
A Software Campus project with TU Darmstadt as academic partner and Siemens AG as industrial partner.
Jan 2013 - Dec 2013
Current Interests (things I'm working on at the moment)
[ 2020 - now ]
-
I've gotten interested in applying model-driven engineering to establishing and maintaining (software) system documentation for small and large projects
alike. Based on my experience from projects in the automotive and medical domain, I now maintain and actively use Pedantic as an MPS-based starting point.
-
I remain interested in consistency management in general, and concurrent model synchronisation in particular. This was something I worked on for a while and
I still feel there's a lot already out there to be understood and compared in a helpful manner.
I have continued working on Benchmarx, a comparative benchmark for bx, and have recently extended it to
cover concurrent synchronisation in (
).
-
I've gained some experience consulting on automotive projects with the goal of optimising complex tool chain and landscapes. My lessons learnt and
possible connections to the bx research field have been shared in a short paper
(
).
[ Before 2020 ]
-
I'm still very much interested in establishing a toolsuite for consistency management tasks based on TGGs as an underlying formalism.
If you're interested in our progress and current challenges, checkout the current roadmap
(
)
for this endeavour.
-
Inspired by recent advancements in the area of incremental graph pattern matching, I have started exploring the potential of using an
incremental graph pattern matcher as an underlying engine for diverse consistency management tasks.
This is currently joint work performed in close collaboration with my former office mates
Erhan Leblebici,
Gergeley Varró, and my doctor father
Andy Schürr.
-
Inspired by work in the research area of method engineering performed by my current colleagues in the research group of
Gregor Engels, I have started
revisiting all my previous work and old projects on synchronisation scenarios and other consistency management applications.
My goal is to apply method engineering as a promising means of extracting and packaging reusable knowledge and experience from these past projects in
the form of reusable method fragments and method patterns.
My Profile