NeedFeed: taming change notifications by modeling code relevance

Most software development tools allow developers to subscribe to notifications about code checked-in by their team members in order to review changes to artifacts that they are responsible for. However, past user studies have indicated that this mechanism is counter-productive, as developers spend a significant amount of effort sifting through such feeds looking for items that are relevant to them. We present NeedFeed, a system that models code relevance by mining a project's software repository and highlights changes that a developer may need to review. We evaluate several techniques to model code relevance, from a naive TOUCH-based approach to generic HISTORY-based classifiers using temporal code metrics at file and method-level granularities, which are then improved by building developer-specific models using TEXT-based features from commit messages. NeedFeed reduces notification clutter by more than 90%, on average, with the best strategy giving an average precision and recall of more than 75%.

[1]  Harald C. Gall,et al.  An Analysis of the Effect of Code Ownership on Software Quality across Windows, Eclipse, and Firefox , 2010 .

[2]  Ahmed E. Hassan,et al.  Should I contribute to this discussion? , 2010, 2010 7th IEEE Working Conference on Mining Software Repositories (MSR 2010).

[3]  Robert J. Walker,et al.  Customized awareness: recommending relevant external change events , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[4]  Ian H. Witten,et al.  The WEKA data mining software: an update , 2009, SKDD.

[5]  André van der Hoek,et al.  Palantir: Early Detection of Development Conflicts Arising from Parallel Code Changes , 2012, IEEE Transactions on Software Engineering.

[6]  Barbara Paech,et al.  Exploring the relationship of history characteristics and defect count: an empirical study , 2008, DEFECTS '08.

[7]  Audris Mockus,et al.  Shared Mental Models and Coordination in Large-Scale, Distributed Software Development , 2001, ICIS.

[8]  Premkumar T. Devanbu,et al.  Ownership, experience and defects: a fine-grained study of authorship , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[9]  Prasun Dewan,et al.  Connecting Programming Environments to Support Ad-Hoc Collaboration , 2008, 2008 23rd IEEE/ACM International Conference on Automated Software Engineering.

[10]  Yuriy Brun,et al.  Proactive detection of collaboration conflicts , 2011, ESEC/FSE '11.

[11]  Thomas Fritz,et al.  Determining relevancy: how software developers determine relevant information in feeds , 2011, CHI.

[12]  Brendan Murphy,et al.  Can developer-module networks predict failures? , 2008, SIGSOFT '08/FSE-16.

[13]  Li-Te Cheng,et al.  Jazzing up Eclipse with collaborative tools , 2003, eclipse '03.

[14]  John B. Black,et al.  Software psychology: The need for an interdisciplinary program , 1986, Proceedings of the IEEE.

[15]  Miryung Kim,et al.  An exploratory study of awareness interests about software modifications , 2011, CHASE.

[16]  A. Wald Tests of statistical hypotheses concerning several parameters when the number of observations is large , 1943 .

[17]  Thomas Fritz Developer-centric models: easing access to relevant information in a software development environment , 2011 .

[18]  Debdoot Mukherjee,et al.  Which work-item updates need your response? , 2013, 2013 10th Working Conference on Mining Software Repositories (MSR).

[19]  Audris Mockus,et al.  An Empirical Study of Speed and Communication in Globally Distributed Software Development , 2003, IEEE Trans. Software Eng..

[20]  António Rito Silva,et al.  Improving early detection of software merge conflicts , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[21]  Bill Curtis,et al.  A field study of the software design process for large systems , 1988, CACM.

[22]  James D. Herbsleb,et al.  Identification of coordination requirements: implications for the Design of collaboration and awareness tools , 2006, CSCW '06.

[23]  Jr. Frederick P. Brooks,et al.  The mythical man-month (anniversary ed.) , 1995 .