| |
| | | Recommending APIs for Software Evolution | 
| THUNG Ferdian PhD Candidate School of Information Systems Singapore Management University | 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. |
|