Crowdsourcing suggestions to programming problems for dynamic, interpreted languages
AbstractWhen working on a software project, developers usually encounter a lot of errors
they have to fix. To find more information about how to solve them, they usually
start to search the web, which is challenging for two main reasons: First, finding a
good search query for several reasons is not easy. Second, someone has to have –
usually manually – provided the necessary information before.
We present a tool that tries to help with both of these problems. It consists of
two components: a central server running a crowdsourced database of fixes and
a client program. This client program augments a testing framework for the Ruby
programming language and monitors the test executions. When a failing test is
encountered, a query for related fixes is automatically generated and sent to the
server. Related fixes are then displayed next to the test results for the developer’s
examination. When a test passes that failed before, a diff of the affected files is sent
to the server and becomes part of our crowdsourced database of fixes.
A preliminary evaluation between 8 developers showed that during 8 hours of
programming, our tool was able to provide useful suggestions for 57% of the failing
tests. During this time 161 new fixes were generated.
This project is heavily inspired by the work of Hartmann et al.
Created by. Last Modification: Sunday 27 of February, 2011 16:40:16 by .