Potentials and challenges of recommendation systems for software development

By surveying recommendation systems in software development, we found that existing approaches have been focusing on "you might like what similar developers like" scenarios. However structured artifacts and semantically well-defined development activities bear large potentials for further recommendation scenarios. We introduce a novel "landscape" of software development recommendation systems and line out several scenarios for knowledge sharing and collaboration. Basic challenges are improving context-awareness and particularly addressing information providers.

[1]  Robert J. Walker,et al.  Approximate Structural Context Matching: An Approach to Recommend Relevant Examples , 2006, IEEE Transactions on Software Engineering.

[2]  Mik Kersten,et al.  Using task context to improve programmer productivity , 2006, SIGSOFT '06/FSE-14.

[3]  Janice Singer,et al.  Hipikat: a project memory for software development , 2005, IEEE Transactions on Software Engineering.

[4]  Walid Maalej,et al.  A Lightweight Approach for Knowledge Sharing in Distributed Software Teams , 2008, PAKM.

[5]  Gail C. Murphy,et al.  A sketch of the programmer's coach: making programmers more effective , 2008, CHASE.

[6]  Andrew P. Sage,et al.  Knowledge management and knowledge sharing: A review , 2005, Inf. Knowl. Syst. Manag..

[7]  Michael Gertz,et al.  Expertise identification and visualization from CVS , 2008, MSR '08.

[8]  Kevin C. Desouza,et al.  Managing knowledge in distributed projects , 2004, CACM.

[9]  Gerhard Fischer,et al.  Reuse-Conducive Development Environments , 2005, Automated Software Engineering.

[10]  Hans-Jörg Happel Closing Information Gaps with Inverse Search , 2008, PAKM.

[11]  Robert DeLine,et al.  Information Needs in Collocated Software Development Teams , 2007, 29th International Conference on Software Engineering (ICSE'07).

[12]  Mel Ó Cinnéide,et al.  Rascal: A Recommender Agent for Agile Reuse , 2005, Artificial Intelligence Review.

[13]  Thomas Zimmermann,et al.  Mining usage expertise from version archives , 2008, MSR '08.

[14]  André van der Hoek,et al.  Palantir: raising awareness among configuration management workspaces , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[15]  James D. Herbsleb,et al.  Supporting online problem-solving communities with the semantic web , 2006, WWW '06.