The Assessor's Dilemma: Improving Bug Repair via Empirical Game Theory
Priority inflation occurs when a QA engineer or a project manager requesting a feature inflates the priority of their task so that developers deliver the fix or the new functionality faster. We survey developers and show that priority inflation occurs and misallocates developer time. We are the first to apply empirical game-theoretic analysis (EGTA) to a software engineering problem, specifically priority inflation. First, we extract prioritisation strategies from 42,620 issues from Apache’s JIRA, then use TaskAssessor, our EGTA-based modelling approach, to confirm conventional wisdom and show that the common process of a QA engineer assigning priority labels is susceptible to priority inflation. We then show that the common mitigation strategy of having a bug triage team assigning priorities does not resolve priority inflation and slows development. We then use mechanism design to devise assessor-throttling, a new, lightweight prioritisation process, immune to priority inflation. We show that assessor-throttling resolves 97% of high priority tasks, 69% better than simply relying on those filing tasks to assign their priorities. Finally, we present TheFed, a browser extension for Chrome that supports assessor-throttling.