Johann Mortara, Xhevahire Tërnava, P. Collet, A. Pinna-Dery
{"title":"Extending the identification of object-oriented variability implementations using usage relationships","authors":"Johann Mortara, Xhevahire Tërnava, P. Collet, A. Pinna-Dery","doi":"10.1145/3461002.3473943","DOIUrl":null,"url":null,"abstract":"Many variability-rich object-oriented systems rely on multiple traditional techniques (inheritance, patterns) to implement their variability in a single codebase. These variability implementation places are neither explicit nor documented, hampering their detection and variability comprehension. Based on the identification of symmetry property in seven implementation techniques, a first approach was proposed with symfinder to automatically identify and display the variability of a system in a graph-based visualization structured by inheritance. However, composition, or more generally the usage relationship, is extensively used to implement the variability in object-oriented systems, and without this information, comprehending the large amount of variability identified by symfinder is not trivial. In this paper, we present symfinder-2, an extension of the former approach that incorporates the usage relationships to better identify potential variability implementations. We provide two ways to mark classes as entry points, user-defined and automatic, so that the visualization is filtered and enables users to have a better focus when they identify variability. We also report on the evaluation of this extension to ten open-source Java-based systems.","PeriodicalId":416819,"journal":{"name":"Proceedings of the 25th ACM International Systems and Software Product Line Conference - Volume B","volume":"13 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-09-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 25th ACM International Systems and Software Product Line Conference - Volume B","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3461002.3473943","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5

摘要

许多具有丰富可变性的面向对象系统依赖于多种传统技术(继承、模式)在单个代码库中实现其可变性。这些可变性实现位置既不显式也没有文档化,妨碍了它们的检测和可变性理解。在对7种实现技术中对称特性识别的基础上,提出了一种基于对称查找器的系统可变性自动识别和显示方法。然而,组合,或者更一般地说,使用关系,被广泛用于实现面向对象系统中的可变性,如果没有这些信息,理解由symfinder识别的大量可变性并不是微不足道的。在本文中,我们提出了symfinder-2,它是前一种方法的扩展,它结合了使用关系,以更好地识别潜在的可变性实现。我们提供了两种将类标记为入口点的方法,一种是用户定义的,另一种是自动的,这样可以过滤可视化,使用户在识别可变性时能够更好地关注。我们还报告了该扩展在10个基于java的开源系统中的评估情况。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Extending the identification of object-oriented variability implementations using usage relationships
Many variability-rich object-oriented systems rely on multiple traditional techniques (inheritance, patterns) to implement their variability in a single codebase. These variability implementation places are neither explicit nor documented, hampering their detection and variability comprehension. Based on the identification of symmetry property in seven implementation techniques, a first approach was proposed with symfinder to automatically identify and display the variability of a system in a graph-based visualization structured by inheritance. However, composition, or more generally the usage relationship, is extensively used to implement the variability in object-oriented systems, and without this information, comprehending the large amount of variability identified by symfinder is not trivial. In this paper, we present symfinder-2, an extension of the former approach that incorporates the usage relationships to better identify potential variability implementations. We provide two ways to mark classes as entry points, user-defined and automatic, so that the visualization is filtered and enables users to have a better focus when they identify variability. We also report on the evaluation of this extension to ten open-source Java-based systems.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信