SmartBear recently released its State of Software Quality | Code Review 2021 report. The report highlights the industry trends and findings based off a survey of close to 800 respondents from the coding industry. While many interesting discoveries were shared, we’ve narrowed down and examined the top ten insights from the 2021 report.
1. Code review: The number one thing a company can do to improve code quality.
Code review remains the biggest influence on improving code quality (as one might predict), with unit testing a distant second. Unit testing and code review both address and capture issues early in the lifecycle, demonstrating that organizations are realizing the importance of catching costly errors before code is implemented.
2. Main benefits of code review include easier compliance, internal audits, and enhanced mobility of code.
There was some movement over the past three years in survey respondents’ views. The ability to comply with regulatory standards seems to be the biggest gain in their eyes, with an almost 8% improvement compared to 2019. This is the third straight year this has increased, indicating the growing importance code review has in complying with government regulations.
3. Dev teams that review daily or weekly with a tool-based system are more satisfied than teams that review biweekly or longer.
Teams are adapting to a remote or hybrid work environment, which means that two code review approaches have become increasingly difficult: ad-hoc (over-the-shoulder) and in-person meetings-based review. A tool-based code review process continues to offer advantages in and out of the office, as indicated by 80% of satisfied respondents participating in tool-based review of some kind.
Alternatively, 47% of those unsatisfied with their code review process are neglecting tool-based code review entirely. Thus, we highly recommend development teams participate in tool-based review of some kind. The more frequent the better.
4. Teams with strong code-review guidelines and pull-reporting metrics often are more satisfied.
For a process to operate at peak performance, there must be clear guidelines and monitoring of key metrics. Consistent reporting lets development teams track what’s important on a regular cadence. Clear guidelines ensure teams know the protocols and correct handling of issues and escalation. This directly translates to team satisfaction, as 55% of respondents satisfied or highly satisfied with the regular pull reports of their code review process. Furthermore, 82% of those respondents have clear guidelines for their code review process.
5. Full or semi-remote teams with a code review process in place are more satisfied.
Over 80% of satisfied respondents are part of a team operating either fully or mostly remotely. Only 18% are returning to or are fully back in the office, compared with 30% of respondents dissatisfied with their current code review process. Teams that embrace strategies that function in hybrid or remote environments, such as tool-based review, also are more satisfied. This reaffirms the notion that teams do not need to be bound by physical locations or antiquated practices. Rather, teams should push for processes that reinforce flexibility and collaboration no matter the time or place.
6. Development teams are still remote, but they’ve become larger. 37% of respondents report a team greater than ten members, compared to 30% in 2020, and 31% in 2019.
The largest response for dev team size continues to be in the 6-10 member range, at roughly 39%. However, there has been a 16% jump in survey takers being a part of teams greater than 10 members since 2019. This may indicate a trend towards bigger development teams, as this year’s 37% response for teams greater than 10 members was the highest since 2018.
7. Organizations that believe in their code review process also use it as a training tool to quickly onboard new developers.
64% of survey respondents use code review as a teaching tool for new developers. The chart above shows the effectiveness of their technique. Teams that use code review as a teaching tool are almost 2.5 times more likely to be satisfied with their code review process than those that do not.
Naturally, 82% of respondents claimed they often learn from others while participating in code reviews, so doubling code review as a mentoring technique is a logical step. Teaching and learning are one of the best ways to increase engagement. Anyone on the team, from the developer on their first day to the most senior member, can learn something new.
It is not a one-time event either, as code review is an opportunity for daily, consistent learning. Your team will not only sharpen their code capabilities, but also build trust while improving code quality.
8. Frequent communication, collaboration, and trust are the building blocks for a successful team culture – especially in a remote work environment.
Answerers overwhelmingly responded that a strong culture in a remote work environment needs trust and regular communication between team members. Tools that support and provide collaboration inside or outside meetings are also imperative, so the entire team has knowledge of status and future direction. These pillars enable not only a strong team-based culture, they yield successful results.
9. Teams put out more annual releases as well as developing new releases faster: 43% of respondents deliver on a biweekly basis or sooner. However, changing requirements continue to be the biggest challenge for on time releases.
Development teams release more frequently than ever before. Consistent review of code and other artifacts continues to play a vital part in teams’ ability to release quality software, share knowledge and educate team members. It ensures everyone is on the same page as teams become larger and more geographically distributed.
Since 2019, Changing Requirements has been the biggest obstacle for on-time releases. If you look back to which artifacts are being reviewed, you will notice that Requirements reviews experienced a resurgence in popularity in this year’s survey.
As more than 3 out of 5 people recommend clear guidelines for their code review process, it’s quite possible teams are reexamining and redefining their requirements to continue delivering on time. Another noteworthy item is the 3% growth of both Regression Bugs and Waiting on QA in respondents’ choices from last year. This will be something to keep an eye on in the near future.
10. Review has expanded beyond code. All artifact review types except Schematics saw a significant increase as a part of teams' review process.
There is a resurgence in the importance of reviewing more than just code, as agile methodology continues to grow and agreement must be met across teams on the who, what, and why items are built. There is also a strong possibility the pandemic has forced review of more items due to remote work and lack of in-person meetings, as well as ‘water cooler’ conversations.
The SmartBear State of Software Quality | Code Review 2021 report highlighted these and numerous other trends within code, document, and artifact review. Access the full report here to view all of its insights to help your team improve its review process. You can also view the webinar summarizing the report’s findings with in-depth analysis of their impact for the software development industry here.
Click here for a free trial of Collaborator, the premier peer code and document review solution from SmartBear.