The Uniqueness of Changes Characteristics and Applications
Authors -
Baishakhi, Ray;
Meiyappan, Nagappan;
Christian, Bird;
Nachiappan, Nagappan and
Thomas, Zimmermann
Venue -
In Proceedings of the 11th ACM/IEEE Working Conference on Mining Software Repositories (MSR 2015), Florence, Italy, May 16 - 17, 2015
Related Tags -
Abstract -
Changes in software development come in many
forms. Some changes are frequent, idiomatic, or repetitive (e.g.
adding checks for nulls or logging important values) while others
are unique. We hypothesize that unique changes are different
from the more common similar (or non-unique) changes in
important ways; they may require more expertise or represent
code that is more complex or prone to mistakes. As such, these unique changes are worthy of study. In this paper, we
present a definition of unique changes and provide a method
for identifying them in software project history. Based on the
results of applying our technique on the Linux kernel and two
large projects at Microsoft, we present an empirical study of
unique changes. We explore how prevalent unique changes are
and investigate where they occur along the architecture of the
project. We further investigate developers contribution towards
uniqueness of changes. We also describe potential applications of
leveraging the uniqueness of change and implement two of those
applications, evaluating the risk of changes based on uniqueness
and providing change recommendations for non-unique changes.
Preprint -
PDF
BibTex -
@article{Ray2015,
author = {Baishakhi, Ray and Meiyappan, Nagappan and Christian, Bird and Nachiappan, Nagappan and Thomas, Zimmermann},
keyword = {Defect Prediction, ESE in Ultra Large Repositories},
title = {The Uniqueness of Changes Characteristics and Applications},
type = {conference},
venue = {In Proceedings of the 11th ACM/IEEE Working Conference on Mining Software Repositories (MSR 2015), Florence, Italy, May 16 - 17, 2015}
}