Removing stagnation from modern code review

Finding defects efficently is one of the major problems in software development, a problem that often still relies largely on human inspection of code to find defects. Many software development projects use code reviews as a mean to ensure this human inspection occurs. Known as modern code review, this approach is based on tools, such as Gerrit, that help the developers in the reviewing process. As part of this approach, developers are often presented with a list of open code reviews requiring attention; it is left to the developer to find a suitable review on which to work on from a long list of reviews. We present an investigation of two algorithms that recommend an ordering of the list of open reviews based on properties of the reviews. We use a simulation study over the JGit project from the Eclipse Foundation to show that an algorithm based on ordering reviews from least lines of codes changed in the code review to most lines of code out performs other algorithms. This algorithm shows promise for eliminating stagnation of reviews and optimizing the average duration reviews are open.