Modern software systems rely heavily on third-party library functionality as a mean to save time, reduce implementation costs, and increase their software quality when offering rich, robust and up-to-date features. However, as software systems evolve frequently, the need for better services and more secure, reliable and quality functionalities causes developers to often replace their old libraries with more recent ones. This process of replacing a library with a different one, while preserving the same functionality, is known as library migration
. Learn more about evolution migration that happened over year of development.
We track library migration in around 321k open source projects View details ».
Alrubaye, H., & Wiem, M. (2019). Variability in Library Evolution. Software Engineering for Variability Intensive Systems: Foundations and Applications, 295.
Libraries and functions that had Migration
Is process of mapping between methods of retired library with methods of new call Function Mapping, In this process process a least one function from the source library replaced by one or multiple functions belonging to the target library.
. No need to read libraries documentation
to be able to migrate to newest library, only with single click,
we will provide you with the function mapping between two libraries depend on migration already done in 321k open source projects
View details »
Function mapping for migration from Easymock to Mockito
Function mapping graph for Migration between different libraries(View full graph)
Alrubaye, H., & Mkaouer, M. W. (2018, October). Automating the detection of third-party Java library migration at the function level. In Proceedings of the 28th Annual International Conference on Computer Science and Software Engineering (pp. 60-71). IBM Corp..
Alrubaye, H., & Mkaouer, M. W. & Ali, O (2019). Use of Information Retrieval to Automate the Detection of Third-Party Java Library Migration At The Function Level. 27th IEEE/ACM International Conference on Program Comprehension 2019.
Depending on how complex is the migration between two libraries, we find that developers take from 2 to 42 days to perform migrations.
Learn more about what is the different patterns that developer follow
in migration process, more about bugs, and best practices View details »