Embedded Languages for Business Process Modelling, Transformation and Quality Assurance in Business-Driven Development
Pace, Gordon J.
- Publisher: Department of Computer Science, University of Malta
QA | QA76 | Embedded computer systems | Computer hardware description languages
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.