Nested OSTRICH: Hatching Compositions of Low-code Templates

João Costa Seco, Hugo Lourenço, Joana Parreira, Carla Ferreira

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

1 Citation (Scopus)
24 Downloads (Pure)

Abstract

Low-code frameworks strive to simplify and speed-up application development. Native support for the reuse and composition of parameterised coarse-grain components (templates) is essential to achieve these goals. OSTRICH-a rich template language for the OutSystems platform-was designed to simplify the use and creation of such templates. However, without a built-in composition mechanism, OSTRICH templates are hard to create and maintain. This paper presents a template composition mechanism and its typing and instantiation algorithms for model-driven low-code development environments. We evolve OSTRICH to support nested templates and allow the instantiation (hatching) of templates in the definition of other templates. Thus, we observe a significant increase code reuse potential, leading to a safer evolution of applications. The present definition seamlessly extends the existing Out-Systems metamodel with template constructs expressed by model annotations that maintain backward compatibility with the existing language toolchain. We present the metamodel, its annotations, and the corresponding validation and instantiation algorithms. In particular, we introduce a type-based validation procedure that ensures that using a template inside a template produces valid models. The work is validated using the OSTRICH benchmark. Our prototype is an extension of the OutSystems IDE allowing the annotation of models and their use to produce new models. We also analyse which existing OutSystems sample screens templates can be improved by using and sharing nested templates.

Original languageEnglish
Title of host publicationProceedings - 25th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2022
Place of PublicationNew York
PublisherACM - Association for Computing Machinery
Pages210-220
Number of pages11
ISBN (Electronic)978-145039466-6
DOIs
Publication statusPublished - Oct 2022
Event25th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2022 - Montreal, Canada
Duration: 23 Oct 202228 Oct 2022

Conference

Conference25th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2022
Country/TerritoryCanada
CityMontreal
Period23/10/2228/10/22

Fingerprint

Dive into the research topics of 'Nested OSTRICH: Hatching Compositions of Low-code Templates'. Together they form a unique fingerprint.

Cite this