School of Computing

FuncBPML: An Embedded Domain Specific Language to Model, Transform and Quality Assure Business Processes in Business-Driven Development

Luana Micallef and Gordon J. Pace

Poster Session at the Students' Annual Project Exhibition 2008, Faculty of ICT, University of Malta, July 2008 Technical report at


In Business-Driven Development (BDD), process models are produced by business analysts. To ensure that the defined requirements are satisfied, the IT solution must ideally be derived directly from the specifications through a process of model refinement. However, if the original models contain errors or lack some technical detail, an incorrect implementation would be inferred and the entire BDD life-cycle would have to be revised. In this report, we investigate the use of embedded language techniques to enable more abstract model descriptions and enable quality assurance and transformation of models. We have embedded such a domain-specific language in the functional programming language Haskell and show how it enables: (i) the rapid development of models in a concise and abstract manner, focusing on the specifications rather than the implementation and ensuring that all the required details to generate the executable code are specified; (ii) quality assurance of the models through the use of Haskell's type checker, at construction-time and through soundness analysis; (iii) transformation, analysis and interpretation of the models; and (iv) definition of composite model transformations, including the use of quality assurance.

Download publication 6698 kbytes (PDF)

Bibtex Record

author = {Luana Micallef and Gordon J. Pace},
title = {{F}unc{BPML}: {A}n {E}mbedded {D}omain {S}pecific {L}anguage to {M}odel, {T}ransform and {Q}uality {A}ssure {B}usiness {P}rocesses in {B}usiness-{D}riven {D}evelopment },
month = {July},
year = {2008},
pages = {182-196},
keywords = {determinacy analysis, Craig interpolants},
note = {Technical report at},
doi = {},
url = {},
    publication_type = {misc},
    submission_id = {8018_1308362173},
    howpublished = {Poster Session at the Students' Annual Project Exhibition 2008, Faculty of ICT, University of Malta},

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 21/03/2014