Recommending Adaptive Changes for Framework Evolution
Author(s) -
Barthélémy Dagenais,
Martin P. Robillard
Publication year - 2011
Publication title -
acm transactions on software engineering and methodology
Language(s) - English
Resource type - Book series
SCImago Journal Rank - 0.597
H-Index - 78
eISSN - 1557-7392
pISSN - 1049-331X
ISBN - 978-1-60558-079-1
DOI - 10.1145/2000799.2000805
Subject(s) - code refactoring , computer science , software evolution , software engineering , open source , simple (philosophy) , software development , programming language , software , software construction , philosophy , epistemology
In the course of a framework’s evolution, changes ranging from a simple refactoring to a complete rearchitecture can break client programs. Finding suitable replacements for framework elements that were accessed by a client program and deleted as part of the framework’s evolution can be a challenging task. We present a recommendation system, SemDiff, that suggests adaptations to client programs by analyzing how a framework was adapted to its own changes. In a study of the evolution of one open source framework and three client programs, our approach recommended relevant adaptive changes with a high level of precision. In a second study of the evolution of two frameworks, we found that related change detection approaches were better at discovering systematic changes and that SemDiff was complementary to these approaches by detecting non-trivial changes such as when a functionality is imported from an external library.
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom