中文

CHAMELEON:OutSystems 实时双向变换工具

软件工程 2023-05-08 v1 编程语言

摘要

在模型驱动工程中,模型的双向变换在促进不同抽象层级编辑器使用方面起着关键作用。这在 OutSystems 等工业级低代码平台的背景下尤为重要,此类平台具备全面的工具生态系统,通过领域特定构建器和抽象模型查看器对标准集成开发环境进行补充。我们介绍了 CHAMELEON,这是一种能够通过利用简单直观的组件模式以声明式方式动态定义实时双向模型变换的工具。通过该方法,我们可以逐步定义构建于低代码元模型之上的抽象模型的视图与合成路径。我们设计了一种针对树状模型的标准解析器生成技术,该技术基于带有约束和名称绑定器的扩展文法定义。我们允许更大范围的模型模式重叠,这些模式仍可被消歧,从而实现清晰的透镜式变换行为。CHAMELEON 在 OutSystems 语言中面向用户界面定义的片段上进行了评估。为评估性能,我们使用了一组大型真实 OutSystems 应用,包含约 200K 个 UI 组件,以及一个经过筛选的组件模式数据库。我们在基准测试中发现完整模型的最坏情况处理时间为 92ms,这仍适用于交互式模型编辑器的运行。

关键词

引用

@article{arxiv.2305.03361,
  title  = {CHAMELEON: OutSystems Live Bidirectional Transformations},
  author = {Hugo Lourenço and João Costa Seco and Carla Ferreira and Tiago Simões and Vasco Silva and Filipe Assunção and André Menezes},
  journal= {arXiv preprint arXiv:2305.03361},
  year   = {2023}
}