Journal Article10.1109/MS.2009.161
Recommendation Systems for Software Engineering
475
TL;DR: The authors provide an overview of recommendation systems for software engineering: what they are, what they can do for developers, and what they might do in the future.
read more
Abstract: Software development can be challenging because of the large information spaces that developers must navigate. Without assistance, developers can become bogged down and spend a disproportionate amount of their time seeking information at the expense of other value-producing tasks. Recommendation systems for software engineering (RSSEs) are software tools that can assist developers with a wide range of activities, from reusing code to writing effective bug reports. The authors provide an overview of recommendation systems for software engineering: what they are, what they can do for developers, and what they might do in the future.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
Recommender Systems: Introduction and Challenges
Francesco Ricci,Lior Rokach,Bracha Shapira +2 more
- 01 Jan 2015
TL;DR: This introductory chapter briefly discusses basic RS ideas and concepts and aims to delineate, in a coherent and structured way, the chapters included in this handbook.
1K
A Survey of Machine Learning for Big Code and Naturalness
TL;DR: A survey of machine learning, programming languages, and software engineering has recently taken important steps in proposing learnable probabilistic models of source code that exploit the abundance of patterns of code.
779
•Posted Content
A Survey of Machine Learning for Big Code and Naturalness
TL;DR: This article presents a taxonomy based on the underlying design principles of each model and uses it to navigate the literature and discuss cross-cutting and application-specific challenges and opportunities.
692
Learning natural coding conventions
Miltiadis Allamanis,Earl T. Barr,Christian Bird,Charles Sutton +3 more
- 11 Nov 2014
TL;DR: NATHURALIZE, a framework that learns the style of a codebase, and suggests revisions to improve stylistic consistency is presented, which builds on recent work in applying statistical natural language processing to source code.
Mining StackOverflow to turn the IDE into a self-confident programming prompter
Luca Ponzanelli,Gabriele Bavota,Massimiliano Di Penta,Rocco Oliveto,Michele Lanza +4 more
- 31 May 2014
TL;DR: A novel approach is proposed that, given a context in the IDE, automatically retrieves pertinent discussions from Stack Overflow, evaluates their relevance, and, if a given confidence threshold is surpassed, notifies the developer about the available help.
References
Mining version histories to guide software changes
TL;DR: Data mining is applied to version histories in order to guide programmers along related changes: "Programmers who changed these functions also changed".
1K
Mining version histories to guide software changes
Thomas Zimmermann,P. Weibgerber,Stephan Diehl,Andreas Zeller +3 more
- 23 May 2004
TL;DR: The ROSE prototype can correctly predict further locations to be changed and show up item coupling that is undetectable by program analysis, and can prevent errors due to incomplete changes.
Mining metrics to predict component failures
Nachiappan Nagappan,Thomas Ball,Andreas Zeller +2 more
- 28 May 2006
TL;DR: Using principal component analysis on the code metrics, this work built regression models that accurately predict the likelihood of post-release defects for new entities and can be generalized to arbitrary projects.
•Proceedings Article
Expertise Browser: a quantitative approach to identifying expertise
TL;DR: A tool, called Expertise Browser (ExB), that uses data from change management systems to locate people with desired expertise and uses a quantification of experience, and presents evidence to validate this quantification as a measure of expertise.
394
Recommending Adaptive Changes for Framework Evolution
TL;DR: In a study of the evolution of the Eclipse JDT framework and three client programs, the approach recommended relevant adaptive changes with a high level of precision, and detected non-trivial changes typically undiscovered by current refactoring detection techniques.
Related Papers (5)
Marcel Bruch,Martin Monperrus,Mira Mezini +2 more
- 24 Aug 2009
Christopher D. Manning,Prabhakar Raghavan,Hinrich Schütze +2 more
- 01 Jan 2008
Andrew J. Ko,Robert DeLine,Gina Venolia +2 more
- 24 May 2007