Scheduling Tasks for Software Crowdsourcing Platforms to Reduce Task Failure