SonarQube makes software quality an integral component embedded in the software development process at Agirc & Arrco.
Agirc & Arrco is a French company managing the supplemental pensions of more than 22 million employees and senior executives in a vast range of trades spanning industry, agriculture, and commerce. Calculating and computing pension entitlements for this many clients can be costly, if not catastrophic, if done wrong. Agirc & Arrco genuinely needs best-in-class software in order to ensure its business operations run smoothly, and its pensions are evaluated correctly and in a timely manner. Furthermore, having superior software quality means less time spent on bug fixes and higher efficiency in developing new projects.
Manual code reviews != Software quality
Back in 2008, Agirc & Arrco was aware of the need to improve its applications before it could progress, but its coding teams simply did not know how. The quality process was limited to conducting manual code reviews on small pieces of the applications in response to known bugs. As a short-term result, those bugs were fixed, but the process left the core, underlying problems untouched. Agirc & Arrco faced three key challenges that are common to many organizations at this stage in the software quality process:
- Inability to identify the starting point(s), and prioritize efforts. The teams didn’t know where to start the improvements, or where the quick-wins were – if they even existed.
- Inability to see how much improvement was needed, and estimate the effort to bring quality up to acceptable levels.
- Inability to prevent newly created applications from reintroducing the same quality issues that were being corrected in the existing applications; the same mistakes were made again and again.
SonarQube makes code improvement clear and simple
During the fall of 2008, Agirc & Arrco replaced its Maven 1 building process with Maven 2, and as part of this process evaluated several solutions to support ongoing software quality improvements. After much research, SonarQube was selected as the centralized solution to manage software quality throughout the organization. “First of all SonarQube is a simple as possible when you start using it: no need of huge configuration” says Sébastien Touzet, Application Architect at GIE Agirc Arrco. Touzet also appreciates the fact that SonarQube is integrated into the development environment. “One of the most important feature for us is the Eclipse integration through the SonarQube plugin: now our developers can see and improve their code without having to switch between multiple tools”.
Having implemented the SQALE plugin for technical debt evaluation, Touzet said the teams benefit from objective metrics on the key measures of software quality, together with indications of how to fix issues. The simplicity and user-friendliness of SonarQube have encouraged everyone in the organization to get involved and look closely at Agirc & Arrco’s software quality and to take concrete actions to improve it over time. For example, during a recent performance improvement project, a specialized audit company was engaged to review the company’s COBOL batch programs. The team then used SonarQube’s easy extensibility to develop new SonarQube rules based on the audit findings. Now the entire development team is able to follow those coding standards and avoid introducing new performance issues into its applications. New developers instantly know how to insure the efficiency of batch programs and avoid introducing new issues.
The advantages gained from improving code
For too long, Agirc & Arrco had underestimated the need for code quality improvements. There was a vague understanding that improvement was needed, but lack of visibility into the problem prevented anyone from understanding either its scope or its importance. In 2008, SonarQube first provided that visibility, and now it makes software quality an integral component embedded in the software development process.
Today, SonarQube runs every day, analyzing more than 2,400,000 lines of code from 50 projects. The entire organization is involved, and participates in the embedded quality process, gradually improving existing software quality and avoiding quality flaws in newly developed applications. The company and its 200-strong development team are focused on long-term, value-added activities, instead of short-term manual bug fixing in fire-fighting mode. The business impact to Agirc & Arrco is hard to overstate: better software considerably reduces the risk of miscalculating pension entitlements, and gives the company the flexibility to adapt its software quickly to changing external circumstances.
Industry: Financial Service