Through the power of the Internet, people around the world are working together to solve problems in a faster, more cost-effective way than ever before. Crowdsourcing is a term that has been used to describe the process of requesting a crowd to perform a task rather than hiring consultants or contractors. There have been various models used to harness the collective brainpower of the masses, and this article delves into three examples. Thanks to the power of Web 2.0, publicity is easily spread world-wide to recruit participants who will take part in competitions or collaborative events aimed at solving a problem or completing a task.
Agile. Collaborative. Social. These are three terms that are prevalent in the today's modern age of technology. Through the power of the internet, people around the world are working together to solve problems in a faster, more cost-effective way than ever before.
Crowdsourcing is a term that has been used to describe the process of requesting a crowd to perform a task rather than hiring consultants or contractors. There have been various models used to harness the collective brainpower of the masses. Thanks to the power of Web 2.0, publicity is easily spread world-wide to recruit participants who will take part in competitions or collaborative events aimed at solving a problem or completing a task. If the prize or recognition is great enough, word travels fast.
It's virtually impossible to test the vast number of devices and various configurations of software that Web-based software can run on today. Add to this the differences that may occur if the software is meant to be run anywhere and you have a major obstacle to traditional test methods. How can the code be tested effectively in every geographical region? The best alternative would be for people that are native to the country, people that are most like the end-users, to test the software.
Three companies that take advantage of a Crowdsource model for software test are Mob4Hire, TopCoder, uTest.
This organization is focused on testing Mobile Devices. The site allows a way to match developers to freelance testers. Developers register and can describe a "Project" that they need tested. Testers can register and describe the handsets that they have available to test. Mob4Hire will send notification of projects to the testers that meet the requirements and those testers are able to bid on the project. Once the project has completed, developers pay the testers after a five-day check for quality, with a commission going to Mob4Hire. Both developers and testers are rated after each test, which can help in the decision-making process for future projects. The site has some social networking features, such as a Forum for testers and developers to communicate with one another. There is also a blog, the "mobblog" with a subtitle, "The meandering thoughts of the team behind mob4hire.com." As of this writing, November 2, 2009, there are 18594 Handsets that have been registered from testers in 106 countries with 337 Networks/Carriers.
TopCoder's strategy is to use competition to entice designers, developers, and testers to create solutions for clients. The competitions cover the full gamut of the software development process from requirements specification through deployment.
Their home page (today) states:
At this moment, there are 155 active competitions with $39,852 in total prizes.
Clicking through to the competitions, you find that there are a variety of opportunities available. I navigated to the Test Scenarios and Scripts section which includes a lot of instructions for testers about what is expected in a test competition. Testers must complete a QA Plan which outlines both high level test cases and detailed test scenarios. The plan should also include whether or not the test can be automated and expected results. There are further explanations of expectations for different types of test efforts. Testers and developers have the ability to communicate via a forum once signed up to compete. There are currently 224,074 members on TopCoder.
uTest currently has a community of over 20,000 testers that get paid on a per bug basis. Clients specify the type of tests that they need to have performed and the types of devices that must be tested. Testers complete a profile that indicates the