arrow
返回

Search-based detection of model level changes

delete2016-09-22
delete20
PRE
AI
M
Marouane Kessentini *
U
Usman Mansoor
M
Manuel Wimmer
A
Ali Ouni
K
Kalyanmoy Deb
DOI:10.1007/s10664-016-9442-8delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Software models, defined as code abstractions, are iteratively refined, restructured, and evolved due to many reasons such as reflecting changes in requirements or modifying a design to enhance existing features. For understanding the evolution of a model a-posteriori, change detection approaches have been proposed for models. The majority of existing approaches are successful to detect atomic changes. However, composite changes, such as refactorings, are difficult to detect due to several possible combinations of atomic changes or eventually hidden changes in intermediate model versions that may be no longer available. Moreover, a multitude of refactoring sequences may be used to describe the same model evolution. In this paper, we propose a multi-objective approach to detect model changes as a sequence of refactorings. Our approach takes as input an exhaustive list of possible types of model refactoring operations, the initial model, and the revised model, and generates as output a list of refactoring applications representing a good compromise between the following two objectives (i) maximize the similarity between the expected revised model and the generated model after applying the refactoring sequence on the initial model, and (ii) minimize the number of atomic changes used to describe the evolution. In fact, minimizing the number of atomic changes can important since it is maybe easier for a designer to understand and analyze a sequence of refactorings (composite model changes) rather than an equivalent large list of atomic changes (Weissgerber and Diehl 2006). Due to the huge number of possible refactoring sequences, a metaheuristic search method is used to explore the space of possible solutions. To this end, we use the non-dominated sorting genetic algorithm (NSGA-II) to find the best trade-off between our two objectives. The paper reports on the results of an empirical study of our multi-objective model changes detection technique as applied on various versions of real-world models taken from open source projects and one industrial project. We compared our approach to the simple deterministic greedy algorithm, multi-objective particle swarm optimization (MOPSO), an existing mono-objective changes detection approach, and two model changes detection tools not based on computational search. The statistical test results provide evidence to support the claim that our proposal enables the generation of changes detection solutions with correctness higher than 85 %, in average, using a variety of real-world scenarios.
Keyword:
Search-based software engineering
Software maintenance
Multi-objective optimization
Model changes detection
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

Empirical Software Engineering 封面图
Empirical Software Engineering
IF:
3.6
论文数:
2.0K
被引数:
5.3K

机构

T
Technische Universitat Wien
学者数:
1.3W
论文数: 1.1W
被引数: 21
T
the university of osaka
学者数:
2.8W
论文数: 1.8W
被引数: 6
U
University of Michigan
学者数:
6.4W
论文数: 5.3W
被引数: 124
U
university of michigan system
学者数:
9.1W
论文数: 8.6W
被引数: 133
学者 查看更多机构
引用论文

引用论文

MOMM: Multi-objective model merging
err2015-05-01
err27
PREAI
errMansoor, Usman; Kessentini, Marouane; Langer, Philip; Wimmer, Manuel; Bechikh, Slim; Deb, Kalyanmoy
err分享
err收藏
err分享
err收藏
err分享
err收藏
err分享
err收藏
err分享
err收藏
Late Quaternary folding in the Jura Mountains: evidence from syn-erosional deformation of fluvial meanders
err2010-04-01
err0
PREAI
errHerfried Madritsch; Frank Preusser; Olivier Fabbri; Vincent Bichet; Fritz Schlunegger; Stefan M. Schmid
err分享
err收藏
学者 查看更多内容