Journal
2021 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2021)
Volume -, Issue -, Pages 448-459Publisher
IEEE COMPUTER SOC
DOI: 10.1109/ICSME52107.2021.00046
Keywords
-
Categories
Ask authors/readers for more resources
Programming tutorials demonstrate tasks with code examples, but lack of high-quality utilization has been found in our study. The mismatch in task descriptions and overload of code information are the main issues. Traditional search methods can't solve these barriers, so we enrich the task knowledge graph and develop a code matching task search to assist developers in finding relevant tutorials efficiently. The evaluation confirms the effectiveness of our method in recommending code solutions and the usefulness of the tool in assisting developers.
Programming tutorials demonstrate programming tasks with code examples. However, our study of Stack Overflow questions reveals the low utilization of high-quality programming tutorials, which is caused task description mismatch and code information overload. Neither document search nor recently proposed activity-centric search can address these two barriers. In this work, we enrich the programming task knowledge graph with actions extracted from comments in code examples and more forms of activity sentences. To overcome the task description mismatch problem, we use code matching based task search method to find relevant programming tasks and code examples to the code under development. We integrate our knowledge graph and task search method in the IDE, and develop an observe-push based tool to prompt developers with API usage examples in explicit task contexts. To alleviate the code information overload problem, our tool highlights programming task and API information in the prompted tutorial excerpts and code examples based on the underlying knowledge graph. Our evaluation confirms the high quality of the constructed knowledge graph, and show that our code matching based task search can recommend effective code solutions to programming issues asked on Stack Overflow. Through an user study, we demonstrate that our tool is useful for assisting developers in finding and using relevant programming tutorials in their programming tasks.
Authors
I am an author on this paper
Click your name to claim this paper and add it to your profile.
Reviews
Recommended
No Data Available