[论文解读] Analyzing Web Search Behavior for Software Engineering Tasks
本论文利用Bing搜索日志,首次对软件工程(SE)任务的网络搜索行为进行了大规模分析,采用远程监督方法对SE相关查询进行分类,F1得分达到93%。研究识别出六种核心搜索意图——API、Debug、HowTo、Learn、Installation和Navigational,并发现SE查询的效率较低,所需努力更多,占总网络搜索流量的2.6%以上,凸显了为开发者开发专用搜索工具的必要性。
Web search plays an integral role in software engineering (SE) to help with various tasks such as finding documentation, debugging, installation, etc. In this work, we present the first large-scale analysis of web search behavior for SE tasks using the search query logs from Bing, a commercial web search engine. First, we use distant supervision techniques to build a machine learning classifier to extract the SE search queries with an F1 score of 93%. We then perform an analysis on one million search sessions to understand how software engineering related queries and sessions differ from other queries and sessions. Subsequently, we propose a taxonomy of intents to identify the various contexts in which web search is used in software engineering. Lastly, we analyze millions of SE queries to understand the distribution, search metrics and trends across these SE search intents. Our analysis shows that SE related queries form a significant portion of the overall web search traffic. Additionally, we found that there are six major intent categories for which web search is used in software engineering. The techniques and insights can not only help improve existing tools but can also inspire the development of new tools that aid in finding information for SE related tasks.
研究动机与目标
- 理解软件工程(SE)相关网络搜索与通用网络搜索在行为和效率上的差异。
- 在缺乏标注数据的情况下,开发一种可扩展的方法,大规模识别SE相关搜索查询。
- 提出一个全面的软件工程任务用户搜索意图分类体系,以指导工具和搜索引擎设计。
- 分析SE搜索意图在成功率、努力程度和设备类型等指标上的分布、流行度和趋势。
- 为通过更优的搜索工具和个性化体验提升开发者生产力,提供可操作的见解。
提出的方法
- 利用启发式规则和种子关键词进行远程监督,训练机器学习分类器以区分SE相关查询与非SE查询,F1得分达到93%。
- 分析Bing日志中一百万个搜索会话,比较SE查询与非SE查询在重写、点击率和停留时间等方面的行为差异。
- 基于SE查询的意图分析,提出七类搜索意图类别:API、Debug、HowTo、Learn、Installation、Navigational和Miscellaneous。
- 开发基于启发式的模型,利用查询模式和关键词,自动将SE查询分类至所提出的意图类别。
- 对六百万个SE查询进行大规模分析,研究不同意图在流行度、成功率、努力程度估计、设备类型和时间趋势上的分布。
- 通过时间、设备级别和会话级分析,揭示SE搜索在不同上下文中的行为模式。
实验结果
研究问题
- RQ1软件工程相关查询及其会话与通用网络搜索查询在行为和效率上有哪些差异?
- RQ2用户在进行软件工程任务网络搜索时,主导的搜索意图是什么?
- RQ3不同SE搜索意图在流行度、成功率和努力程度等搜索指标上如何变化?
- RQ4SE搜索模式在不同设备和一天中不同时段有何差异?
- RQ5SE相关查询在整体网络搜索流量中占有多大比例?
主要发现
- SE相关查询占所有网络搜索会话的2.6%以上,表明这是网络搜索流量中一个显著但未被充分认识的组成部分。
- 与通用查询相比,SE相关查询效率较低,表现为更高的查询重写率、更少的点击次数和更短的停留时间,反映出用户挫败感和任务难度。
- 六种主要搜索意图——API、Debug、HowTo、Learn、Installation和Navigational——主导了SE搜索行为,且在时间和设备上表现出不同的模式。
- Debug、HowTo、API和Installation查询在桌面设备上更常见,而Learn和Navigational查询在移动设备上更普遍。
- 时间趋势分析显示,HowTo和API查询在白天达到高峰,而Installation和Navigational查询则持续上升并在夜间达到峰值,表明用户在不同任务上有不同的时间偏好。
- 本研究表明,现有通用网络搜索引擎对SE任务表现不佳,凸显了为开发者开发专用搜索引擎和上下文感知工具的迫切需求。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。