Research Information

Research Interests

My research is in software engineering. I am interested in capturing existing good practice and domain knowledge in automatable and analysable forms to improve software quality. To this end, I study

I did a Computerphile video on model-driven engineering (MDE) and DSLs; you can find it here. Find some other videos of a talk on DSLs I gave for the London Java Community here and here.

Current Projects and Activities

MDENet is the expert network for model-driven engineering. I am the director of this EPSRC funded network, together with Perdita Stevens from the University of Edinburgh. More information about the network is available on the network website.


I am always interested in supervising PhD students. My research interests span the fields of model-driven development, non-functional properties, and modularity. If you want to work towards a PhD in this space, please do not hesitate to contact me. You will find that it helps if you have actually read some of my more recent work and can make a research proposal that is related to my interests. I have written up some notes for prospective and current PhD students, which I encourage you to read before contacting me about working towards a PhD with me.

A list of potential topics is also available.

My MSc and BSc project topic offers will be made available through the normal Departmental channels.

First Supervisor

I am first supervisor for the following student(s): Thomas Mead, Thomas Godfrey.

Second Supervisor

I am second supervisor for the following student(s), among others: Faisal Almisned, Krikor Maroukian, Ravinder Zandu.

Previous Students

I have previously supervised the following student(s) (among others): Abdulrahman Alreshidi, Holger Kampffmeyer (MSc), Nur Azyyati Ahmad, Aakriti Anand (MSc), Annalisa Gopie (MSc), Frederico Emmediato (MSc), Dhruv Ahuja (MSc), Vineet Gupta (MSc), Vasanth Kumar Jagadeesh (MSc), Dionysios Efstathiou, Paraskevi Zerva, Kleopatra Chatziprimou, Alexandru Burdusel.

Past Projects and Activities

In this King's Together project, we are investigating opportunities for applying performance modelling and agent-based modelling techniques to the problem of optimising patient flow in hospital settings.

This student summer internship investigates integration of symmetric aspects into Epsilon's new EGX language for scheduling code generators.

A UG Research Fellowship has been funded to support a systematic review of recent literature on finding design patterns.

I was PI for KCL in the RELATE FP7 Marie-Curie Initial Training Network on model-driven approaches to service development in the Cloud.

I have been a Marie-Curie Fellow on the RIVAR project on Rich Interfaces for Verifiable Aspect Reuse.

I was one of the administrators of the Reuseware project, which provides a framework for language-independent invasive software composition.

From October 2009 to September 2010, I was work-package leader for work package 2 "Architecture" of the AMPLE project, a European project on aspect-oriented, model-driven product-line engineering. In this context, I co-developed VML* a family of languages for variability management.

I was involved, together with Jendrik Johannes and Sebastian Cech, in the EU IST IP MODELPLEX, a project on providing model-driven solutions for complex systems development.

I was one of the administrators of the Dresden OCL Toolkit, a set of tools for evaluating OCL constraints.

I was one of the members of "COMponents with QUantitative properties and ADaptivity", a DFG-funded research project, which ran until October 2004.

I have been one of the co-authors of the submission that eventually became the OMG's specification for version 2.0 of the Object Constraint Language (OCL).

Community engagement

Below is a selection of things I do in the community.


I have been or am co-organising the following events: Member of scientific committee GReTA (Graph Transformation Theory and Applications), Tutorials @ MoDELS'18, Workshops @ STAF'17, Demonstrations @ MODELS 2013, Research Project Symposium @ ECOOP 2011, Doctoral Symposium @ SLE 2010, SLE 2008, WSRCC'09, MiSE 2009, MiSE 2008, MiSE 2007, NfC'05, NfC'04, Roles 2007, secretary and treasurer of AOSA, the association steering the Modularity and Programming conference series.

PC Membership


I am a member of the editorial board of the International Journal on Software and Systems Modeling (SoSyM). I have been invited to review for the following events and journals, among others: IET Software, Journal on Software and Systems Modelling (SoSyM), ACM Computing Surveys, FASE, Sci. Comp. Prog., IEEE Software.

Invited Talks

I have been asked to give talks at the following occasions: