It is an approach of systematically evaluating the code structure of the software application, where the author of the code i.e. the developer, along with its peers, colleagues and experienced testers examines and reviews the whole programming code against the established standards & procedures.
It is an effective and inexpensive process, which is used to detect the coding defects at an initial stage of development especially, security loopholes and gaps in the software product such as memory leaks, buffer overflow, etc.
Further, the code review is done to ensure:
The job of performing the code review may be carried out either manually by reading & studying the code line by line or through automation using specialized programs & tools.
Below mentioned, are some of the approaches or techniques, which may be used throughout the development process to execute the task of the code review.
It is a smart and flexible way, of sending the code, over an e-mail, to the professionals, engaged in the code review. In this approach, a developer, passes on its developed code to its peers to review it, and accordingly, provide feedback on the e-mail.
Although, its a better alternative to the approach of gathering the peers in a room and performing the code review, but it may arise the situation of hotchpotch for the developer such as what to be consider or not to be consider after reading the large number of e-mails.
It may be seen as one of the easiest method to perform the code review. In this method, a developer invites his one of the talented colleagues over his system to sit and go through the developed code, while the developer during the process keeps on providing information and details of the code to his colleague for his better understanding.
It is the easiest and effective method, to do code reviews, with the help of specialized software tools, made for the purpose of code review. These tools are capable to integrate with the multiple variants of IDE and the development frameworks. Moreover, these tools, outputs the results of the code review in the statistical form, providing metrics to have a better view of the code review outcomes.
As the name suggests, pair programming, involves the pairing of two developers, who simultaneously, performs the code review, on the same, but on different machines, and later on exchange their reviews, to consolidate them, to generate, effective results.
Apart from the code review, this method provides the advantage of integrating the juniors with their seniors so as to gain knowledge and working experience.
Below listed, are some of the tools that are readily available in the market to assist the developers in the task of code review.