A study of library migrations in Java
- 31 July 2014
- journal article
- research article
- Published by Wiley in Journal of Software: Evolution and Process
- Vol. 26 (11) , 1030-1052
Abstract
Software intensively depends on external libraries whose relevance may change during its life cycle. As a consequence, software developers must periodically reconsider the libraries they depend on, and must think about replacing them for more relevant ones. We refer to this practice as library migration. To find the best replacement for their library, they can rely on information over the Web, but they get quickly overwhelmed by the amount of data they gather. Making the right choice in this context constitutes the topic of our work. The solution we propose is to exhibit and mine the library migrations trends computed by performing a study of a large set of software projects. To perform this analysis, we have defined an automatic approach to compute library dependencies and a semi‐automatic approach that identifies library migrations. Then, we propose a deep analysis of the library migration phenomena by performing a descriptive study of a large set of software projects stored on the Githubplatform. Second, based on our descriptive study, we propose a support to developers who want to migrate their libraries. The main result of our study is that recommendations of libraries can be inferred from the analysis of the migration trends. Copyright © 2014 John Wiley & Sons, Ltd.Keywords
All Related Versions
This publication has 23 references indexed in Scilit:
- Automated library recommendation2013
- Seeking the ground truth2012
- Labeled topic detection of open source software from mining mass textual project profiles2012
- Cross-library API recommendation using web search engines2011
- Categorizing software applications for maintenance2011
- A field study of API learning obstaclesEmpirical Software Engineering, 2010
- Study of an API Migration for Two XML APIs2010
- Mining framework usage changes from instantiation code2008
- Generative programming techniques for Java library migration2007
- MUDABlue: An Automatic Categorization System for Open Source Repositories2005