Write a Blog >>
ICSE 2021
Mon 17 May - Sat 5 June 2021

With the growth of the open-source data science community, both the number of data science libraries and the number of versions for the same library are increasing rapidly. To match the evolving APIs from those libraries, open-source organizations often have to exert manual effort to refactor the APIs used in the code base. Moreover, due to the abundance of similar open-source libraries, data scientists working on a certain application may have an abundance of libraries to choose, maintain and migrate between. The manual refactoring between APIs is a tedious and error-prone task. Although recent research efforts were made on performing automatic API refactoring between different languages, previous work relies on statistical learning with collected pairwise training data for the API matching and migration. Using large statistical data for refactoring is not ideal because such training data will not be available for a new library or a new version of the same library. We introduce Synthesis for Open-Source API Refactoring (SOAR), a novel technique that requires no training data to achieve API migration and refactoring. SOAR relies only on the documentation that is readily available at the release of the library to learn API representations and mapping between libraries. Using program synthesis, SOAR automatically computes the correct configuration of arguments to the APIs and any glue code that is required to invoke those APIs. SOAR also uses the error messages from the interpreter when running refactored code to generate logical constraints that can be used to prune the search space. Our empirical evaluation shows that SOAR can successfully refactor 80% of our benchmarks, corresponding to deep learning models with up to 44 layers, with an average run time of 97.23 seconds, and 90% of the benchmark set for data wrangling tasks with an average run time of 17.31 seconds.

Tue 25 May

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

19:35 - 20:55
1.5.3. API: Usage and RefactoringTechnical Track / SEIP - Software Engineering in Practice / Journal-First Papers at Blended Sessions Room 3 +12h
Chair(s): Giuseppe Scanniello University of Basilicata
19:35
20m
Paper
Automatically Identifying Parameter Constraints in Complex Web APIs: A Case Study at AdyenSEIP
SEIP - Software Engineering in Practice
Henk Grent Adyen N.V., Aleksei Akimov Adyen N.V., MaurĂ­cio Aniche Delft University of Technology
Pre-print Media Attached
19:55
20m
Paper
SOAR: A Synthesis Approach for Data Science API RefactoringArtifact ReusableTechnical TrackArtifact Available
Technical Track
Ansong Ni Yale University, Daniel Ramos Carnegie Mellon University, Aidan Z.H. Yang Carnegie Mellon University, Ines Lynce INESC-ID/IST, Universidade de Lisboa, Vasco Manquinho INESC-ID/IST, Universidade de Lisboa, Ruben Martins Carnegie Mellon University, Claire Le Goues Carnegie Mellon University
Pre-print Media Attached
20:15
20m
Paper
Studying Ad Library Integration Strategies of Top Free-to-Download AppsJournal-First
Journal-First Papers
Md Ahasanuzzaman Queen's University, Safwat Hassan Thompson Rivers University, Ahmed E. Hassan School of Computing, Queen's University
Link to publication DOI Pre-print Media Attached
20:35
20m
Paper
Are Machine Learning Cloud APIs Used Correctly?Artifact ReusableTechnical Track
Technical Track
Chengcheng Wan University of Chicago, Shicheng Liu University of Chicago, Henry Hoffmann University of Chicago, Michael Maire University of Chicago, Shan Lu University of Chicago
Pre-print Media Attached

Wed 26 May

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

07:35 - 08:55
07:35
20m
Paper
Automatically Identifying Parameter Constraints in Complex Web APIs: A Case Study at AdyenSEIP
SEIP - Software Engineering in Practice
Henk Grent Adyen N.V., Aleksei Akimov Adyen N.V., MaurĂ­cio Aniche Delft University of Technology
Pre-print Media Attached
07:55
20m
Paper
SOAR: A Synthesis Approach for Data Science API RefactoringArtifact ReusableTechnical TrackArtifact Available
Technical Track
Ansong Ni Yale University, Daniel Ramos Carnegie Mellon University, Aidan Z.H. Yang Carnegie Mellon University, Ines Lynce INESC-ID/IST, Universidade de Lisboa, Vasco Manquinho INESC-ID/IST, Universidade de Lisboa, Ruben Martins Carnegie Mellon University, Claire Le Goues Carnegie Mellon University
Pre-print Media Attached
08:15
20m
Paper
Studying Ad Library Integration Strategies of Top Free-to-Download AppsJournal-First
Journal-First Papers
Md Ahasanuzzaman Queen's University, Safwat Hassan Thompson Rivers University, Ahmed E. Hassan School of Computing, Queen's University
Link to publication DOI Pre-print Media Attached
08:35
20m
Paper
Are Machine Learning Cloud APIs Used Correctly?Artifact ReusableTechnical Track
Technical Track
Chengcheng Wan University of Chicago, Shicheng Liu University of Chicago, Henry Hoffmann University of Chicago, Michael Maire University of Chicago, Shan Lu University of Chicago
Pre-print Media Attached