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
- the design and development of modelling languages and model transformations in the context of model-driven engineering. A particular focus here is on techniques for modularising models and transformations to enable modular reasoning and reuse. Example work includes work on Reuseware and on the use of GTS morphisms for DSL modularisation.
- the specification and analysis of quality-of-service (QoS) properties of systems. QoS properties make or break a system's success. Example work in this area includes QML/CS, a generic QoS specification language based on temporal logic of actions, and the current extension of this idea in work using GTS morphisms to modularise and generalise the specification of QoS analyses in the context of the Palladio component framework.
- the way in which software developers go about their work and what this implies for the tools they require. Example work includes research on assumptions made by aspect programmers and research on capturing the structure of software design dialogues.
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.
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).
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.
I am second supervisor for the following student(s): Faisal Almisned, Krikor Maroukian, Ravinder Zandu.
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, Kleopatra Chatziprimou.
I have been asked to give talks at the following occasions:
- Towards Modular and Verified Model Transformations; University of York, May 02, 2012
- Meta-X: Basis for Efficient DSL Development; University of Middlesex, July 05, 2012
- Modularity in Models and Transformations; Royal Holloway, November 20, 2012
- Non-functional Properties in Software Architecture; University of Malaga, Spain, November 29, 2012
- Putting Engineering into MDE: Components and Contracts for Models and Transformations; Keynote XM workshop at MODELS 2014, Valencia, Spain
- Building flexible analysis: Modular formal specification of QoS and QoS analysis -- Keynote FESCA 2015