A Catalogue of Optimization Techniques for Triple Graph Grammars
ISSN der Zeitschrift
Regular Research Papers
Gesellschaft für Informatik e.V.
Bidirectional model transformation languages are typically declarative, being able to provide unidirectional operationalizations from a common specification automatically. Declarative languages have numerous advantages, but ensuring runtime efficiency, especially without any knowledge of the underlying transformation engine, is often quite challenging. Triple Graph Grammars (TGGs) are a prominent example for a completely declarative, bidirectional language and have been successfully used in various application scenarios. Although an optimization phase based on profiling results is often a necessity to meet runtime requirements, there currently exists no systematic classification and evaluation of optimization strategies for TGGs, i.e., the optimization process is typically an ad-hoc process. In this paper, we investigate the runtime scalability of an exemplary bidirectional model-to-text transformation. While systematically optimizing the implementation, we introduce, classify and apply a series of optimization strategies. We provide in each case a quantitative measurement and qualitative discussion, establishing a catalogue of current and future optimization techniques for TGGs in particular and declarative rule-based model transformation languages in general.