ThalesRaytheonSystems uses SonarQube as an “integrated solution and easy to use at each level of a project in development”.
ThalesRaytheonSystems is a transatlantic joint venture that specializes in surveillance radars, air operation command and control systems, and ground-based weapon-locating radars. The company, a 50:50 joint venture between Raytheon and ThalesGroup, provides critical decision-making solutions for complex missions through the integration of sensors, operations centers, and telecommunications networks for air operations and battlefield systems. For its core activities; which consist of system integration, complex program management, real time software and human-machine interfaces, ThalesRaytheonSystems must rely on a portfolio of powerful, high-quality and maintainable software applications.
Software quality is a must across technologies and work packages
Prior to the deployment of SonarQube, ThalesRaytheonSystems evaluated several software quality tools but none fit the bill. Some weren’t integrated into the development environment, some presented licensing issues, and still others were lacking in terms of technologies covered and features available. As a result, only a few components and projects were being analyzed, and the results weren’t being exploited. Little quality improvement was seen because of the manual, “heavy weight” nature of the process, posing a real challenge to the long-term sustainability and maintainability of ThalesRaytheonSystems’ application portfolio.
ThalesRaytheonSystems is moving to continuous integration, and including software quality analysis in the process. Given the complexity of the environment, ThalesRaytheonSystems needed a solution that would integrate well with its existing infrastructure, and be flexible enough to be used across its entire software portfolio, which includes multiple technologies and a wide range of applications.
SonarSource versus a collection of tools
ThalesRaytheonSystems chose SonarQube and requested an administrative training session from SonarSource in order to speed up the adoption and onboarding process. Josiane Denis remembers her first impressions: “The SonarQube solution is very easy to use, and it is integrated in Jenkins to manage the jobs. It fits with ThalesRaytheonSystems needs, since we have many components, and many work packages, in different languages, and the notion of ‘views’ is essential.”
Following the initial training and demonstration, ThalesRaytheonSystems compared its previous method of using a collection of tools (both freeware, and commercial with per-user licenses) versus the combination of free and commercial SonarSource products it uses: C/C++, Portfolio Management (Views), and Technical Debt Computation (SQALE). “It showed a significant gain on both time needed to implement the solution and on cost, since the licence models are more adapted to our needs,” Denis said. It quickly became clear that the SonarSource solutions provided a much-better Return-on-Investment for ThalesRaytheonSystems, given its capabilities, technology coverage, and licensing model.
Denis also praised the SonarSource team’s support and responsiveness in integrating ThalesRaytheonSystems’s rules for the C/C++ language, which were applicable for the broader C++ community, into the C/C++ plugin. Another compelling feature for ThalesRaytheonSystems was the integration of the SQALE method into SonarQube, allowing the organization to precisely track the remediation cost for its technical debt.
Successful implementation of an end-to-end software quality process
Now that SonarQube is fully integrated into ThalesRaytheonSystems’s environment and culture, development teams review software quality results regularly, and take concrete actions to improve the level of code quality in accordance with milestones and costs, and the portfolio management features allow software configuration managers to get results on global projects and the entire software portfolio.
Going forward, ThalesRaytheonSystems has further plans to improve its software quality processes. It will add controls of unit tests and integration tests to its analyses. It is also planning to deploy the SonarQube Eclipse plugin in order to enable developers to detect and correct issues locally, directly within the development environment.
Denis said she would recommend both SonarQube and SonarSource because “SonarQube is an integrated solution and easy to use at each level of the project in development. SonarSource has a very good support and ThalesRaytheonSystems benefits from a good collaboration with SonarSource.”