I worked from 1985 to 1994 for Marconi Research Ltd. investigating computational mechanisms for Knowledge Representation and Artificial Intelligence including engines for interpreting visual cues from surveillance cameras at airports and recognizing families of underwater vehicles by fusing sonar data. At Marconi I was involved in developing a commercial UK AI toolkit called KERIS.

From 1994 to 2003 I was a lecturer in Software Engineering at the University of Bradford and then King's College London. During this time I contributed to the OMG standards body on modelling technologies including UML, MOF, OCL, MDA and QVT. This work produced a number of results including a proposal for UML 2.0, the MML language, and a programming language system which eventually became XMF and XMF-Mosaic.

In 2003 I co-founded a start-up called Xactium in order to commercially develop the XMF-based technologies and served as Technical Director. From 2004 to 2008, Xactium  developed a number of techniques for model- and language-driven development and I led consultancy projects for a range of clients including: BAES; BT; BSkyB; CitiGroup; Artisan Software; Lockheed-Martin. Xactium decided to make XMF open-source in 2007.

In 2008 I moved to Thames Valley University as a Professor in Computing where I established the Model Driven Software Engineering Research Group. At TVU (now the University of West London) the MDSE group investigated modelling approaches to database systems, content management systems, collaborative authoring, and mobile applications.

In 2010 I was appointed Professor of Informatics and Head of Department for Business Information Systems in the School of Engineering and Information Sciences at Middlesex University. Current research work includes the development of precise approaches to enterprise modelling and a calculus for reactive systems including mobile applications.

A more complete CV is available on request.