showSidebars ==
showTitleBreadcrumbs == 1
node.field_disable_title_breadcrumbs.value ==

PhD Dissertation Defense by THUNG Ferdian | Recommending APIs for Software Evolution

Please click here if you are unable to view this page.

 
 
Recommending APIs for Software Evolution

THUNG Ferdian

PhD Candidate
School of Information Systems
Singapore Management University
 

FULL PROFILE

Research Area

Dissertation Committee

Chairman
Committee Members
External Members
  • Julia Lawall, Senior Research Scientist, Inria, LIP6
 

Date

May 10, 2018 (Thursday)

Time

3.00pm - 4.00pm

Venue

Meeting Room 5.1, Level 5,
School of Information Systems
Singapore Management University
80 Stamford Road
Singapore 178902

We look forward to seeing you at this research seminar.

 

About The Talk

Softwares are constantly evolving. This evolution has been made easier through the use of Application Programming Interfaces (APIs). By leveraging APIs, developers reuse previously implemented functionalities and concentrate on writing new codes. These APIs may originate from either third parties or internally from other components in the currently developed software. In the first case, developers need to know how to find and use third party APIs. In the second case, developers need to be aware of internal APIs in their own software. In either case, there is often too much information to digest. For instance, finding the right APIs may require sifting through many different APIs and learning them one by one, which can easily cost a large amount of time. Also, as software becomes bigger and more complex, developers may not be aware of all functionalities available in their software.

To deal with the above-mentioned difficulties, we propose API recommendation approaches for software evolution. We have done four works in this direction. Three works assist developers in using third party APIs while one work assists developers in evolving their software according to changes in internal APIs. Our first and second works deal with a problem of finding the right API libraries for implementing new software features. Our third work deals with the subsequent problem after finding the right API libraries, which is finding the right API methods to be used for implementing new software features. Our fourth work deals with the problem of evolving an older software version to contain features and/or bug fixes that are added in the newer software version. This is necessary since some softwares maintain many different versions. One such software is Linux kernel, which we studied in our work.

 

Speaker Biography

Ferdian THUNG is a Ph.D. candidate at School of Information Systems, Singapore Management University advised by Associate Professor David Lo. He received his B.Eng. in Informatics Engineering from School of Electrical Engineering and Informatics, Bandung Institute of Technology. From August 2015 to May 2016, he visited the Institute for Software Research in CMU. His research interests are in software engineering and data mining area. He has been working on automated prediction techniques, recommendation systems, and empirical studies in software engineering.