DPF is a research project initiated by the Bergen University College and the University of Bergen, Norway, early in 2006. The project aims at formalising concepts in model-driven engineering (MDE) and involves several researchers from Norway and Canada.

MDE is a trend in software engineering which aims at improving productivity and quality of software development. This is obtained by considering models as first-class entities of the software development process and adopting model transformation to automate the implementation. MDE enables developers to reason at a higher level of abstraction and focus on the problem domain. Moreover, it restrains developers from repetitive and error-prone work such as coding.

In the state-of-the-art of MDE, models are typically specified by means of modelling languages such as the Unified Modeling Language (UML). The semantics of these modelling languages is mostly specified semi-formally by means of textual description in English. This may not guarantee the degree of precision required by MDE. In fact, research in the field has argued that a formal approach is necessary to unfold the full potential of MDE.

DPF attempts to overcome this shortage by providing a formal approach to (meta)modelling, model transformation and model management based on category theory and graph transformation. DPF is an extension of the Generalised Sketches formalism originally developed by Zinovy Diskin et al.

2016

2015

2014

2013

2012

2011

2010

2009

2008

2007

2006

2012

2011

2010

2009

2008

2007

2006

Professors

Research associates

Post-doc research fellows

  • Fazle Rabbi, Bergen University College (started 2017)

PhD candidates

  • Fazle Rabbi, Bergen University College (graduated 2017)
  • Xiaoliang Wang, Bergen University College (graduated 2016)
  • Florian Mantz, Bergen University College (graduated 2014)

Master students

  • Pål Bjørhovde, Bergen University College (started 2012)
  • Ole Klokkhammer, Bergen University College (started 2012)
  • Petter Barvik, Bergen University College (started 2012)
  • Ola Bråten, Bergen University College (started 2011)
  • Sidra Nadeem, Bergen University College (graduated 2013)
  • Suneetha Sekhar, Bergen University College (graduated 2012)
  • Anders Sandven, Bergen University College (graduated 2012)
  • Øyvind Bech, Bergen University College (graduated 2011)
  • Stian Skjerveggen, Bergen University College (graduated 2008)
  • Ørjan Hatland, Bergen University College (graduated 2006)

DPF tools

DPF Workbench

Download version 0.0.1 of the DPF Workbench (Eclipse plug-in) from the following update-site: DPF Update Site Package (Latest version) Download the package, install the plugins to your eclipse (The eclipse should contains Eclipse Modeling Tools) by choosing the menus “Help->Install New Software…”. In the Install diaglog, click “Add” botton then click “Archive” button to choose your download update.zip file. The best way is however to use the GitHub Repository and build from the sources.

Tutorials

Q&A

Q: Cannot find the system Java compiler.
  1. Run javac command to check if  JDK, not only JRE, is installed
  2. Further check Eclipse configuration by Help–>About Eclipse–>Installation Details–>Configuration to see if
  • Eclipse is running with the JRE contained by the installed JDK (check java.home)
  • The system enviroment variable PATH contains the directory of tools.jar which is contained in the installed JDK (check java.library.path)
Q:How to design you own predicate?
    1. Design your predicate with Signature Editor
    2. For the semantics definition of a predicate, you can choose use Java, OCL and Alloy.
      • The Java Interface for defining the semantics of a predicate
boolean check(Map paras, Graph graph, Map nodeMap, Map arrowMap)
      • paras: the values for the parameters of the predicate
      • graph: the arity of the predicate
      • nodeMap, arrowMap: the elements in an instance which are mapped by the elements in the arity of the predicate