Recommending APIs for software evolution - THUNG, Ferdian (Institutional Knowledge at Singapore Management University, 2018)
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 compo- nents of the software that are currently developed. 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 the software becomes bigger and more complex, developers may not be aware of all functionalities available in their software.