Automated Code Review Process By Sandesh Sharma
Contents  Problem Statement  Available Tools − Gerrit − SONAR
Problem Statement  Should Cover Following Requirements − Architecture & Design − Comments − Coding Rules − Potential Bugs − Complexity − Unit Tests − Duplications  Can Integrate with Continuous Integration Environment (CI Integration with SVN, Maven and Ant Build)  Create task using the JIRA on bugs  Running locally  Collaboration and Manual Code review Process  Maintenance
Gerrit  A Basic Commit-to-Deploy Pipeline  Collaborative Approach (Peer to Peer Code Review)  Developer Notifications  Dashboard & Reports  Sharing across  Multiple branches with Gerrit + Jenkins  The Human Factor  Pro-tips/best practices
Gerrit
Gerrit
The Gerrit Flow gerrit upstream dev-adev-b
Flow of changes Create Local Branch % git checkout -b topic-branch work Push to Gerrit % git push gerrit HEAD:refs/for/master
Flow of changes Create Local Branch work Push to Gerrit Review Fix commit Upstream repo rejected approved/ submitted rebased!
rejected Your development work-flow in commands  git checkout -b local-topic-branch  work work work  git rebase -i upstream/master # fix up commits  git push gerrit HEAD:refs/for/master  Create new commits based on reviews  git rebase -i upstream/master # squash up  git push gerrit HEAD:refs/for/master
SONAR  Community based free software distribution Under the license LGPL v3.  Bigger Code Quality Matrix with wide range of plug-ins.  Integration with − Maven − JIRA − SVN − Eclipse − Ant  Interactive Reports  API Doc’s creation
SONAR
SONAR Project Dashboard
SONAR Defect Detection
SONAR Design Analysis: Package Cycles
thAnks ersandeshsharma [at] gmail.com

Automated code review process