Browse Prior Art Database

Determining set of ideal source code reviewers via recursive analysis of annotations

IP.com Disclosure Number: IPCOM000237988D
Publication Date: 2014-Jul-24
Document File: 3 page(s) / 48K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed is a source code review method that leverages a new type of source code annotation in unique combination with source code change history analysis to identify a set of developers who have been involved with a given segment of a source code file. The approach is recursive, following referencing code segments to expand the set of reviewers to ensure the changes are understood in an end-to-end context.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 43% of the total text.

Page 01 of 3

Determining set of ideal source code reviewers via recursive analysis of annotations

Code review is an essential step in the software development life cycle. When a developer has completed a set of source code additions or modifications, a group of peers inspects the changes to provide feedback. This is important to improve the quality of the source code changes through collaboration. Ultimately, most development processes require that one or more peers officially approve the code changes by making an entry in a Source Configuration Management (SCM) system.

One problem in code reviews is identifying the best peers to review the code changes. For example, if User A modifies a source code file, then User A needs to select a reviewer for the change. If User A selects a non-ideal peer, then the review might not be as productive and defects or security exposures may be introduced into the product. One approach for selecting a peer is through source code component ownership. Certain developers are assigned to the lead owner for a particular set of source code files. Any changes to the files must be reviewed (or delegated for review) by the lead developer.

This approach is often insufficient. For example, a performance engineer often makes changes that impact many components at once in an end-to-end workflow optimization. Some of the changes made may be specific to synchronization, multi-threading, advanced data structures, etc. Once the engineer delivers these changes into the product, a later developer may want to make changes to that code. However, that later developer might not understand the intricacies of the synchronization logic, how the code is part of an end-to-end workflow to optimize performance as intended, etc. It

would be useful if the first performance engineer became involved in the later source

code review process to ensure that defects are not introduced; however, the component ownership approach is only going to include the lead developer for the component and not the original working developer.

The novel contribution is a method to uniquely solve the problem of peer selection to enhance the feedback generated in the source code review process and improve quality of the product. The method leverages a new type of source code annotation in unique combination with source code change history analysis to identify a set of developers who have been involved with a given segment of a source code file. The approach is also recursive so that it can follow referencing code segments to expand the set of reviewers to ensure the changes are understood in an end-to-end context. With an enhanced and dynamic set of peers identified, the code review process is more efficient and effective.

The method includes a unique @reviewer and accompanying source code annotations to identify an individual who wants to be included in future reviews of a specified block of source code. The method also includes a recursive analysis of source code r...