Reiko Heckel

Reiko Heckel

Professor in Software Engineering

Department of Informatics, University of Leicester, UK

Reiko joined the University of Leicester in 2004 as Reader, was appointed Professor in Software Engineering in 2007 and served as Head of Department 2014-2018. He is the Director of Postgraduate Teaching and Data Analytics Lead of the Leicester Innovation Hub, the university’s shop window to local industry. Before coming to Leicester, Reiko held academic positions in Paderborn and Dortmund. He studied Computer Science at the Technical Universities of Dresden and Berlin and received his PhD (Dr.-Ing.) from the TU Berlin in 1998. Reiko is known for his work on model-based development, reengineering and testing, model transformations and the semantics of modelling languages. He published extensively on graph transformation, its concurrency theory, timed and stochastic variants, modularity and refinement.

Reiko is chair of the Steering Committee the International Conference on Graph Transformation (ICGT) and president of the European Association for Software Science and Technology (EASST). He was co-chair of FASE 2006, ICGT 2008 as well as CALCO 2013. He is a member of the IFIP WG 1.3 - Foundations of System Specification.

Textbook “Graph Transformation for Software Engineers” published with Springer

The book on “Graph Transformation for Software Engineers” co-authored with Gabriele Taentzer at Philipps-Universität Marburg appeared at Springer in spring 2020. It is the first textbook that explains the most commonly used concepts, notations, techniques and applications of graph transformation in general, broadly accessible terms, without focusing on one particular mathematical representation or implementation approach.

Graphs consist of nodes and connections; they are used to model various kinds of networks and structures such as molecules in chemistry, social, economic and computer networks, software architectures, etc. In software engineering, graph-based models are used to specify, for example, component structures, data structures and processes. Graph transformations specify changes of graphs, such as chemical reactions, the rafactoring of software systems, architectural nd network dynamics. Specifying them in a rule-based, visual notation, such transformations also have a formal smenatics and can be analysed for interesting properties such as conflicts dependencies, reachability and safety properties, etc.

The first part of the book covers the fundamentals in a precise, yet largely informal way. Besides serving as a prerequisite for describing the applications in the second part, it also provides a comprehensive and systematic survey of the concepts, notations and techniques of graph transformation. The second part presents and discusses a range of applications to both model-based software engineering and domain-specific language engineering. The variety of these applications demonstrate how broadly graphs and graph transformations can be used to model, analyse and implement complex software systems and languages.

The formal published version of the book is available to buy from Springer both as Springer Online Edition and hardcover. Further information and resources are available on our author site.

  • Graph transformation theory
  • modularity and refinement
  • categorical and (co-)algebraic models
  • logics and verification
  • stochastic modelling and analysis
  • semantics of visual modelling languages
  • model-transformation and model-driven development
  • biological systems
  • model-driven software evolution and re-engineering
  • software architectures for service-oriented and P2P systems
  • PhD (Dr.-Ing.), TU Berlin