Code Review Process
Adherence to specified requirements
The code must meet all specified requirements, no more, no less.
For it to be considered completed, no requirement should be left out, except in special and properly documented cases.Adherence to Codeing Best Practices
The code involved in this review must adhere to all best practices and principles, namely: SOLID, DRY, YAGNI, KISS.Adherence to Clean Code practices
The code should adhere to best practices of clean code that facilitate code readability and enable more efficient and secure maintenance.
An excellent reference for Clean Code is Uncle Bob's book of the same name.Preference for Design Patterns where applicable
One should always opt for the use of key patterns (GoF) where they address problems they solve.
Instead of trying to reinvent the wheel, it is always better to use a solution that has already been tested and adopted by the market to solve the problem.Good structuring, organization, and alignment with the solution's architecture
The code is well-structured and organized, and ordered correctly for use.
Artifacts (projects, classes, interfaces, etc.) are organized, adhere to the solution's architecture, and follow project and company standards.Optimized for performance and adherence to software "-ilities"
The code meets performance requirements and is built with performance in mind, performing in the best possible way.
Additionally, it adheres to (at least the main) software development "-ilities".Adherence to project, team, and corporate standards
The code must adhere to all standards defined for the project, by the team, and also by the company.
These standards range from nomenclatures to snippets and approved libraries.Automated test coverage
The code must be completely covered by automated tests.
The types of tests vary according to the function of the code; however, unit tests are always mandatory.
A good percentage of coverage is desired, but the focus should be on business rules and not implementation details.
Adherence to automated code review rules
The code must meet all automated code review rules, such as those from SonarQube.
In cases where some rules do not apply or are outdated, they should be updated.Adherence to all other company policies and guidelines
The code must adhere to other guidelines, such as security and auditing, of the company, as well as other global policies.