2

Improving the prediction of continuous integration build failures using deep learning

Continuous Integration (CI) aims at supporting developers in integrating code changes constantly and quickly through an automated build process. However, the build process is typically time and resource-consuming as running failed builds can take …

Refactoring for reuse: an empirical study

Refactoring is the de-facto practice to optimize software health. While several studies propose refactoring strategies to optimize software design through applying design patterns and removing design defects, little is known about how developers …

Tracking bad updates in mobile apps: a search-based approach

The rapid growth of the mobile applications development industry raises several new challenges to developers as they need to respond quickly to the users’ needs in a world of continuous changes. Indeed, mobile apps undergo frequent updates to …

On the documentation of refactoring types

Commit messages are the atomic level of software documentation. They provide a natural language description of the code change and its purpose. Messages are critical for software maintenance and program comprehension. Unlike documenting feature …

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

How do i refactor this? An empirical study on refactoring trends and topics in Stack Overflow

An essential part of software maintenance and evolution, refactoring is performed by developers, regardless of technology or domain, to improve the internal quality of the system, and reduce its technical debt. However, choosing the appropriate …

SATDBailiff-mining and tracking self-admitted technical debt

Self-Admitted Technical Debt (SATD) is a metaphorical concept to describe the self-documented addition of technical debt to a software project in the form of source code comments. SATD can linger in projects and degrade source-code quality, but it …

A longitudinal exploratory study on code smells in server side web applications

A longitudinal study of the impact of refactoring in android applications

An Ensemble Approach for Annotating Source Code Identifiers with Part-of-speech Tags