Context-Based IDE Command Recommender System

Software developer's working process could benefit from the support of an active help system that is able to recommend applicable and useful integrated development environment (IDE) commands. While previous work focused on prediction methods that can identify what developers will eventually discover autonomously, and without taking into account the characteristics of their working tasks, we want to build a system that recommends only commands that lead to better work performance. Since we cannot expect that developers are willing to invest a significant effort to use our recommender system (RS), we are developing a context-aware multi-criteria RS based on implicit feedback. We already created and evaluated context and user models. We also acquired a data set with more than 100,000 command executions. Currently, we are developing RS algorithm for predicting the scores of performance and effort expectancy and developer's intention to use a specific command. We are also developing a user interface, that has to be persuasive, effective, and efficient. To date, a user interface for IDE command RS has not been developed.

[1]  Francesco Ricci,et al.  Recommender Systems , 2007, 2007 40th Annual Hawaii International Conference on System Sciences (HICSS'07).

[2]  Emerson R. Murphy-Hill Continuous social screencasting to facilitate software tool discovery , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[3]  Emerson Murphy-Hill,et al.  Improving software developers' fluency by recommending development environment commands , 2012, SIGSOFT FSE.

[4]  Anind K. Dey,et al.  Understanding and Using Context , 2001, Personal and Ubiquitous Computing.

[5]  Judith Masthoff,et al.  Explaining Recommendations: Design and Evaluation , 2015, Recommender Systems Handbook.

[6]  Yong Zheng,et al.  Context Suggestion: Solutions and Challenges , 2015, 2015 IEEE International Conference on Data Mining Workshop (ICDMW).

[7]  Andrea Janes,et al.  What recommendation systems for software engineering recommend: A systematic literature review , 2016, J. Syst. Softw..

[8]  Lior Rokach,et al.  Best Usage Context Prediction for Music Tracks , 2010 .

[9]  Gordon B. Davis,et al.  User Acceptance of Information Technology: Toward a Unified View , 2003, MIS Q..

[10]  Tovi Grossman,et al.  CommunityCommands: command recommendations for software applications , 2009, UIST '09.

[11]  Gail C. Murphy,et al.  What to Learn Next: Recommending Commands in a Feature-Rich Environment , 2015, 2015 IEEE 14th International Conference on Machine Learning and Applications (ICMLA).

[12]  Gediminas Adomavicius,et al.  Multi-Criteria Recommender Systems , 2011, Recommender Systems Handbook.

[13]  Yifan Hu,et al.  Collaborative Filtering for Implicit Feedback Datasets , 2008, 2008 Eighth IEEE International Conference on Data Mining.

[14]  Li Chen,et al.  Human Decision Making and Recommender Systems , 2015, Recommender Systems Handbook.

[15]  Gediminas Adomavicius,et al.  Context-aware recommender systems , 2008, RecSys '08.