The Usage of Web Search for Software Engineering

by   Chetan Bansal, et al.

Internet plays a key role in accomplishing many tasks. For many such tasks, web search is integral in finding relevant information. Similar to other domains, web search is also heavily used in software engineering (SE) to help with various SE specific tasks such as debugging, finding documentation, installation, etc. In this paper, we present the first large scale study on how web search is used in software engineering. We analyze the query logs from a major commercial web search engine. Being able to disambiguate software engineering queries from other queries is important for understanding the usage of web search in software engineering. We build a machine learning based classifier for distinguishing software engineering related search queries from other queries. We then define the taxonomy of intents behind the usage of web search by software engineers. This allows us to develop a better understanding of the various contexts in which web search is used in software engineering. We also analyze 1 million web search sessions to understand how software engineering related queries and sessions differ from other queries and sessions. Our results show that web search is heavily used for SE related search tasks. Finally, we discuss implications of this work on improving search engine support for developers and providing more effective and contextual assistance to developers using web resources. To our knowledge, this is the first study to fully characterize online search tasks in the software engineering context with a focus on query and session level differences.


page 1

page 2

page 3

page 4


An Empirical Study of Software Exceptions in the Field using Search Logs

Software engineers spend a substantial amount of time using Web search t...

Using clarification questions to improve software developers' Web search

Context: Recent research indicates that Web queries written by software ...

Empathy Models and Software Engineering – A Preliminary Analysis and Taxonomy

Empathy is widely used in many disciplines such as philosophy, sociology...

Dimensions of Formality: A Case Study for MKM in Software Engineering

We study the formalization of a collection of documents created for a So...

Navigating Complexity in Software Engineering: A Prototype for Comparing GPT-n Solutions

Navigating the diverse solution spaces of non-trivial software engineeri...

Code Search Intent Classification Using Weak Supervision

Developers use search for various tasks such as finding code, documentat...

Please sign up or login with your details

Forgot password? Click here to reset