skip to main content
10.1145/2642937.2642985acmconferencesArticle/Chapter ViewAbstractPublication PagesaseConference Proceedingsconference-collections
research-article

NeedFeed: taming change notifications by modeling code relevance

Authors:
Rohan Padhye
IBM Research India, New Delhi, India
,
Senthil Mani
IBM Research India, New Delhi, India
,
Vibha Singhal Sinha
IBM Research India, New Delhi, India
Authors Info & Claims
Published: 15 September 2014 Publication History

Abstract

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%.

References

[1]
GitHub. https://github.com. Accessed: April 2014.
[2]
C. Bird, N. Nagappan, B. Murphy, H. Gall, and P. Devanbu. An analysis of the effect of code ownership on software quality across Windows, Eclipse, and Firefox. Technical Report MSR-TR-2010-140, Microsoft Research, 2010.
[3]
F. P. Brooks, Jr. The Mythical Man-month (Anniversary Ed.). Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 1995.
[4]
Y. Brun, R. Holmes, M. D. Ernst, and D. Notkin. Proactive detection of collaboration conflicts. In Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, ESEC/FSE '11, pages 168--178, New York, NY, USA, 2011. ACM.
[5]
M. Cataldo, P. A. Wagstrom, J. D. Herbsleb, and K. M. Carley. Identification of coordination requirements: Implications for the design of collaboration and awareness tools. In Proceedings of the 2006 20th Anniversary Conference on Computer Supported Cooperative Work, CSCW '06, pages 353--362, New York, NY, USA, 2006. ACM.
[6]
L.-T. Cheng, S. Hupfer, S. Ross, and J. Patterson. Jazzing up eclipse with collaborative tools. In Proceedings of the 2003 OOPSLA Workshop on Eclipse Technology eXchange, eclipse '03, pages 45--49, New York, NY, USA, 2003. ACM.
[7]
B. Curtis, H. Krasner, and N. Iscoe. A field study of the software design process for large systems. Commun. ACM, 31(11):1268--1287, Nov. 1988.
[8]
B. Curtis, E. M. Soloway, R. E. Brooks, J. B. Black, K. Ehrlich, and H. R. Ramsey. Software psychology: The need for an interdisciplinary program. Proceedings of the IEEE, 74(8):1092--1106, 1986.
[9]
J. A. Espinosa, R. E. Kraut, F. J. Lerch, S. Slaughter, J. D. Herbsleb, and A. Mockus. Shared mental models and coordination in large-scale, distributed software development. In ICIS, volume 2001, pages 513--518, 2001.
[10]
T. Fritz. Developer-Centric Models: Easing Access to Relevant Information in a Software Development Environment. PhD thesis, Ludwig-Maximilians-Universität München, 2011.
[11]
T. Fritz and G. C. Murphy. Determining relevancy: how software developers determine relevant information in feeds. In CHI, pages 1827--1830, 2011.
[12]
M. L. Guimãres and A. R. Silva. Improving early detection of software merge conflicts. In Proceedings of the 2012 International Conference on Software Engineering, ICSE 2012, pages 342--352, Piscataway, NJ, USA, 2012. IEEE Press.
[13]
M. Hall, E. Frank, G. Holmes, B. Pfahringer, P. Reutemann, and I. H. Witten. The weka data mining software: An update. SIGKDD Explorations, 11, 2009.
[14]
R. Hegde and P. Dewan. Connecting programming environments to support ad-hoc collaboration. In Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering, ASE '08, pages 178--187, Washington, DC, USA, 2008. IEEE Computer Society.
[15]
J. D. Herbsleb and A. Mockus. An empirical study of speed and communication in globally distributed software development. Software Engineering, IEEE Transactions on, 29(6):481--494, 2003.
[16]
R. Holmes and R. J. Walker. Customized awareness: Recommending relevant external change events. In Proceedings of the 32Nd ACM/IEEE International Conference on Software Engineering - Volume 1, ICSE '10, pages 465--474, New York, NY, USA, 2010. ACM.
[17]
W. M. Ibrahim, N. Bettenburg, E. Shihab, B. Adams, and A. E. Hassan. Should I contribute to this discussion? In Proceedings of the 7th International Working Conference on Mining Software Repositories, MSR '10, pages 181--190, 2010.
[18]
T. Illes-Seifert and B. Paech. Exploring the relationship of history characteristics and defect count: an empirical study. In Proceedings of the 2008 workshop on Defects in large software systems, pages 11--15. ACM, 2008.
[19]
M. Kim. An exploratory study of awareness interests about software modifications. In Proceedings of the 4th International Workshop on Cooperative and Human Aspects of Software Engineering, CHASE '11, pages 80--83, New York, NY, USA, 2011. ACM.
[20]
D. Mukherjee and M. Garg. Which work-item updates need your response? In Proceedings of the 10th Working Conference on Mining Software Repositories, MSR '13, pages 12--21, Piscataway, NJ, USA, 2013. IEEE Press.
[21]
M. Pinzger, N. Nagappan, and B. Murphy. Can developer-module networks predict failures? In Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of Software Engineering, SIGSOFT '08/FSE-16, pages 2--12, New York, NY, USA, 2008. ACM.
[22]
F. Rahman and P. Devanbu. Ownership, experience and defects: A fine-grained study of authorship. In Proceedings of the 33rd International Conference on Software Engineering, ICSE '11, pages 491--500, New York, NY, USA, 2011. ACM.
[23]
A. Sarma, D. F. Redmiles, and A. van der Hoek. Palantír: Early detection of development conflicts arising from parallel code changes. IEEE Trans. Software Eng., 38(4):889--908, 2012.
[24]
A. Wald. Tests of statistical hypotheses concerning several parameters when the number of observations is large. Transactions of the American Mathematical Society, 54:426--482, 1943.

Cited By

View all
  • (2023)A Comprehensive Taxonomy for Prediction Models in Software EngineeringInformation10.3390/info1402011114:2(111)Online publication date: 10-Feb-2023
  • (2022)Predictive Models in Software Engineering: Challenges and OpportunitiesACM Transactions on Software Engineering and Methodology10.1145/350350931:3(1-72)Online publication date: 9-Apr-2022
  • (2020)How has forking changed in the last 20 years?Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering10.1145/3377811.3380412(445-456)Online publication date: 27-Jun-2020
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ASE '14: Proceedings of the 29th ACM/IEEE International Conference on Automated Software Engineering
September 2014
934 pages
ISBN:9781450330138
DOI:10.1145/2642937
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Permissions@acm.org

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 15 September 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. collaborative software development
  2. mining software repositories
  3. version control

Qualifiers

  • Research-article

Conference

ASE '14
Sponsor:

Acceptance Rates

ASE '14 Paper Acceptance Rate 82 of 337 submissions, 24%;
Overall Acceptance Rate 82 of 337 submissions, 24%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 16 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2023)A Comprehensive Taxonomy for Prediction Models in Software EngineeringInformation10.3390/info1402011114:2(111)Online publication date: 10-Feb-2023
  • (2022)Predictive Models in Software Engineering: Challenges and OpportunitiesACM Transactions on Software Engineering and Methodology10.1145/350350931:3(1-72)Online publication date: 9-Apr-2022
  • (2020)How has forking changed in the last 20 years?Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering10.1145/3377811.3380412(445-456)Online publication date: 27-Jun-2020
  • (2019)Personalized Change Awareness: Reducing Information Overload in Loosely-Coupled TeamworkArtificial Intelligence10.1016/j.artint.2019.05.005Online publication date: May-2019
  • (2018)Do code data sharing dependencies support an early prediction of software actual change impact set?Journal of Software: Evolution and Process10.1002/smr.196030:11(e1960)Online publication date: 13-Jul-2018
  • (2017)Identifying unusual commits on GitHubJournal of Software: Evolution and Process10.1002/smr.189330:1Online publication date: 12-Sep-2017
  • (2016)How to break an API: cost negotiation and community values in three software ecosystemsProceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering10.1145/2950290.2950325(109-120)Online publication date: 1-Nov-2016
  • (2016)The challenges of staying together while moving fastProceedings of the 38th International Conference on Software Engineering10.1145/2884781.2884871(982-993)Online publication date: 14-May-2016
  • (2016)Intelligently Transparent Software EcosystemsIEEE Software10.1109/MS.2015.15633:1(89-96)Online publication date: 1-Jan-2016
  • (2015)When It Breaks, It BreaksProceedings of the 2015 30th IEEE/ACM International Conference on Automated Software Engineering Workshop (ASEW)10.1109/ASEW.2015.21(86-89)Online publication date: 9-Nov-2015

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media

Get Access

Get Access

Login options

References

References

[1]
GitHub. https://github.com. Accessed: April 2014.
[2]
C. Bird, N. Nagappan, B. Murphy, H. Gall, and P. Devanbu. An analysis of the effect of code ownership on software quality across Windows, Eclipse, and Firefox. Technical Report MSR-TR-2010-140, Microsoft Research, 2010.
[3]
F. P. Brooks, Jr. The Mythical Man-month (Anniversary Ed.). Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 1995.
[4]
Y. Brun, R. Holmes, M. D. Ernst, and D. Notkin. Proactive detection of collaboration conflicts. In Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, ESEC/FSE '11, pages 168--178, New York, NY, USA, 2011. ACM.
[5]
M. Cataldo, P. A. Wagstrom, J. D. Herbsleb, and K. M. Carley. Identification of coordination requirements: Implications for the design of collaboration and awareness tools. In Proceedings of the 2006 20th Anniversary Conference on Computer Supported Cooperative Work, CSCW '06, pages 353--362, New York, NY, USA, 2006. ACM.
[6]
L.-T. Cheng, S. Hupfer, S. Ross, and J. Patterson. Jazzing up eclipse with collaborative tools. In Proceedings of the 2003 OOPSLA Workshop on Eclipse Technology eXchange, eclipse '03, pages 45--49, New York, NY, USA, 2003. ACM.
[7]
B. Curtis, H. Krasner, and N. Iscoe. A field study of the software design process for large systems. Commun. ACM, 31(11):1268--1287, Nov. 1988.
[8]
B. Curtis, E. M. Soloway, R. E. Brooks, J. B. Black, K. Ehrlich, and H. R. Ramsey. Software psychology: The need for an interdisciplinary program. Proceedings of the IEEE, 74(8):1092--1106, 1986.
[9]
J. A. Espinosa, R. E. Kraut, F. J. Lerch, S. Slaughter, J. D. Herbsleb, and A. Mockus. Shared mental models and coordination in large-scale, distributed software development. In ICIS, volume 2001, pages 513--518, 2001.
[10]
T. Fritz. Developer-Centric Models: Easing Access to Relevant Information in a Software Development Environment. PhD thesis, Ludwig-Maximilians-Universität München, 2011.
[11]
T. Fritz and G. C. Murphy. Determining relevancy: how software developers determine relevant information in feeds. In CHI, pages 1827--1830, 2011.
[12]
M. L. Guimãres and A. R. Silva. Improving early detection of software merge conflicts. In Proceedings of the 2012 International Conference on Software Engineering, ICSE 2012, pages 342--352, Piscataway, NJ, USA, 2012. IEEE Press.
[13]
M. Hall, E. Frank, G. Holmes, B. Pfahringer, P. Reutemann, and I. H. Witten. The weka data mining software: An update. SIGKDD Explorations, 11, 2009.
[14]
R. Hegde and P. Dewan. Connecting programming environments to support ad-hoc collaboration. In Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering, ASE '08, pages 178--187, Washington, DC, USA, 2008. IEEE Computer Society.
[15]
J. D. Herbsleb and A. Mockus. An empirical study of speed and communication in globally distributed software development. Software Engineering, IEEE Transactions on, 29(6):481--494, 2003.
[16]
R. Holmes and R. J. Walker. Customized awareness: Recommending relevant external change events. In Proceedings of the 32Nd ACM/IEEE International Conference on Software Engineering - Volume 1, ICSE '10, pages 465--474, New York, NY, USA, 2010. ACM.
[17]
W. M. Ibrahim, N. Bettenburg, E. Shihab, B. Adams, and A. E. Hassan. Should I contribute to this discussion? In Proceedings of the 7th International Working Conference on Mining Software Repositories, MSR '10, pages 181--190, 2010.
[18]
T. Illes-Seifert and B. Paech. Exploring the relationship of history characteristics and defect count: an empirical study. In Proceedings of the 2008 workshop on Defects in large software systems, pages 11--15. ACM, 2008.
[19]
M. Kim. An exploratory study of awareness interests about software modifications. In Proceedings of the 4th International Workshop on Cooperative and Human Aspects of Software Engineering, CHASE '11, pages 80--83, New York, NY, USA, 2011. ACM.
[20]
D. Mukherjee and M. Garg. Which work-item updates need your response? In Proceedings of the 10th Working Conference on Mining Software Repositories, MSR '13, pages 12--21, Piscataway, NJ, USA, 2013. IEEE Press.
[21]
M. Pinzger, N. Nagappan, and B. Murphy. Can developer-module networks predict failures? In Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of Software Engineering, SIGSOFT '08/FSE-16, pages 2--12, New York, NY, USA, 2008. ACM.
[22]
F. Rahman and P. Devanbu. Ownership, experience and defects: A fine-grained study of authorship. In Proceedings of the 33rd International Conference on Software Engineering, ICSE '11, pages 491--500, New York, NY, USA, 2011. ACM.
[23]
A. Sarma, D. F. Redmiles, and A. van der Hoek. Palantír: Early detection of development conflicts arising from parallel code changes. IEEE Trans. Software Eng., 38(4):889--908, 2012.
[24]
A. Wald. Tests of statistical hypotheses concerning several parameters when the number of observations is large. Transactions of the American Mathematical Society, 54:426--482, 1943.