Safe reuse in modelling language engineering using model subtyping with OCL constraints

SOFTWARE AND SYSTEMS MODELING(2022)

引用 0|浏览0
暂无评分
摘要
Low-code software development promises rapid delivery of software cloud applications by employing domain-specific languages (DSLs), requiring minimal traditional coding. Model-driven engineering (MDE) provides tools, modelling notations and practices suited for engineering such DSLs, both from a syntactic and semantic perspective. However, low-code software development is heavily reliant on software reuse. It is imperative to provide safe mechanisms that guarantee valid semantic reuse of structural components and their behaviour, most often in a stepwise manner. This article presents a semantic reuse technique based on model subtyping over metamodels to manage correct model-driven engineering of DSLs. Model subtyping is generalized to structural semantics by considering OCL constraints. Moreover, model subtyping is generalized to behavioural semantics by considering specifications of model transformation operations, which may encode operational or translational semantics. Model subtyping facilitates structural and behavioural refinement. It has been implemented atop a bounded model checker, realizing a semi-decidable procedure for verifying that DSL elements are safely reused. The algorithm finds semantic witnesses of inconsistencies when refinement principles are not satisfied, fostering a correct stepwise engineering of DSLs. Moreover, the algorithm produces an extension metamodel that permits the as-is reuse of implementations of model transformation operation specifications. Finally, the versatility of the model subtyping technique is illustrated with common use cases extracted from the research literature.
更多
查看译文
关键词
Model subtyping, DSL engineering, Software specification, Stepwise refinement
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要