Learning Effective Changes For Software Projects

17 Aug 2017  ·  Rahul Krishna, Tim Menzies ·

The current generation of software analytics tools are mostly prediction algorithms (e.g. support vector machines, naive bayes, logistic regression, etc). While prediction is useful, after prediction comes planning about what actions to take in order to improve quality. This research seeks methods that support actionable analytics that offer clear guidance on "what to do" within the context of a specific software project. Specifically, we propose the BELLTREE algorithm for generating plans to improve software quality. Each such plan has the property that, if followed, it reduces the probability of future defect reports. When compared to other planning algorithms from the SE literature, we find that BELLTREE is most effective at learning plans from one project, then applying those plans to another.

PDF Abstract

Categories


Software Engineering

Datasets


  Add Datasets introduced or used in this paper