Visual Smart Contracts for DAML: A Case Study in Groove


The Digital Asset Modelling Language (DAML) enables low-code development of smart contract applications. Starting from a high-level but textual notation, DAML thus implements the lower end of a model-driven development process, from a platform-specific level to implementations on a range of blockchain platforms.

We develop a notation based on class diagrams and visual contracts that map directly to DAML smart contracts. The approach supports an operational semantics in terms of graph transformation systems to capture the complex behavioural features of DAML, such as its role-based access control and the order of contract execution and archival. We use the Doodle case study from a DAML tutorial to introduce the mappings between DAML, visual models, and operational semantics.

To implement, explore and analyse the operational semantics of the case study we present the graph transformation tool Groove, originally developed by Arend Rensink and his students to support the verification of object-oriented programs. It has since been employed to analyse a range of models, for P2P networks, workflows, component configurations, etc. Our use of Groove for the semantic underpinning and analysis of DAML follows its original purpose of program verification. We will use the opportunity to discuss Groove’s features and illustrate its use for creating and analysing graph transformation systems.

Friday, November 18, 2022 15:00 Europe/Paris
GReTA seminar
Reiko Heckel
Reiko Heckel
Professor in Software Engineering

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.