The application development team at EXFO needed to validate new code followed the company’s application framework standards. Achieving this would lower software maintenance costs and improve code readability. By turning to SmartBear Collaborate to address this challenge, EXFO reduced app development costs with the ability to identify code defects earlier in the process. The application development team also increased its capacity to complete reviews 5X while accelerating the workflow timeline for reviewing, revising and completing code reviews.
Business Need
The internal software development team in the EXFO Wireline Transport & Datacom Division strives to constantly evolve customer-facing applications by adding new features while maintaining the performance of existing features. Achieving this mission makes it easier for customers to conduct business with EXFO.
As the company grew in recent years and hired several additional software developers, gaining the capability to efficiently conduct application code review became more critical.
"Since any new software developers we bring on board are not familiar with our applications, code review is crucial for us to validate framework standards are followed," said Stéphane Pineault, a Software Manager for EXFO. "By making sure the code we develop follows standards, we lower our software maintenance costs and improve code readability. Gaining this capability also encourages reuse of the code—nobody wants to cut and paste a defect into multiple files."
EXFO also realized an effective code review solution could serve as an alternative way to train inexperienced developers while also reducing the cost of repairing defects. "The ability to identify defects early is critical," Pineault said. "It’s much more costly to address defects found in verification compared to the cost of identifying problems during the development stage."
Previously, EXFO executed code reviews manually through e-mail and verbal discussions. The process proved to be so inefficient, costly and painful that EXFO decided to automate the process. "Contextualizing each comment is particularly painful when comments need to be entered about a specific part of a big algorithm," Pineault said.
EXFO reviews became extremely complex when requiring multiple iterations. Sometimes, reviewers lost track of what they already reviewed and had to start the review all over again. Reviewers and authors also found it difficult to clearly see when all comments were addressed.
"We found it difficult to reference reviews after completing code updates, and management had no visibility into the status of reviews," Pineault added. "When sending a second iteration of a review, developers often had to create a new e-mail or change the list of files included in the patch, making it difficult to follow the flow of the review."