Recommending Adaptive Changes for Framework Evolution

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 challengin...

Full description

Saved in:
Bibliographic Details
Published inACM transactions on software engineering and methodology Vol. 20; no. 4; pp. 1 - 35
Main Authors Dagenais, Barthélémy, Robillard, Martin P.
Format Journal Article
LanguageEnglish
Published 01.09.2011
Subjects
Online AccessGet full text

Cover

Loading…
Abstract 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.
AbstractList 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.
Author Dagenais, Barthélémy
Robillard, Martin P.
Author_xml – sequence: 1
  givenname: Barthélémy
  surname: Dagenais
  fullname: Dagenais, Barthélémy
  organization: McGill University
– sequence: 2
  givenname: Martin P.
  surname: Robillard
  fullname: Robillard, Martin P.
  organization: McGill University
BookMark eNp1kM1LAzEUxINUsK2eve7N07b53GyOpbQqFARR8BbS7Nu6upvUZLfif29KexI8zTvMb3gzEzRy3gFCtwTPCOFiTjHGUqnZUUssLtCYCCFzyRQdpRtzlTNG3q7QJMYPjAnDlI-ReAbruw5c1bhdtqjMvm8OkC3fjdtBzGofsnUwHXz78JmtDr4d-sa7a3RZmzbCzVmn6HW9elk-5Jun-8flYpNbKlmfC1EYWnMDphAV3woQMilnZU2VMIbVrJCU2LIg3KaHFBRqyytcbWXylIKyKbo75e6D_xog9rprooW2NQ78ELUqWKlEqpic85PTBh9jgFrvQ9OZ8KMJ1sd99Hkffd4nEeIPYZveHNv1wTTtv9wv_r1ozg
CitedBy_id crossref_primary_10_1007_s10664_014_9317_9
crossref_primary_10_1007_s11432_019_2745_5
crossref_primary_10_1007_s10664_022_10131_8
crossref_primary_10_1016_j_infsof_2024_107568
crossref_primary_10_1007_s11219_017_9358_6
crossref_primary_10_7256_2454_0714_2022_1_34337
crossref_primary_10_1142_S0218194024500505
crossref_primary_10_1007_s10270_024_01245_2
crossref_primary_10_1109_TSE_2014_2347969
crossref_primary_10_1109_TSE_2023_3346474
crossref_primary_10_1016_j_asoc_2020_106140
crossref_primary_10_1109_TSE_2023_3278129
crossref_primary_10_1007_s13748_018_0147_7
crossref_primary_10_1145_3643755
crossref_primary_10_1109_TSE_2020_3032557
crossref_primary_10_26634_jmt_5_1_14788
crossref_primary_10_1145_3721127
crossref_primary_10_1007_s10664_015_9411_7
crossref_primary_10_1109_TSE_2012_63
crossref_primary_10_1145_3428255
crossref_primary_10_1016_j_cosrev_2025_100732
crossref_primary_10_1109_TSC_2015_2466544
crossref_primary_10_1109_TSE_2019_2901459
crossref_primary_10_1049_iet_sen_2018_5356
crossref_primary_10_1145_3485538
crossref_primary_10_1007_s10664_019_09764_z
crossref_primary_10_1016_j_infsof_2024_107588
crossref_primary_10_1002_smr_2181
Cites_doi 10.1109/ESEM.2007.63
10.1145/1449764.1449790
10.1109/ASE.2006.41
10.1109/TSE.2005.72
10.1109/ICSE.2007.20
10.1109/52.991326
10.1109/ICSE.2007.71
10.1145/1287624.1287651
10.1007/11785477_24
10.1109/2.675630
10.1109/ICSE.2009.5070531
10.1109/WCRE.2008.15
10.1145/1181775.1181777
10.1145/1368088.1368154
10.1145/1062455.1062512
10.1109/TSE.2006.117
10.1002/smr.v18:2
10.1142/S0218194006002707
10.1109/WCRE.2005.33
10.1109/ICSM.2006.35
10.1109/52.922731
10.1007/978-3-642-00593-0_12
10.1109/TSE.2005.28
10.1145/1368088.1368153
10.1109/ICSE.2009.5070565
10.1109/TSE.2007.70731
10.1145/1188835.1188847
ContentType Journal Article
DBID AAYXX
CITATION
7SC
8FD
JQ2
L7M
L~C
L~D
DOI 10.1145/2000799.2000805
DatabaseName CrossRef
Computer and Information Systems Abstracts
Technology Research Database
ProQuest Computer Science Collection
Advanced Technologies Database with Aerospace
Computer and Information Systems Abstracts – Academic
Computer and Information Systems Abstracts Professional
DatabaseTitle CrossRef
Computer and Information Systems Abstracts
Technology Research Database
Computer and Information Systems Abstracts – Academic
Advanced Technologies Database with Aerospace
ProQuest Computer Science Collection
Computer and Information Systems Abstracts Professional
DatabaseTitleList CrossRef
Computer and Information Systems Abstracts
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1557-7392
EndPage 35
ExternalDocumentID 10_1145_2000799_2000805
GroupedDBID --Z
-DZ
-~X
.4S
.DC
23M
4.4
5GY
5VS
6J9
8US
9M8
AAHTB
AAKMM
AALFJ
AAYFX
AAYXX
ABPEJ
ABPPZ
ACGFO
ACGOD
ACM
ADBCU
ADL
ADMHC
ADMLS
AEBYY
AEFXT
AEJOY
AENEX
AENSD
AETEA
AFFNX
AFWIH
AFWXC
AI.
AIAGR
AIKLT
AKRVB
ALMA_UNASSIGNED_HOLDINGS
ARCSS
ASPBG
AVWKF
BDXCO
CCLIF
CITATION
CS3
D0L
EBS
EDO
EJD
FEDTE
GUFHI
HF~
HGAVV
H~9
I07
LHSKQ
MVM
P1C
P2P
PQQKQ
RNS
ROL
TUS
UPT
VH1
XOL
XSW
YR2
ZCA
7SC
8FD
JQ2
L7M
L~C
L~D
ID FETCH-LOGICAL-c273t-556a2f4aea65d4b5e575d4438f295aa3f36721c8614c0139e69b4d0db74388523
ISSN 1049-331X
IngestDate Fri Jul 11 13:32:17 EDT 2025
Thu Apr 24 22:58:30 EDT 2025
Tue Aug 05 12:01:40 EDT 2025
IsDoiOpenAccess false
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
Issue 4
Language English
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-c273t-556a2f4aea65d4b5e575d4438f295aa3f36721c8614c0139e69b4d0db74388523
Notes ObjectType-Article-2
SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 23
PQID 963895739
PQPubID 23500
PageCount 35
ParticipantIDs proquest_miscellaneous_963895739
crossref_primary_10_1145_2000799_2000805
crossref_citationtrail_10_1145_2000799_2000805
PublicationCentury 2000
PublicationDate 2011-09-00
20110901
PublicationDateYYYYMMDD 2011-09-01
PublicationDate_xml – month: 09
  year: 2011
  text: 2011-09-00
PublicationDecade 2010
PublicationTitle ACM transactions on software engineering and methodology
PublicationYear 2011
References e_1_2_1_20_1
e_1_2_1_23_1
e_1_2_1_21_1
e_1_2_1_22_1
e_1_2_1_27_1
e_1_2_1_28_1
e_1_2_1_25_1
e_1_2_1_26_1
Zimmermann T. (e_1_2_1_31_1)
e_1_2_1_29_1
Nystrom N. (e_1_2_1_24_1)
e_1_2_1_7_1
e_1_2_1_8_1
e_1_2_1_30_1
e_1_2_1_5_1
e_1_2_1_6_1
e_1_2_1_12_1
e_1_2_1_4_1
e_1_2_1_13_1
e_1_2_1_1_1
e_1_2_1_10_1
e_1_2_1_2_1
Chow K. (e_1_2_1_3_1)
e_1_2_1_11_1
e_1_2_1_32_1
e_1_2_1_16_1
e_1_2_1_17_1
e_1_2_1_14_1
e_1_2_1_15_1
e_1_2_1_9_1
e_1_2_1_18_1
e_1_2_1_19_1
References_xml – ident: e_1_2_1_25_1
  doi: 10.1109/ESEM.2007.63
– ident: e_1_2_1_4_1
  doi: 10.1145/1449764.1449790
– volume-title: Proceedings of the 12th International Conference on Compiler Construction. 138--152
  ident: e_1_2_1_24_1
– ident: e_1_2_1_28_1
  doi: 10.1109/ASE.2006.41
– ident: e_1_2_1_32_1
  doi: 10.1109/TSE.2005.72
– ident: e_1_2_1_20_1
  doi: 10.1109/ICSE.2007.20
– ident: e_1_2_1_13_1
  doi: 10.1109/52.991326
– ident: e_1_2_1_11_1
  doi: 10.1109/ICSE.2007.71
– volume-title: Proceedings of the International Conference on Software Maintenance. 359--369
  ident: e_1_2_1_3_1
– ident: e_1_2_1_23_1
– ident: e_1_2_1_7_1
  doi: 10.1145/1287624.1287651
– ident: e_1_2_1_10_1
  doi: 10.1007/11785477_24
– ident: e_1_2_1_30_1
  doi: 10.1109/2.675630
– ident: e_1_2_1_19_1
  doi: 10.1109/ICSE.2009.5070531
– ident: e_1_2_1_26_1
  doi: 10.1109/WCRE.2008.15
– volume-title: Proceedings of the International Workshop on Mining Software Repositories.
  ident: e_1_2_1_31_1
– ident: e_1_2_1_18_1
  doi: 10.1145/1181775.1181777
– ident: e_1_2_1_5_1
  doi: 10.1145/1368088.1368154
– ident: e_1_2_1_15_1
  doi: 10.1145/1062455.1062512
– ident: e_1_2_1_16_1
  doi: 10.1109/TSE.2006.117
– ident: e_1_2_1_9_1
  doi: 10.1002/smr.v18:2
– ident: e_1_2_1_29_1
  doi: 10.1142/S0218194006002707
– ident: e_1_2_1_21_1
  doi: 10.1109/WCRE.2005.33
– ident: e_1_2_1_1_1
  doi: 10.1109/ICSM.2006.35
– ident: e_1_2_1_22_1
  doi: 10.1109/52.922731
– ident: e_1_2_1_8_1
– ident: e_1_2_1_17_1
  doi: 10.1007/978-3-642-00593-0_12
– ident: e_1_2_1_14_1
  doi: 10.1109/TSE.2005.28
– ident: e_1_2_1_27_1
  doi: 10.1145/1368088.1368153
– ident: e_1_2_1_6_1
  doi: 10.1109/ICSE.2009.5070565
– ident: e_1_2_1_12_1
  doi: 10.1109/TSE.2007.70731
– ident: e_1_2_1_2_1
  doi: 10.1145/1188835.1188847
SSID ssj0013024
Score 2.2790363
Snippet In the course of a framework’s evolution, changes ranging from a simple refactoring to a complete rearchitecture can break client programs. Finding suitable...
In the course of a framework's evolution, changes ranging from a simple refactoring to a complete rearchitecture can break client programs. Finding suitable...
SourceID proquest
crossref
SourceType Aggregation Database
Enrichment Source
Index Database
StartPage 1
SubjectTerms Adaptation
Breaking
Change detection
Evolution
Freeware
Libraries
Software engineering
Tasks
Title Recommending Adaptive Changes for Framework Evolution
URI https://www.proquest.com/docview/963895739
Volume 20
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV1La9tAEF5a-9JLm_RB3SZlDz0UglxZuytpj86LUOpSaAK5iX2MToliGqeB_PrOPvSw20CSi2yEvEiazzOzM_PNEPI5LR270kICDNKEz4zGv5StE2HtTNYmBenbLi5-5Cdn_Nu5OO9D2Z5dstJTc_dfXslTpIrnUK6OJfsIyXaL4gn8jvLFI0oYjw-Ssds7Xl5CIKbMrVr6OqBAGPB9FpxfGmqv9o7-xFsZuqPzg4UbEtFODPepg2tUzLeuHgz6VoU-xRCGTa-F4Q9RGzUqtCnYV67Y0OfdL8JHT5ZwLDPEWyijD50L9n5OhxEHF0KVbcQhKEncVSSM-VE3aEOi4hRFUjC5plmzdIAgPlCTs4G9Dd1K_tXk3DW9cESiQgZCUZmK3mi1ifoNW9ZVGAa-tajiAlVc4DkZZ7ifyEZkPD9cfP_VJ5zSMP-4fbTYBQqX-LpxD-sOzLr99k7J6RZ5GXcTdB6gsU2eQfOavGonddCouN8QMUQKbZFCI1IoIoV2SKEdUt6Ss-Oj04OTJA7MSAx6oatEiFxlNVegcmG5FoC-uOWclXUmhVKsZjlu-E2JLplxrj_kUnObWo1uZFmKjL0jo-aqgfeEagnKxQbKHGZcp3ihMbnSWVaYAiBnEzJt30JlYjd5N9TkorrnzU_Il-4Hy9BI5f5LaftaK1R2LoOlGri6ua6ctZACYfbh4at9JC96EO-Q0er3DeyiI7nSnyII_gKuP20Z
linkProvider EBSCOhost
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Recommending+Adaptive+Changes+for+Framework+Evolution&rft.jtitle=ACM+transactions+on+software+engineering+and+methodology&rft.au=Dagenais%2C+Barth%C3%A9l%C3%A9my&rft.au=Robillard%2C+Martin+P.&rft.date=2011-09-01&rft.issn=1049-331X&rft.eissn=1557-7392&rft.volume=20&rft.issue=4&rft.spage=1&rft.epage=35&rft_id=info:doi/10.1145%2F2000799.2000805&rft.externalDBID=n%2Fa&rft.externalDocID=10_1145_2000799_2000805
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1049-331X&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1049-331X&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1049-331X&client=summon