Coupled Software Transformations---Revisited

Published in Proc. SLE 2016

Ralf Lämmel

We revisit the notion of coupled software transformations (CX) which is concerned with keeping collections of software artifacts consistent in response to changes of individual artifacts. We model scenarios of CX while we abstract from technological spaces and application domains. Our objective is to mediate between universal consistency properties of CX and test-driven validation of concrete (illustrative) CX implementations. To this end, we leverage an emerging megamodeling language LAL which is based on many- and order-sorted predicate logic with support for reuse by inlining modulo substitution. We provide a simple translation semantics for LAL so that formulae can be rendered as test cases on appropriate interpretations of the megamodel elements. Our approach has been implemented and validated in logic programming; this includes the executable language definition of LAL and test-case execution on top of illustrative CX implementations.

Coupled software transformation. CX. Bidirectional transformation. BX. Megamodeling. Linguistic architecture. Predicate logic. Logic programming. Testing.

Downloads and links
Bibtex entry
 author = {L\"{a}mmel, Ralf},
 title = "{Coupled Software Transformations Revisited}",
 booktitle = "{Proc.\ SLE 2016}",
 year = {2016},
 pages = {239--252},
 publisher = {ACM},