An Exploratory Study on How Software Reuse is Discussed in Stack Overflow

Software reuse is an important and crucial quality attribute in modern software engineering, where almost all software projects, open source or commercial, no matter small or ultra-large, source code reuse in one way or another. Although software …

An exploratory study on the refactoring of unit test files in android applications

AndroLib: Third-Party Software Library Recommendation for Android Applications

How Do Developers Refactor Code to Improve Code Reusability?

Refactoring is the de-facto practice to optimize software health. While there has been several studies proposing refactoring strate-gies to optimize software design through applying design patterns and removing design defects, little is known about …

How Does Library Migration Impact Software Quality and Comprehension? An Empirical Study

The process of migration between different third-party software libraries, while being an typical library reuse practice, is complex, time consuming and error-prone. Typically, during a library migration process, developers opt to replace methods …

Increasing the Trust In Refactoring Through Visualization

In software development, maintaining good design is essential. The process of refactoring enables developers to improve this design during development without altering the program’s existing behavior. However, this process can be time-consuming, …

Multi-label Classification of Commit Messages using Transfer Learning

On the detection of community smells using genetic programming-based ensemble classifier chain

On the Diffusion and Impact of Code Smells in Web Applications

On the prediction of continuous integration build failures using search-based software engineering