A systematic review of API evolution literature
Recent software advances have led to an expansion of the development and usage of
application programming interfaces (APIs). From millions of Android packages (APKs) …
application programming interfaces (APIs). From millions of Android packages (APKs) …
An empirical study of usages, updates and risks of third-party libraries in java projects
Third-party libraries play a key role in software development as they can relieve developers
of the heavy burden of re-implementing common functionalities. However, third-party …
of the heavy burden of re-implementing common functionalities. However, third-party …
Unleashing the hidden power of compiler optimization on binary code difference: An empirical study
Hunting binary code difference without source code (ie, binary diffing) has compelling
applications in software security. Due to the high variability of binary code, existing solutions …
applications in software security. Due to the high variability of binary code, existing solutions …
Conflictjs: finding and understanding conflicts between javascript libraries
It is a common practice for client-side web applications to build on various third-party
JavaScript libraries. Due to the lack of namespaces in JavaScript, these libraries all share …
JavaScript libraries. Due to the lack of namespaces in JavaScript, these libraries all share …
Evaluating regression test selection opportunities in a very large open-source ecosystem
Regression testing in very large software ecosystems is notoriously costly, requiring
computational resources that even large corporations struggle to cope with. Very large …
computational resources that even large corporations struggle to cope with. Very large …
Unified and Split Symbolic Execution for Exposing Semantic Differences
H Liang, L Yin, W Hu, Y Li, W Shen - ACM Transactions on Software …, 2025 - dl.acm.org
Software evolution is an important activity during a software development life cycle.
Understanding semantic differences between two versions of a software system is a crucial …
Understanding semantic differences between two versions of a software system is a crucial …
Compiler-directed Migrating API Callsite of Client Code
API developers evolve software libraries to fix bugs, add new features, or refactor code, but
the evolution can introduce API-breaking changes (eg, API renaming). To benefit from such …
the evolution can introduce API-breaking changes (eg, API renaming). To benefit from such …
Migrating client code without change examples
API developers evolve software libraries to fix bugs, add new features, or refactor code. To
benefit from such library evolution, the programmers of client projects have to repetitively …
benefit from such library evolution, the programmers of client projects have to repetitively …
Code Change Patterns as Reusable Code Abstractions
MDM Arachchige - 2024 - search.proquest.com
Software developers reuse the same libraries, frameworks, and algorithms, and they use
common programming idioms and best practices. Thus, when they evolve the code, they …
common programming idioms and best practices. Thus, when they evolve the code, they …
Softmon: A tool to compare similar open-source software from a performance perspective
Over the past two decades, a rich ecosystem of open-source software has evolved. For
every type of application, there are a wide variety of alternatives. We observed that even if …
every type of application, there are a wide variety of alternatives. We observed that even if …