Automatic Android deprecated-API usage update by learning from single updated example

Due to the deprecation of APIs in the Android operating system, developers have to update usages of the APIs to ensure that their applications work for both the past and current versions of Android. Such updates may be widespread, non-trivial, and time-consuming. Therefore, automation of such update...

Full description

Saved in:
Bibliographic Details
Main Authors: HARYONO, Stefanus A., THUNG, Ferdian, KANG, Hong Jin, SERRANO, Lucas, MULLER, Gilles, LAWALL, Julia, LO, David, JIANG, Lingxiao
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2020
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/5609
https://ink.library.smu.edu.sg/context/sis_research/article/6612/viewcontent/icpc20CocciEvolve.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-6612
record_format dspace
spelling sg-smu-ink.sis_research-66122022-04-21T05:18:51Z Automatic Android deprecated-API usage update by learning from single updated example HARYONO, Stefanus A. THUNG, Ferdian KANG, Hong Jin SERRANO, Lucas MULLER, Gilles LAWALL, Julia LO, David JIANG, Lingxiao Due to the deprecation of APIs in the Android operating system, developers have to update usages of the APIs to ensure that their applications work for both the past and current versions of Android. Such updates may be widespread, non-trivial, and time-consuming. Therefore, automation of such updates will be of great benefit to developers. AppEvolve, which is the state-of-the-art tool for automating such updates, relies on having before- and after-update examples to learn from. In this work, we propose an approach named CocciEvolve that performs such updates using only a single after-update example. CocciEvolve learns edits by extracting the relevant update to a block of code from an after-update example. From preliminary experiments, we find that CocciEvolve can successfully perform 96 out of 112 updates, with a success rate of 85%. 2020-07-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/5609 info:doi/10.1145/3387904.3389285 https://ink.library.smu.edu.sg/context/sis_research/article/6612/viewcontent/icpc20CocciEvolve.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Android API update Program transformation Single example Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Android
API update
Program transformation
Single example
Software Engineering
spellingShingle Android
API update
Program transformation
Single example
Software Engineering
HARYONO, Stefanus A.
THUNG, Ferdian
KANG, Hong Jin
SERRANO, Lucas
MULLER, Gilles
LAWALL, Julia
LO, David
JIANG, Lingxiao
Automatic Android deprecated-API usage update by learning from single updated example
description Due to the deprecation of APIs in the Android operating system, developers have to update usages of the APIs to ensure that their applications work for both the past and current versions of Android. Such updates may be widespread, non-trivial, and time-consuming. Therefore, automation of such updates will be of great benefit to developers. AppEvolve, which is the state-of-the-art tool for automating such updates, relies on having before- and after-update examples to learn from. In this work, we propose an approach named CocciEvolve that performs such updates using only a single after-update example. CocciEvolve learns edits by extracting the relevant update to a block of code from an after-update example. From preliminary experiments, we find that CocciEvolve can successfully perform 96 out of 112 updates, with a success rate of 85%.
format text
author HARYONO, Stefanus A.
THUNG, Ferdian
KANG, Hong Jin
SERRANO, Lucas
MULLER, Gilles
LAWALL, Julia
LO, David
JIANG, Lingxiao
author_facet HARYONO, Stefanus A.
THUNG, Ferdian
KANG, Hong Jin
SERRANO, Lucas
MULLER, Gilles
LAWALL, Julia
LO, David
JIANG, Lingxiao
author_sort HARYONO, Stefanus A.
title Automatic Android deprecated-API usage update by learning from single updated example
title_short Automatic Android deprecated-API usage update by learning from single updated example
title_full Automatic Android deprecated-API usage update by learning from single updated example
title_fullStr Automatic Android deprecated-API usage update by learning from single updated example
title_full_unstemmed Automatic Android deprecated-API usage update by learning from single updated example
title_sort automatic android deprecated-api usage update by learning from single updated example
publisher Institutional Knowledge at Singapore Management University
publishDate 2020
url https://ink.library.smu.edu.sg/sis_research/5609
https://ink.library.smu.edu.sg/context/sis_research/article/6612/viewcontent/icpc20CocciEvolve.pdf
_version_ 1770575529324314624