How Software Developers Solve Problems by Searching for Source Code on the Web
Author | : Rosalva Eulogia Gallardo Valencia |
Publisher | : |
Total Pages | : 194 |
Release | : 2012 |
ISBN-10 | : 1267240180 |
ISBN-13 | : 9781267240187 |
Rating | : 4/5 (80 Downloads) |
Download or read book How Software Developers Solve Problems by Searching for Source Code on the Web written by Rosalva Eulogia Gallardo Valencia and published by . This book was released on 2012 with total page 194 pages. Available in PDF, EPUB and Kindle. Book excerpt: The large amount of information available on the Web has changed the way people develop software. Even though looking for source code on the Web is a common practice among developers, little is known about what motivates developers to look for source code on the Web, how developers evaluate search results, how they use the information they find, and how efficient are these Web searches in helping them complete software tasks. We found that looking for source code on the Web is a common activity for software developers because it helps them solve software development problems efficiently. Developers evaluate search results by making quick judgments and examining options in a serial fashion until a good-enough candidate is found. Information found on the Web is used to build developers' knowledge or to guide their coding. Using a series of empirical studies including online questionnaires, focus groups, laboratory experiments, and field studies in the US and abroad, we gained a better understanding of how software developers solve problems by searching for source code on the Web. We found that 83% of developers performed at least one Web search during a work day and on average they did 3.6 searches per day. We also found that 82% of Web searches are done to solve opportunistic problems, such as when developers need to remember syntax details, to clarify implementation details or fix bugs, and to learn new concepts. These searches are not planned ahead of time; they are done as they are needed. Using a naturalistic decision making approach, we found that developers make rapid judgments to evaluate search results in a serial fashion to find a good-enough candidate to solve their opportunistic software problems. We also found that developers are able to successfully solve 63% of their opportunistic software problems in 4.9 minutes on average by using the information they found on the Web to build their knowledge or to guide their coding. Results from these empirical studies have implications for tool designers, researchers, and developers.