AndroEvolve: automated Android API update with data flow analysis and variable denormalization
The Android operating system is frequently updated, with each version bringing a new set of APIs. New versions may involve API deprecation; Android apps using deprecated APIs need to be updated to ensure the apps’ compatibility with old and new Android versions. Updating deprecated APIs is a time-co...
Uloženo v:
| Vydáno v: | Empirical software engineering : an international journal Ročník 27; číslo 3 |
|---|---|
| Hlavní autoři: | , , , , , , , |
| Médium: | Journal Article |
| Jazyk: | angličtina |
| Vydáno: |
New York
Springer US
01.05.2022
Springer Nature B.V Springer Verlag |
| Témata: | |
| ISSN: | 1382-3256, 1573-7616 |
| On-line přístup: | Získat plný text |
| Tagy: |
Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
|
| Abstract | The Android operating system is frequently updated, with each version bringing a new set of APIs. New versions may involve API deprecation; Android apps using deprecated APIs need to be updated to ensure the apps’ compatibility with old and new Android versions. Updating deprecated APIs is a time-consuming endeavor. Hence, automating the updates of Android APIs can be beneficial for developers. CocciEvolve is the state-of-the-art approach for this automation. However, it has several limitations, including its inability to resolve out-of-method variables and the low code readability of its updates due to the addition of temporary variables. In an attempt to further improve the performance of automated Android API update, we propose an approach named AndroEvolve, that addresses the limitations of CocciEvolve through the addition of data flow analysis and variable name denormalization. Data flow analysis enables AndroEvolve to resolve the value of any variable within the file scope. Variable name denormalization replaces temporary variables that may present in the CocciEvolve update with appropriate values in the target file. We have evaluated the performance of AndroEvolve and the readability of its updates on 372 target files containing 565 deprecated API usages. Each target file represents a file from an Android application that uses a deprecated API in its code. AndroEvolve successfully updates 481 out of 565 deprecated API invocations correctly, achieving an accuracy of 85.1%. Compared to CocciEvolve, AndroEvolve produces 32.9% more instances of correct updates. Moreover, our manual and automated evaluation shows that AndroEvolve updates are more readable than CocciEvolve updates. |
|---|---|
| AbstractList | The Android operating system is frequently updated, with each version bringing a new set of APIs. New versions may involve API deprecation; Android apps using deprecated APIs need to be updated to ensure the apps’ compatibility with old and new Android versions. Updating deprecated APIs is a time-consuming endeavor. Hence, automating the updates of Android APIs can be beneficial for developers. CocciEvolve is the state-of-the-art approach for this automation. However, it has several limitations, including its inability to resolve out-of-method variables and the low code readability of its updates due to the addition of temporary variables. In an attempt to further improve the performance of automated Android API update, we propose an approach named AndroEvolve, that addresses the limitations of CocciEvolve through the addition of data flow analysis and variable name denormalization. Data flow analysis enables AndroEvolve to resolve the value of any variable within the file scope. Variable name denormalization replaces temporary variables that may present in the CocciEvolve update with appropriate values in the target file. We have evaluated the performance of AndroEvolve and the readability of its updates on 372 target files containing 565 deprecated API usages. Each target file represents a file from an Android application that uses a deprecated API in its code. AndroEvolve successfully updates 481 out of 565 deprecated API invocations correctly, achieving an accuracy of 85.1%. Compared to CocciEvolve, AndroEvolve produces 32.9% more instances of correct updates. Moreover, our manual and automated evaluation shows that AndroEvolve updates are more readable than CocciEvolve updates. |
| ArticleNumber | 73 |
| Author | Lo, David Jiang, Lingxiao Haryono, Stefanus A. Serrano, Lucas Thung, Ferdian Lawall, Julia Kang, Hong Jin Muller, Gilles |
| Author_xml | – sequence: 1 givenname: Stefanus A. orcidid: 0000-0003-1625-3777 surname: Haryono fullname: Haryono, Stefanus A. email: stefanusah@smu.edu.sg organization: School of Computing and Information Systems, Singapore Management University – sequence: 2 givenname: Ferdian surname: Thung fullname: Thung, Ferdian organization: School of Computing and Information Systems, Singapore Management University – sequence: 3 givenname: David surname: Lo fullname: Lo, David organization: School of Computing and Information Systems, Singapore Management University – sequence: 4 givenname: Lingxiao surname: Jiang fullname: Jiang, Lingxiao organization: School of Computing and Information Systems, Singapore Management University – sequence: 5 givenname: Julia orcidid: 0000-0002-1684-1264 surname: Lawall fullname: Lawall, Julia organization: Inria – sequence: 6 givenname: Hong Jin surname: Kang fullname: Kang, Hong Jin organization: School of Computing and Information Systems, Singapore Management University – sequence: 7 givenname: Lucas surname: Serrano fullname: Serrano, Lucas organization: Sorbonne University/Inria/LIP6 – sequence: 8 givenname: Gilles orcidid: 0000-0002-0000-8569 surname: Muller fullname: Muller, Gilles organization: Inria |
| BackLink | https://inria.hal.science/hal-03921758$$DView record in HAL |
| BookMark | eNp9kD9PwzAQxS1UJErhCzBZYmII-E9iJ2wVAlqpEgywYl1ih7pK42Knrcqnx21ASAxMd376Pd_dO0WD1rUGoQtKrikh8iZQIkSaEEaT-C5EQo7QkGaSJ1JQMYg9z1nCWSZO0GkICxIhmWZD9DZutXf3G9dszC2GdeeW0BmND7KN9XmK1ysdNby13RzHDnDduC2GFppdsCE2Gm_AWygbg7VpnV9CYz-hs649Q8c1NMGcf9cRen24f7mbJLOnx-ndeJZUvJBdQqmhJcsqDVwUmaGkrtJK5qQiZaFJKSQpuZG0FqkEWvOSSMZKoTUruJa6AD5CV_2_c2jUytsl-J1yYNVkPFN7jfCCUZnlGxrZy55defexNqFTC7f28ZqgmEhJJnie55HKe6ryLgRvalXZ7nBT58E2ihK1T171yauYvDokHyeNEPtj_dnoXxPvTSHC7bvxv1v94_oCxHSXbw |
| CitedBy_id | crossref_primary_10_1145_3641848 crossref_primary_10_1109_TSE_2023_3278129 crossref_primary_10_1145_3715787 crossref_primary_10_1016_j_infsof_2025_107782 crossref_primary_10_1145_3643755 |
| Cites_doi | 10.1109/SANER.2016.99 10.1109/SANER48275.2020.9054860 10.1109/ICSM.2015.7332471 10.1145/3213846.3213857 10.1145/3345628 10.1109/WCRE.2012.18 10.1145/2950290.2950298 10.1109/TSE.2009.70 10.1145/2508075.2508093 10.1145/3387904.3389285 10.1145/3196398.3196419 10.1109/TSE.2019.2911283 10.1145/1594834.1480897 10.1109/ICSM.2013.18 10.1037/h0026256 10.1109/ICPC.2016.7503707 10.1109/ICSE.2013.6606554 10.1109/ICSE.2013.6606596 10.1145/2393596.2393662 10.1145/3361242.3361246 10.2307/2529310 10.1109/SP.2014.33 10.1145/2970276.2970312 10.1002/smr.1958 10.1002/smr.1845 10.2307/2982890 10.1109/TSE.1984.5010248 10.1145/258915.258930 10.1145/1854273.1854327 10.1145/1357010.1352618 10.1145/2480362.2480706 10.1109/ACCESS.2020.3025460 10.1145/2678015.2682534 10.1109/ICSE.2013.6606707 10.1109/ICSE.2017.44 10.1016/j.infsof.2018.07.006 10.1109/SANER48275.2020.9054809 10.1145/3197231.3197258 10.1007/3-540-45127-7_27 10.1145/1985441.1985454 10.1109/PACT.1997.644007 10.1109/ASE.2017.8115654 10.1145/3293882.3330571 |
| ContentType | Journal Article |
| Copyright | The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature 2022 The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature 2022. Distributed under a Creative Commons Attribution 4.0 International License |
| Copyright_xml | – notice: The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature 2022 – notice: The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature 2022. – notice: Distributed under a Creative Commons Attribution 4.0 International License |
| DBID | AAYXX CITATION 7SC 8FD 8FE 8FG ABJCF AFKRA ARAPS BENPR BGLVJ CCPQU DWQXO HCIFZ JQ2 L6V L7M L~C L~D M7S P5Z P62 PHGZM PHGZT PKEHL PQEST PQGLB PQQKQ PQUKI PRINS PTHSS S0W 1XC VOOES |
| DOI | 10.1007/s10664-021-10096-0 |
| DatabaseName | CrossRef Computer and Information Systems Abstracts Technology Research Database ProQuest SciTech Collection ProQuest Technology Collection Materials Science & Engineering Collection ProQuest Central Advanced Technologies & Computer Science Collection ProQuest Central ProQuest Technology Collection ProQuest One Community College ProQuest Central SciTech Premium Collection ProQuest Computer Science Collection ProQuest Engineering Collection Advanced Technologies Database with Aerospace Computer and Information Systems Abstracts Academic Computer and Information Systems Abstracts Professional Engineering Database Advanced Technologies & Aerospace Database ProQuest Advanced Technologies & Aerospace Collection ProQuest Central Premium ProQuest One Academic (New) ProQuest One Academic Middle East (New) ProQuest One Academic Eastern Edition (DO NOT USE) ProQuest One Applied & Life Sciences ProQuest One Academic (retired) ProQuest One Academic UKI Edition ProQuest Central China Engineering Collection DELNET Engineering & Technology Collection Hyper Article en Ligne (HAL) Hyper Article en Ligne (HAL) (Open Access) |
| DatabaseTitle | CrossRef Technology Collection Technology Research Database Computer and Information Systems Abstracts – Academic ProQuest One Academic Middle East (New) ProQuest Advanced Technologies & Aerospace Collection ProQuest Computer Science Collection Computer and Information Systems Abstracts SciTech Premium Collection ProQuest One Community College ProQuest Central China ProQuest Central ProQuest One Applied & Life Sciences ProQuest Engineering Collection ProQuest Central Korea ProQuest Central (New) Advanced Technologies Database with Aerospace Engineering Collection Advanced Technologies & Aerospace Collection Engineering Database ProQuest One Academic Eastern Edition ProQuest Technology Collection ProQuest SciTech Collection Computer and Information Systems Abstracts Professional Advanced Technologies & Aerospace Database ProQuest One Academic UKI Edition ProQuest DELNET Engineering and Technology Collection Materials Science & Engineering Collection ProQuest One Academic ProQuest One Academic (New) |
| DatabaseTitleList | Technology Collection |
| Database_xml | – sequence: 1 dbid: BENPR name: ProQuest Central url: https://www.proquest.com/central sourceTypes: Aggregation Database |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 1573-7616 |
| ExternalDocumentID | oai:HAL:hal-03921758v1 10_1007_s10664_021_10096_0 |
| GroupedDBID | -4Z -59 -5G -BR -EM -Y2 -~C .86 .DC .VR 06D 0R~ 0VY 199 1N0 1SB 2.D 203 28- 29G 2J2 2JN 2JY 2KG 2LR 2P1 2VQ 2~H 30V 4.4 406 408 409 40D 40E 5GY 5QI 5VS 67Z 6NX 78A 8FE 8FG 8TC 8UJ 95- 95. 95~ 96X AABHQ AACDK AAHNG AAIAL AAJBT AAJKR AANZL AAOBN AARHV AARTL AASML AATNV AATVU AAUYE AAWCG AAYIU AAYOK AAYQN AAYTO AAYZH ABAKF ABBBX ABBXA ABDZT ABECU ABFTD ABFTV ABHLI ABHQN ABJCF ABJNI ABJOX ABKCH ABKTR ABMNI ABMQK ABNWP ABQBU ABQSL ABSXP ABTEG ABTHY ABTKH ABTMW ABULA ABWNU ABXPI ACAOD ACBXY ACDTI ACGFS ACHSB ACHXU ACIWK ACKNC ACMDZ ACMLO ACOKC ACOMO ACPIV ACSNA ACZOJ ADHHG ADHIR ADIMF ADINQ ADKNI ADKPE ADRFC ADTPH ADURQ ADYFF ADZKW AEBTG AEFIE AEFQL AEGAL AEGNC AEJHL AEJRE AEKMD AEMSY AENEX AEOHA AEPYU AESKC AETLH AEVLU AEXYK AFBBN AFEXP AFGCZ AFKRA AFLOW AFQWF AFWTZ AFZKB AGAYW AGDGC AGGDS AGJBK AGMZJ AGQEE AGQMX AGRTI AGWIL AGWZB AGYKE AHAVH AHBYD AHKAY AHSBF AHYZX AIAKS AIGIU AIIXL AILAN AITGF AJBLW AJRNO AJZVZ ALMA_UNASSIGNED_HOLDINGS ALWAN AMKLP AMXSW AMYLF AMYQR AOCGG ARAPS ARMRJ ASPBG AVWKF AXYYD AYJHY AZFZN B-. BA0 BBWZM BDATZ BENPR BGLVJ BGNMA BSONS CAG CCPQU COF CS3 CSCUP DDRTE DL5 DNIVK DPUIP DU5 EBLON EBS EIOEI EJD ESBYG FEDTE FERAY FFXSO FIGPU FINBP FNLPD FRRFC FSGXE FWDCC GGCAI GGRSB GJIRD GNWQR GQ6 GQ7 GQ8 GXS H13 HCIFZ HF~ HG5 HG6 HMJXF HQYDN HRMNR HVGLF HZ~ I09 IHE IJ- IKXTQ ITM IWAJR IXC IZIGR IZQ I~X I~Z J-C J0Z JBSCW JCJTX JZLTJ KDC KOV KOW L6V LAK LLZTM M4Y M7S MA- N2Q NB0 NDZJH NPVJJ NQJWS NU0 O9- O93 O9G O9I O9J OAM P19 P62 P9O PF0 PT4 PT5 PTHSS Q2X QOK QOS R4E R89 R9I RHV RNI RNS ROL RPX RSV RZC RZE RZK S0W S16 S1Z S26 S27 S28 S3B SAP SCJ SCLPG SCO SDH SDM SHX SISQX SJYHP SNE SNPRN SNX SOHCF SOJ SPISZ SRMVM SSLCW STPWE SZN T13 T16 TSG TSK TSV TUC U2A UG4 UOJIU UTJUX UZXMN VC2 VFIZW W23 W48 WK8 YLTOR Z45 Z7R Z7S Z7V Z7X Z7Z Z81 Z83 Z86 Z88 Z8M Z8N Z8P Z8R Z8T Z8U Z8W Z92 ZMTXR ~EX AAPKM AAYXX ABBRH ABDBE ABFSG ABRTQ ACSTC ADHKG AEZWR AFDZB AFFHD AFHIU AFOHR AGQPQ AHPBZ AHWEU AIXLP ATHPR AYFIA CITATION PHGZM PHGZT PQGLB 7SC 8FD DWQXO JQ2 L7M L~C L~D PKEHL PQEST PQQKQ PQUKI PRINS 1XC VOOES |
| ID | FETCH-LOGICAL-c397t-11e1b25cda3695e10fc4c780c0b9d0b670b3e71f647a1f3b0722b6dd293d7d9a3 |
| IEDL.DBID | RSV |
| ISICitedReferencesCount | 11 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000770339500015&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 1382-3256 |
| IngestDate | Tue Oct 28 06:39:00 EDT 2025 Tue Dec 02 15:55:22 EST 2025 Sat Nov 29 05:37:45 EST 2025 Tue Nov 18 21:55:52 EST 2025 Fri Feb 21 02:46:06 EST 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | 3 |
| Keywords | API deprecation API update Data flow analysis Readability Program transformation Android |
| Language | English |
| License | Distributed under a Creative Commons Attribution 4.0 International License: http://creativecommons.org/licenses/by/4.0 |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c397t-11e1b25cda3695e10fc4c780c0b9d0b670b3e71f647a1f3b0722b6dd293d7d9a3 |
| Notes | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 14 |
| ORCID | 0000-0003-1625-3777 0000-0002-0000-8569 0000-0002-1684-1264 |
| OpenAccessLink | https://inria.hal.science/hal-03921758 |
| PQID | 2640563888 |
| PQPubID | 326341 |
| ParticipantIDs | hal_primary_oai_HAL_hal_03921758v1 proquest_journals_2640563888 crossref_citationtrail_10_1007_s10664_021_10096_0 crossref_primary_10_1007_s10664_021_10096_0 springer_journals_10_1007_s10664_021_10096_0 |
| PublicationCentury | 2000 |
| PublicationDate | 2022-05-01 |
| PublicationDateYYYYMMDD | 2022-05-01 |
| PublicationDate_xml | – month: 05 year: 2022 text: 2022-05-01 day: 01 |
| PublicationDecade | 2020 |
| PublicationPlace | New York |
| PublicationPlace_xml | – name: New York – name: Dordrecht |
| PublicationSubtitle | An International Journal |
| PublicationTitle | Empirical software engineering : an international journal |
| PublicationTitleAbbrev | Empir Software Eng |
| PublicationYear | 2022 |
| Publisher | Springer US Springer Nature B.V Springer Verlag |
| Publisher_xml | – name: Springer US – name: Springer Nature B.V – name: Springer Verlag |
| References | BuseRWeimerWLearning a metric for code readabilityIEEE Trans Softw Eng20103654655810.1109/TSE.2009.70 Haryono SA, Thung F, Kang HJ, Serrano L, Muller G, Lawall J, Lo D, Jiang L (2020) Automatic Android deprecated-API usage update by learning from single updated example. In: IEEE International Conference on Program Comprehension LandisJRKochGGThe measurement of observer agreement for categorical dataBiometrics197733115917410.2307/2529310 Gokhale A, Ganapathy V, Padmanaban Y (2013) Inferring likely mappings between APIs. In: Proceedings of the 2013 International Conference on Software Engineering, ICSE ’13. IEEE Press, pp 82–91 Mi Q, Keung J, Xiao Y, Mensah S, Gao Y (2018) Improving code readability classification using convolutional neural networks, vol 104. https://doi.org/10.1016/j.infsof.2018.07.006 Scalabrino S, Linares-Vásquez M, Oliveto R, Poshyvanyk D (2018) A comprehensive model for code readability. J Softw Evol Process 30 UptonGFisher’s exact testJ R Stat Soc Ser A (Stat Soc)199219239540210.2307/2982890https://doi.org/10.2307/2982890 Ghandour WJ, Akkary H, Masri W (2010) The potential of using dynamic information flow analysis in data value prediction. In: Proceedings of the 19th International Conference on Parallel Architectures and Compilation Techniques, PACT ’10. Association for Computing Machinery, New York, pp 431–442 Hoffmann J, Ussath M, Holz T, Spreitzenbarth M (2013) Slicing Droids: Program slicing for Smali code. In: Proceedings of the 28th Annual ACM Symposium on Applied Computing, SAC ’13. https://doi.org/10.1145/2480362.2480706. Association for Computing Machinery, New York, pp 1844–1851 van Bruggen D, Tomassetti F, Howell R, Langkabel M, Smith N, Bosch A, Skoruppa M, Maximilien C, ThLeu, Panayiotis, (@skirsch79) SK, Simon, Beleites J, Tibackx W, LJP, Rouél A, edefazio, Schipper D, Mathiponds, you want to know W, Beckett R, ptitjes, kotari4u, Wyrich M, Morais R, bresai, Ty, Lebouc R, Implex1v, Haumacher B (2020) javaparser/javaparser: Release javaparser- parent-3.15.22 Kang HJ, Thung F, Lawall J, Muller G, Jiang L, Lo D (2019) Semantic patches for Java program transformation (experience report). In: 33rd European Conference on Object-Oriented Programming (ECOOP 2019). Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik Xi Y, Shen L, Gui Y, Zhao W (2019) Migrating deprecated api to documented replacement: Patterns and tool, pp 1–10. https://doi.org/10.1145/3361242.3361246 Thung F, Haryono SA, Serrano L, Muller G, Lawall J, Lo D, Jiang L (2020) Automated deprecated-API usage update for Android apps: How far are we?. In: IEEE International Conference on Software Analysis, Evolution and Reengineering Meng N, Kim M, McKinley KS (2013) LASE: Locating and applying systematic edits by learning from examples. In: ICSE. IEEE Press, pp 502–511 McDonnell T, Ray B, Kim M (2013) An empirical study of API stability and adoption in the Android ecosystem. In: 2013 IEEE International Conference on Software Maintenance. IEEE, pp 70–79 WeiserMProgram slicingIEEE Trans Softw Eng1984SE-10435235710.1109/TSE.1984.5010248 Visser E (2001) Stratego: A language for program transformation based on rewriting strategies. In: Proceedings of the 12th International Conference on Rewriting Techniques and Applications, RTA ’01. Springer, pp 357–362 CohenJWeighted kappa: nominal scale agreement with provision for scaled disagreement or partial credit.Psychol Bullet196870 42132010.1037/h0026256 SawantAARobbesRBacchelliAOn the reaction to deprecation of clients of 4 + 1 popular Java APIs and the JDKEMSE201823421582197 Jacobellis J, Meng N, Kim M (2013) LASE: An example-based program transformation tool for locating and applying systematic edits. In: 2013 35th International Conference on Software Engineering (ICSE), pp 1319–1322 Bodík R, Gupta R (1997) Partial dead code elimination using slicing transformations. In: Proceedings of the ACM SIGPLAN 1997 Conference on Programming Language Design and Implementation, PLDI ’97. Association for Computing Machinery, New York, pp 159–170 Asyrofi MH, Thung F, Lo D, Jiang L (2020) AUSearch: Accurate API usage search in GitHub repositories with type resolution. In: IEEE International Conference on Software Analysis, Evolution and Reengineering KimYMunSYooSKimMPrecise learn-to-rank fault localization using dynamic and static features of target programsACM Trans Softw Eng Methodol20192813410.1145/3345628https://doi.org/10.1145/3345628 Hora A, Robbes R, Anquetil N, Etien A, Ducasse S, Valente MT (2015) How do developers react to API evolution? The Pharo ecosystem case. In: 2015 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp 251–260 Brito G, Hora A, Valente MT, Robbes R (2016) Do developers deprecate APIs with replacement messages? a large-scale analysis on Java systems. In: SANER, vol 1. IEEE, pp 360–369 Bakeman R, Gottman J (1986) Observing interaction: An introduction to sequential analysis PanditaRJetleyRSudarsanSMenziesTWilliamsLTMAP: Discovering relevant API methods through text mining of api documentationJ Softw Evol Process201729e184510.1002/smr.1845https://doi.org/10.1002/smr.1845 Lawall J, Muller G (2018) Coccinelle: 10 years of automated evolution in the Linux kernel. In: USENIX Annual Technical Conference, pp 601–614 ZhangMLiYLiXChenLZhangYZhangLKhurshidSAn empirical study of boosting spectrum-based fault localization via pagerankIEEE Trans Softw Eng2019PP11https://doi.org/10.1109/TSE.2019.2911283 Posnett D, Hindle A, Devanbu P (2011) A simpler model of software readability, pp 73–82. https://doi.org/10.1145/1985441.1985454 Wei L, Liu Y, Cheung S-C (2016) Taming Android fragmentation: Characterizing and detecting compatibility issues for Android apps. In: ASE. IEEE, pp 226–237 Fazzini M, Xin Q, Orso A (2019) Automated API-usage update for Android apps. In: ISSTA. ACM, pp 204–215 Scalabrino S, Bavota G, Vendome C, Linares-Vásquez M, Poshyvanyk D, Oliveto R (2017) Automatically assessing code understandability: How far are we?. In: 2017 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE), pp 417–427 Brunel J, Doligez D, Hansen RR, Lawall JL, Muller G (2009) A foundation for flow-based program matching: using temporal logic and model checking. In: Principles of Programming Languages (POPL). ACM, pp 114–126 Zhou J, Walker RJ (2016) API deprecation: a retrospective analysis and detection method for code examples on the web. In: ICSE. ACM, pp 266–277 Hoffmann J, Ussath M, Holz T, Spreitzenbarth M (2013) Slicing droids: Program slicing for Smali code. In: Proceedings of the 28th Annual ACM Symposium on Applied Computing, SAC ’13. Association for Computing Machinery, New York, pp 1844–1851 Han D, Zhang C, Fan X, Hindle A, Wong K, Stroulia E (2012) Understanding Android fragmentation with topic analysis of vendor-specific bugs. In: 2012 19th Working Conference on Reverse Engineering. IEEE, pp 83–92 Li J, Wang C, Xiong Y, Hu Z (2015) SWIN: Towards type-safe Java program adaptation between apis, pp 91–102 Yang G, Jones J, Moninger A, Che M (2018) How do Android operating system updates impact apps?. In: Proceedings of the 5th International Conference on Mobile Software Engineering and Systems. ACM, pp 156–160 CuiZJiaMChenXZhengLLiuXImproving software fault localization by combining spectrum and mutationIEEE Access2020817229617230710.1109/ACCESS.2020.3025460https://doi.org/10.1109/ACCESS.2020.3025460 Padioleau Y, Lawall J, Hansen RR, Muller G (2008) Documenting and automating collateral evolutions in Linux device drivers. In: European Conference on Computer Systems (EuroSys). ACM, pp 247–260 Strobl R, Troníc~ek Z (2013) Migration from deprecated API in Java, pp 85–86. https://doi.org/10.1145/2508075.2508093 Li L, Bissyandé TF, Wang H, Klein J (2018) Cid: Automating the detection of API-related compatibility issues in Android apps. In: ISSTA. ACM, pp 153–163 Gupta R, Benson DA, Fang JZ (1997) Path profile guided partial dead code elimination using predication. In: Proceedings 1997 International Conference on Parallel Architectures and Compilation Techniques, pp 102–113 Li L, Gao J, Bissyandé TF, Ma L, Xia X, Klein J (2018) Characterising deprecated Android APIs. In: Proceedings of the 15th International Conference on Mining Software Repositories (MSR). ACM, pp 254–264 Scalabrino S, Linares-Vásquez M, Poshyvanyk D, Oliveto R (2016) Improving code readability models with textual features. In: 2016 IEEE 24th International Conference on Program Comprehension (ICPC), pp 1–10 Zhou X, Lee Y, Zhang N, Naveed M, Wang X (2014) The peril of fragmentation: Security hazards in Android device driver customizations. Proc - IEEE Symp Secur Privacy:409–423 Robbes R, Lungu M, Röthlisberger D (2012) How do developers react to API deprecation?: the case of a Smalltalk ecosystem. In: FSE. ACM, p 56 Rolim R, Soares G, D’Antoni L, Polozov O, Gulwani S, Gheyi R, Suzuki R, Hartmann B (2017) Learning syntactic program transformations from examples. In: ICSE. IEEE Press, pp 404–415 KhedkerUSanyalAKarkareBData flow analysis: Theory and practice20091st edn.USACRC Press, Inc.1168.68010 10096_CR32 10096_CR30 10096_CR29 10096_CR28 10096_CR27 10096_CR26 10096_CR25 M Weiser (10096_CR45) 1984; SE-10 10096_CR24 10096_CR23 10096_CR43 10096_CR42 Z Cui (10096_CR8) 2020; 8 JR Landis (10096_CR22) 1977; 33 10096_CR40 R Buse (10096_CR6) 2010; 36 10096_CR39 10096_CR38 10096_CR37 10096_CR36 M Zhang (10096_CR48) 2019; PP 10096_CR34 10096_CR33 10096_CR10 10096_CR50 U Khedker (10096_CR20) 2009 Y Kim (10096_CR21) 2019; 28 10096_CR4 10096_CR5 10096_CR2 10096_CR3 10096_CR1 10096_CR49 G Upton (10096_CR41) 1992; 192 10096_CR47 10096_CR46 10096_CR9 10096_CR44 R Pandita (10096_CR31) 2017; 29 J Cohen (10096_CR7) 1968; 70 4 10096_CR19 10096_CR18 10096_CR17 10096_CR16 10096_CR15 AA Sawant (10096_CR35) 2018; 23 10096_CR14 10096_CR13 10096_CR12 10096_CR11 |
| References_xml | – reference: CohenJWeighted kappa: nominal scale agreement with provision for scaled disagreement or partial credit.Psychol Bullet196870 42132010.1037/h0026256 – reference: UptonGFisher’s exact testJ R Stat Soc Ser A (Stat Soc)199219239540210.2307/2982890https://doi.org/10.2307/2982890 – reference: Zhou X, Lee Y, Zhang N, Naveed M, Wang X (2014) The peril of fragmentation: Security hazards in Android device driver customizations. Proc - IEEE Symp Secur Privacy:409–423 – reference: SawantAARobbesRBacchelliAOn the reaction to deprecation of clients of 4 + 1 popular Java APIs and the JDKEMSE201823421582197 – reference: Wei L, Liu Y, Cheung S-C (2016) Taming Android fragmentation: Characterizing and detecting compatibility issues for Android apps. In: ASE. IEEE, pp 226–237 – reference: Mi Q, Keung J, Xiao Y, Mensah S, Gao Y (2018) Improving code readability classification using convolutional neural networks, vol 104. https://doi.org/10.1016/j.infsof.2018.07.006 – reference: BuseRWeimerWLearning a metric for code readabilityIEEE Trans Softw Eng20103654655810.1109/TSE.2009.70 – reference: CuiZJiaMChenXZhengLLiuXImproving software fault localization by combining spectrum and mutationIEEE Access2020817229617230710.1109/ACCESS.2020.3025460https://doi.org/10.1109/ACCESS.2020.3025460 – reference: Padioleau Y, Lawall J, Hansen RR, Muller G (2008) Documenting and automating collateral evolutions in Linux device drivers. In: European Conference on Computer Systems (EuroSys). ACM, pp 247–260 – reference: Thung F, Haryono SA, Serrano L, Muller G, Lawall J, Lo D, Jiang L (2020) Automated deprecated-API usage update for Android apps: How far are we?. In: IEEE International Conference on Software Analysis, Evolution and Reengineering – reference: KimYMunSYooSKimMPrecise learn-to-rank fault localization using dynamic and static features of target programsACM Trans Softw Eng Methodol20192813410.1145/3345628https://doi.org/10.1145/3345628 – reference: Hoffmann J, Ussath M, Holz T, Spreitzenbarth M (2013) Slicing droids: Program slicing for Smali code. In: Proceedings of the 28th Annual ACM Symposium on Applied Computing, SAC ’13. Association for Computing Machinery, New York, pp 1844–1851 – reference: Han D, Zhang C, Fan X, Hindle A, Wong K, Stroulia E (2012) Understanding Android fragmentation with topic analysis of vendor-specific bugs. In: 2012 19th Working Conference on Reverse Engineering. IEEE, pp 83–92 – reference: WeiserMProgram slicingIEEE Trans Softw Eng1984SE-10435235710.1109/TSE.1984.5010248 – reference: Ghandour WJ, Akkary H, Masri W (2010) The potential of using dynamic information flow analysis in data value prediction. In: Proceedings of the 19th International Conference on Parallel Architectures and Compilation Techniques, PACT ’10. Association for Computing Machinery, New York, pp 431–442 – reference: Bakeman R, Gottman J (1986) Observing interaction: An introduction to sequential analysis – reference: Bodík R, Gupta R (1997) Partial dead code elimination using slicing transformations. In: Proceedings of the ACM SIGPLAN 1997 Conference on Programming Language Design and Implementation, PLDI ’97. Association for Computing Machinery, New York, pp 159–170 – reference: van Bruggen D, Tomassetti F, Howell R, Langkabel M, Smith N, Bosch A, Skoruppa M, Maximilien C, ThLeu, Panayiotis, (@skirsch79) SK, Simon, Beleites J, Tibackx W, LJP, Rouél A, edefazio, Schipper D, Mathiponds, you want to know W, Beckett R, ptitjes, kotari4u, Wyrich M, Morais R, bresai, Ty, Lebouc R, Implex1v, Haumacher B (2020) javaparser/javaparser: Release javaparser- parent-3.15.22 – reference: KhedkerUSanyalAKarkareBData flow analysis: Theory and practice20091st edn.USACRC Press, Inc.1168.68010 – reference: PanditaRJetleyRSudarsanSMenziesTWilliamsLTMAP: Discovering relevant API methods through text mining of api documentationJ Softw Evol Process201729e184510.1002/smr.1845https://doi.org/10.1002/smr.1845 – reference: Fazzini M, Xin Q, Orso A (2019) Automated API-usage update for Android apps. In: ISSTA. ACM, pp 204–215 – reference: Visser E (2001) Stratego: A language for program transformation based on rewriting strategies. In: Proceedings of the 12th International Conference on Rewriting Techniques and Applications, RTA ’01. Springer, pp 357–362 – reference: Rolim R, Soares G, D’Antoni L, Polozov O, Gulwani S, Gheyi R, Suzuki R, Hartmann B (2017) Learning syntactic program transformations from examples. In: ICSE. IEEE Press, pp 404–415 – reference: Robbes R, Lungu M, Röthlisberger D (2012) How do developers react to API deprecation?: the case of a Smalltalk ecosystem. In: FSE. ACM, p 56 – reference: Xi Y, Shen L, Gui Y, Zhao W (2019) Migrating deprecated api to documented replacement: Patterns and tool, pp 1–10. https://doi.org/10.1145/3361242.3361246 – reference: Kang HJ, Thung F, Lawall J, Muller G, Jiang L, Lo D (2019) Semantic patches for Java program transformation (experience report). In: 33rd European Conference on Object-Oriented Programming (ECOOP 2019). Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik – reference: Scalabrino S, Linares-Vásquez M, Poshyvanyk D, Oliveto R (2016) Improving code readability models with textual features. In: 2016 IEEE 24th International Conference on Program Comprehension (ICPC), pp 1–10 – reference: Li J, Wang C, Xiong Y, Hu Z (2015) SWIN: Towards type-safe Java program adaptation between apis, pp 91–102 – reference: Li L, Gao J, Bissyandé TF, Ma L, Xia X, Klein J (2018) Characterising deprecated Android APIs. In: Proceedings of the 15th International Conference on Mining Software Repositories (MSR). ACM, pp 254–264 – reference: Brunel J, Doligez D, Hansen RR, Lawall JL, Muller G (2009) A foundation for flow-based program matching: using temporal logic and model checking. In: Principles of Programming Languages (POPL). ACM, pp 114–126 – reference: Lawall J, Muller G (2018) Coccinelle: 10 years of automated evolution in the Linux kernel. In: USENIX Annual Technical Conference, pp 601–614 – reference: Gokhale A, Ganapathy V, Padmanaban Y (2013) Inferring likely mappings between APIs. In: Proceedings of the 2013 International Conference on Software Engineering, ICSE ’13. IEEE Press, pp 82–91 – reference: Strobl R, Troníc~ek Z (2013) Migration from deprecated API in Java, pp 85–86. https://doi.org/10.1145/2508075.2508093 – reference: McDonnell T, Ray B, Kim M (2013) An empirical study of API stability and adoption in the Android ecosystem. In: 2013 IEEE International Conference on Software Maintenance. IEEE, pp 70–79 – reference: Scalabrino S, Linares-Vásquez M, Oliveto R, Poshyvanyk D (2018) A comprehensive model for code readability. J Softw Evol Process 30 – reference: ZhangMLiYLiXChenLZhangYZhangLKhurshidSAn empirical study of boosting spectrum-based fault localization via pagerankIEEE Trans Softw Eng2019PP11https://doi.org/10.1109/TSE.2019.2911283 – reference: Hoffmann J, Ussath M, Holz T, Spreitzenbarth M (2013) Slicing Droids: Program slicing for Smali code. In: Proceedings of the 28th Annual ACM Symposium on Applied Computing, SAC ’13. https://doi.org/10.1145/2480362.2480706. Association for Computing Machinery, New York, pp 1844–1851 – reference: Posnett D, Hindle A, Devanbu P (2011) A simpler model of software readability, pp 73–82. https://doi.org/10.1145/1985441.1985454 – reference: Brito G, Hora A, Valente MT, Robbes R (2016) Do developers deprecate APIs with replacement messages? a large-scale analysis on Java systems. In: SANER, vol 1. IEEE, pp 360–369 – reference: LandisJRKochGGThe measurement of observer agreement for categorical dataBiometrics197733115917410.2307/2529310 – reference: Meng N, Kim M, McKinley KS (2013) LASE: Locating and applying systematic edits by learning from examples. In: ICSE. IEEE Press, pp 502–511 – reference: Haryono SA, Thung F, Kang HJ, Serrano L, Muller G, Lawall J, Lo D, Jiang L (2020) Automatic Android deprecated-API usage update by learning from single updated example. In: IEEE International Conference on Program Comprehension – reference: Zhou J, Walker RJ (2016) API deprecation: a retrospective analysis and detection method for code examples on the web. In: ICSE. ACM, pp 266–277 – reference: Gupta R, Benson DA, Fang JZ (1997) Path profile guided partial dead code elimination using predication. In: Proceedings 1997 International Conference on Parallel Architectures and Compilation Techniques, pp 102–113 – reference: Scalabrino S, Bavota G, Vendome C, Linares-Vásquez M, Poshyvanyk D, Oliveto R (2017) Automatically assessing code understandability: How far are we?. In: 2017 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE), pp 417–427 – reference: Hora A, Robbes R, Anquetil N, Etien A, Ducasse S, Valente MT (2015) How do developers react to API evolution? The Pharo ecosystem case. In: 2015 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp 251–260 – reference: Li L, Bissyandé TF, Wang H, Klein J (2018) Cid: Automating the detection of API-related compatibility issues in Android apps. In: ISSTA. ACM, pp 153–163 – reference: Yang G, Jones J, Moninger A, Che M (2018) How do Android operating system updates impact apps?. In: Proceedings of the 5th International Conference on Mobile Software Engineering and Systems. ACM, pp 156–160 – reference: Asyrofi MH, Thung F, Lo D, Jiang L (2020) AUSearch: Accurate API usage search in GitHub repositories with type resolution. In: IEEE International Conference on Software Analysis, Evolution and Reengineering – reference: Jacobellis J, Meng N, Kim M (2013) LASE: An example-based program transformation tool for locating and applying systematic edits. In: 2013 35th International Conference on Software Engineering (ICSE), pp 1319–1322 – ident: 10096_CR4 doi: 10.1109/SANER.2016.99 – ident: 10096_CR39 doi: 10.1109/SANER48275.2020.9054860 – ident: 10096_CR17 doi: 10.1109/ICSM.2015.7332471 – ident: 10096_CR25 doi: 10.1145/3213846.3213857 – volume: 28 start-page: 1 year: 2019 ident: 10096_CR21 publication-title: ACM Trans Softw Eng Methodol doi: 10.1145/3345628 – ident: 10096_CR23 – ident: 10096_CR13 doi: 10.1109/WCRE.2012.18 – ident: 10096_CR49 doi: 10.1145/2950290.2950298 – volume: 36 start-page: 546 year: 2010 ident: 10096_CR6 publication-title: IEEE Trans Softw Eng doi: 10.1109/TSE.2009.70 – ident: 10096_CR40 doi: 10.1145/2508075.2508093 – ident: 10096_CR14 doi: 10.1145/3387904.3389285 – volume-title: Data flow analysis: Theory and practice year: 2009 ident: 10096_CR20 – ident: 10096_CR26 doi: 10.1145/3196398.3196419 – volume: PP start-page: 1 year: 2019 ident: 10096_CR48 publication-title: IEEE Trans Softw Eng doi: 10.1109/TSE.2019.2911283 – ident: 10096_CR5 doi: 10.1145/1594834.1480897 – ident: 10096_CR27 doi: 10.1109/ICSM.2013.18 – volume: 70 4 start-page: 213 year: 1968 ident: 10096_CR7 publication-title: Psychol Bullet doi: 10.1037/h0026256 – ident: 10096_CR37 doi: 10.1109/ICPC.2016.7503707 – ident: 10096_CR42 – ident: 10096_CR19 – ident: 10096_CR11 doi: 10.1109/ICSE.2013.6606554 – ident: 10096_CR28 doi: 10.1109/ICSE.2013.6606596 – ident: 10096_CR33 doi: 10.1145/2393596.2393662 – ident: 10096_CR46 doi: 10.1145/3361242.3361246 – volume: 33 start-page: 159 issue: 1 year: 1977 ident: 10096_CR22 publication-title: Biometrics doi: 10.2307/2529310 – ident: 10096_CR50 doi: 10.1109/SP.2014.33 – volume: 23 start-page: 2158 issue: 4 year: 2018 ident: 10096_CR35 publication-title: EMSE – ident: 10096_CR44 doi: 10.1145/2970276.2970312 – ident: 10096_CR38 doi: 10.1002/smr.1958 – volume: 29 start-page: e1845 year: 2017 ident: 10096_CR31 publication-title: J Softw Evol Process doi: 10.1002/smr.1845 – volume: 192 start-page: 395 year: 1992 ident: 10096_CR41 publication-title: J R Stat Soc Ser A (Stat Soc) doi: 10.2307/2982890 – volume: SE-10 start-page: 352 issue: 4 year: 1984 ident: 10096_CR45 publication-title: IEEE Trans Softw Eng doi: 10.1109/TSE.1984.5010248 – ident: 10096_CR3 doi: 10.1145/258915.258930 – ident: 10096_CR2 – ident: 10096_CR10 doi: 10.1145/1854273.1854327 – ident: 10096_CR30 doi: 10.1145/1357010.1352618 – ident: 10096_CR15 doi: 10.1145/2480362.2480706 – ident: 10096_CR16 doi: 10.1145/2480362.2480706 – volume: 8 start-page: 172296 year: 2020 ident: 10096_CR8 publication-title: IEEE Access doi: 10.1109/ACCESS.2020.3025460 – ident: 10096_CR24 doi: 10.1145/2678015.2682534 – ident: 10096_CR18 doi: 10.1109/ICSE.2013.6606707 – ident: 10096_CR34 doi: 10.1109/ICSE.2017.44 – ident: 10096_CR29 doi: 10.1016/j.infsof.2018.07.006 – ident: 10096_CR1 doi: 10.1109/SANER48275.2020.9054809 – ident: 10096_CR47 doi: 10.1145/3197231.3197258 – ident: 10096_CR43 doi: 10.1007/3-540-45127-7_27 – ident: 10096_CR32 doi: 10.1145/1985441.1985454 – ident: 10096_CR12 doi: 10.1109/PACT.1997.644007 – ident: 10096_CR36 doi: 10.1109/ASE.2017.8115654 – ident: 10096_CR9 doi: 10.1145/3293882.3330571 |
| SSID | ssj0009745 |
| Score | 2.4099844 |
| Snippet | The Android operating system is frequently updated, with each version bringing a new set of APIs. New versions may involve API deprecation; Android apps using... |
| SourceID | hal proquest crossref springer |
| SourceType | Open Access Repository Aggregation Database Enrichment Source Index Database Publisher |
| SubjectTerms | Application programming interface Automation Compilers Computer Science Data analysis Data flow analysis Interpreters Mobile operating systems Performance enhancement Performance evaluation Programming Languages Software Engineering Software Engineering/Programming and Operating Systems Variables |
| SummonAdditionalLinks | – databaseName: Engineering Database dbid: M7S link: http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwpV3dS-QwEB90vQdf9LxTbnVPgtybFy5p06b1ReRQFEQEFXyy5KNFYdnuuR_--87E1PUOzhefWtI0LUwy-c1k5jcAP7TWaSOUQu2X5VwpY3hZZhbXlUuVRfNH2yDpc31xUdzelpfR4TaJYZWdTgyK2reOfOS_cOPG0VI02A7HfzhVjaLT1VhCYxlWiCVBhtC9qwXprg5Fiolmj6e4t8ekmZg6l-eKU4CCJBjPxV8b0_I9hUW-wZz_HJOG3edk_aP__RnWIu5kRy8TZQOW6tEXWO9qOrC4xL_CHUU4tseotOb1ATOzaYuQtvYsND_g9fKMzcbkJmDkwmUUYcqaYfvETKQ3wRvP5miCU1IWQ7VGqHgY0z034ebk-Pr3KY81GLhDpDLlUtbSJpnzJs3LrJaiccrpQjhhSy9sroVNay2bXGkjm9QKnSQ29x5RhNe-NOkW9EbtqP4GzJSZk1IbnwijClGUuSmMIwuoMIktdB9kJ4DKRYJyqpMxrBbUyiS0CoVWBaFVog_7r--MX-g53u29h3J97UjM2qdH5xW1CcSJiKSKuezDoBNkFdfzpFpIsQ8_u6mwePz_T26_P9oOrCaUTxEiKAfQmz7O6u_wyc2nD5PH3TCbnwEKwfce priority: 102 providerName: ProQuest |
| Title | AndroEvolve: automated Android API update with data flow analysis and variable denormalization |
| URI | https://link.springer.com/article/10.1007/s10664-021-10096-0 https://www.proquest.com/docview/2640563888 https://inria.hal.science/hal-03921758 |
| Volume | 27 |
| WOSCitedRecordID | wos000770339500015&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVAVX databaseName: SpringerLINK Contemporary 1997-Present customDbUrl: eissn: 1573-7616 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0009745 issn: 1382-3256 databaseCode: RSV dateStart: 19970101 isFulltext: true titleUrlDefault: https://link.springer.com/search?facet-content-type=%22Journal%22 providerName: Springer Nature |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV1LT9wwEB7BwoELS3moS-nKQtxKJDtxYqc3QIuohFYraBHqoZEfibrSahexj_79zgSHpRUgwSWJHOehGXvmG3seAEdKqaTiUqL0S7NISmOiPE8tziuXSIvmj7I1py9Vv69vb_NBCAqbNt7uzZZkLamfBLtlmYzIpUAQ8I7QUF9DdaepYMPV9c0y1a6qSxNTcr0oQY0eQmWef8c_6mj1NzlDPkGa_22O1jrnvP2-v92CzYAx2cnDoPgAK-V4G9pN_QYWpvMO_CJvxkkPBdSi_MrMfDZB-Fp6VjcP8Tz4xuZ3tCTAaLmWkTcpq0aTP8yEVCZ44dkCzW0KwGIowggBj0Jo5y78OO99P7uIQr2FyCEqmUVClMLGqfMmyfK0FLxy0inNHbe55zZT3CalElUmlRFVYrmKY5t5j4jBK5-bZA9a48m4_AjM5KkTQhkfcyM113lmtHFk7WgTW606IBqyFy4kI6eaGKNimUaZCFggAYuagAXvwJfHZ-4eUnG82vsQufnYkbJoX5xcFtTGERMiatIL0YGDhtlFmLvTAiEijttEa92B44a5y9svf3L_bd0_wUZMsRS19-QBtGb38_IzrLvFbDi978Laaa8_uOqSM-o1Hgfpz249zv8C1-Xwdg |
| linkProvider | Springer Nature |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMw1V1ba9RAFD60VdAX6xVXqw6iTzo4k9skgkjRll26LgUr9Mnp3IKFZbN2L8U_5W_0nNmkq4J964NPCclkQjLfnPOdmXMBeKGUSmuRZSj98oJnmTG8qnKL88qlmUXzR9k40kM1GpXHx9XhBvzsYmHIrbKTiVFQ-8bRGvkbVNzYW4oG2_vpd05Vo2h3tSuhsYLFQfhxjibb7N3gI47vyyTZ3zv60OdtVQHuUPfOuZRB2iR33qRFlQcpapc5VQonbOWFLZSwaVCyLjJlZJ1aoZLEFt6jXvTKVybFfjfhGtKIpIqugp_XSX5VLIpMaf14ilyiDdJpQ_WKIuPkECHJbODiD0W4-Y3cMH_juH9ty0Ztt7_9v_2n23Cr5dVsdzUR7sBGmNyF7a5mBWtF2D34Sh6czR4K5WV4y8xi3iBlD57Fy6d4PBywxZSWQRgtUTPyoGX1uDlnpk3fgieeLQ1OXDsODMU2sf5xG856H75cyVc-gK1JMwkPgZkqd1Iq4xNhslKUVWFK48jCK01iS9UD2Q24dm0CdqoDMtbr1NEEEo0g0REkWvTg1cUz01X6kUtbP0ccXTSkzOH93aGmawJ5MDLFcil7sNMBR7fyaqbXqOnB6w5669v_fuWjy3t7Bjf6R5-GejgYHTyGmwnFjkRv0R3Ymp8twhO47pbz09nZ0ziTGJxcNSR_AWiyVDA |
| linkToPdf | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMw1V1Lb9QwEB61BSEulKdYKGAhOIGFnZcTJIQq2lVXXa32AFLFAeNXRKXVZuk-Kv4av46ZrNMFJHrrgVOixHGU-PM87G9mAF4opdJaZBlKv7zgWWYMr6rc4rxyaWbR_VG2HemhGo3Kk5NqvAU_u1gYolV2MrEV1L5xtEb-BhU39paSw1ZHWsT4oP9-9p1TBSnaae3Kaawhchx-nKP7Nn83OMCxfpkk_cOPH454rDDAHerhBZcySJvkzpu0qPIgRe0yp0rhhK28sIUSNg1K1kWmjKxTK1SS2MJ71JFe-cqk2O82XFPoYxKdcJx_3iT8VW2BZErxx1O0K2LATgzbK4qMEzlCkgvBxR9KcfsbUTJ_s3f_2qJtNV9_93_-Z7fhVrS32f56gtyBrTC9C7tdLQsWRds9-ELMzuYQhfUqvGVmuWjQlA-etZdP8TgesOWMlkcYLV0zYtayetKcMxPTuuCJZyuDE9pOAkNxTt7AJIa53odPV_KVD2Bn2kzDQ2Cmyp2UyvhEmKwUZVWY0jjy_EqT2FL1QHaDr11MzE71QSZ6k1KaAKMRMLoFjBY9eHXxzGydluTS1s8RUxcNKaP40f5Q0zWB9jFakOVK9mCvA5GOcmyuNwjqwesOhpvb_37lo8t7ewY3EIl6OBgdP4abCYWUtCTSPdhZnC3DE7juVovT-dnTdlIx-HrViPwFWAxdCQ |
| 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=AndroEvolve%3A+automated+Android+API+update+with+data+flow+analysis+and+variable+denormalization&rft.jtitle=Empirical+software+engineering+%3A+an+international+journal&rft.au=Haryono%2C+Stefanus&rft.au=Thung%2C+Ferdian&rft.au=Lo%2C+David&rft.au=Jiang%2C+Lingxiao&rft.date=2022-05-01&rft.pub=Springer+Verlag&rft.issn=1382-3256&rft.eissn=1573-7616&rft.volume=27&rft.issue=3&rft_id=info:doi/10.1007%2Fs10664-021-10096-0&rft.externalDBID=HAS_PDF_LINK&rft.externalDocID=oai%3AHAL%3Ahal-03921758v1 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1382-3256&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1382-3256&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1382-3256&client=summon |