Dynamic scheduling between testers and tasks in crowdtesting
摘要
Crowdtesting, an emerging practice in software testing, relies on crowd testers to execute test assignments. Typically, crowdsourced testing endeavors to identify a maximum number of bugs within a constrained financial scope. Not all crowd testers possess the requisite qualifications for every test task; varying experiences and domain knowledge are necessary for different testing assignments. Unfit testers may overlook authentic bugs, introduce spurious errors, or duplicate bug reports, potentially compromising test quality and escalating the expense of tester recruitment. Consequently, the allocation of suitable crowd testers for particular test tasks presents a significant challenge within the domain of crowdtesting. In this study, we propose a dynamic scheduling mechanism for crowdsourced testing. In order to systematically evaluate and distinguish testers, this study curated a set of tester characteristics and formulated a tester evaluation model. Subsequently, by considering the varying preference weights of features across different tasks, an algorithm for task-tester matching was derived to estimate the expected completion quality of each task by testers, thereby serving as a basis for task allocation. Furthermore, recognizing the differences in task importance, the concept of task priority was introduced to establish a crowdtesting task assignment model based on dynamic task priorities. Additionally, a crowdtesting task assignment algorithm grounded in dynamic task priorities was devised. The experimental results were found to be satisfactory.