当前位置: X-MOL 学术Empir. Software Eng. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Language usage analysis for EMF metamodels on GitHub
Empirical Software Engineering ( IF 4.1 ) Pub Date : 2023-12-13 , DOI: 10.1007/s10664-023-10368-x
Önder Babur , Eleni Constantinou , Alexander Serebrenik

Context

EMF metamodels lie at the heart of model-based approaches for a variety of tasks, notably for defining the abstract syntax of modeling languages. The language design of EMF metamodels itself is part of a design process, where the needs of its specific range of users should be satisfied. Studying how people actually use the language in the wild would enable empirical feedback for improving the design of the EMF metamodeling language.

Objective

Our goal is to study the language usage of EMF metamodels in public engineered projects on GitHub. We aim to reveal information about the usage of specific language constructs, whether they match the language design. Based on our findings, we plan to suggest improvements in the EMF metamodelling language.

Method

We adopt a sample study research strategy and collect data from the EMF metamodels on GitHub. After a series of preprocessing steps including filtering out non-engineered projects and deduplication, we employ an analytics workflow on top of a graph database to formulate generalizing statements about the artifacts under study. Based on the results, we also give actionable suggestions for the EMF metamodeling language design.

Results

We have conducted various analyses on metaclass, attribute, feature/relationship usage as well as specific parts of the language: annotations and generics. Our findings reveal that the most used metaclasses are not the main building blocks of the language, but rather auxiliary ones. Some of the metaclasses, metaclass features and relations are almost never used. There are a few attributes which are almost exclusively used with a single value or illegal values. Some of the language features such as special forms of generics are very rarely used. Based on our findings, we provide suggestions to improve the EMF language, e.g. removing a language element, restricting its values or refining the metaclass hierarchy.

Conclusions

In this paper, we present an extensive empirical study into the language usage of EMF metamodels on GitHub. We believe this study fills a gap in the literature of model analytics and will hopefully help future improvement of the EMF metamodeling language.



中文翻译:

GitHub 上 EMF 元模型的语言使用分析

语境

EMF 元模型是基于模型的方法的核心,适用于各种任务,特别是定义建模语言的抽象语法。EMF 元模型的语言设计本身是设计过程的一部分,应满足其特定用户范围的需求。研究人们在野外实际使用该语言的方式将为改进 EMF 元建模语言的设计提供经验反馈。

客观的

我们的目标是研究 GitHub 上公共工程项目中 EMF 元模型的语言使用情况。我们的目标是揭示有关特定语言结构的使用的信息,以及它们是否与语言设计相匹配。根据我们的发现,我们计划提出 EMF 元建模语言的改进建议。

方法

我们采用样本研究策略,从 GitHub 上的 EMF 元模型中收集数据。经过一系列预处理步骤(包括过滤掉非工程项目和重复数据删除)后,我们在图形数据库之上采用分析工作流程来制定有关所研究工件的概括语句。根据结果​​,我们还为 EMF 元建模语言设计提供了可行的建议。

结果

我们对元类、属性、特征/关系的使用以及语言的特定部分:注释和泛型进行了各种分析。我们的研究结果表明,最常用的元类不是该语言的主要构建块,而是辅助类。一些元类、元类特征和关系几乎从未被使用过。有一些属性几乎专门与单个值或非法值一起使用。一些语言功能(例如特殊形式的泛型)很少使用。根据我们的发现,我们提供了改进 EMF 语言的建议,例如删除语言元素、限制其值或改进元类层次结构。

结论

在本文中,我们对 GitHub 上的 EMF 元模型的语言使用进行了广泛的实证研究。我们相信这项研究填补了模型分析文献中的空白,并有望帮助 EMF 元建模语言的未来改进。

更新日期:2023-12-14
down
wechat
bug