Continuous Inspection

BSB Develops Innovative IT Solutions for the Finance Sector, Raises Product Quality By Analyzing 5.75 Million LoC with Sonar

BSB is a provider of business solutions and IT services for the finance sector. In 2009, BSB implemented Sonar to analyze and manage the code quality of its core software framework, used by more than 80 developers in three countries. Today, BSB's Sonar implementation analyzes more than 5.75 million LoC daily.

Overview

BSB is a provider of business solutions and IT services for insurers, private bankers, portfolio managers, wealth managers, holding companies, independent financial advisors and investment funds. BSB’s core products are Solife for life insurance policy administration, and Soliam for institutional asset management and private client wealth management. The company employs 320 people and has its headquarters in Belgium, with offices in France, Ireland, Luxembourg, the Netherlands and the United Kingdom.

Until 2009, BSB relied on multiple open source tools to manage the quality of its core software framework. This approach resulted in fragmented quality metrics, and failed to give BSB’s development and quality teams insight into product quality and evolution. Given the strategic significance of having a robust software framework on which to base product development, BSB’s Research and Technology group initiated a project to run all of BSB’s software code through Sonar, in order to gain deeper insight and better management tools for internal code quality.

Today, BSB operates two Sonar instances, collectively analyzing 5.75 million lines of code a day and being used by more than 80 developers. Sonar is an integral part of BSB’s IT infrastructure, and BSB’s developers and architects make extensive use of Sonar’s differential views, alerts, plugins and support for custom rulesets to identify, track and resolve quality issues on an ongoing basis.

The Challenge: Improving Quality and Developer Productivity with Better Quality Metrics

BSB’s products use a custom software framework that has been designed and developed in-house to meet BSB’s stringent quality and performance requirements. This framework is maintained and enhanced on an ongoing basis by BSB’s Research and Technology group, which is primarily responsible for creating tools to improve the productivity of BSB’s development teams.

Until 2009, the Research and Technology group relied on disparate open source tools, such as Cobertura, Checkstyle and Findbugs, to identify and manage quality issues in its framework. The group faced significant challenges with these tools, most notably the lack of a unified interface to view and track quality issues. These tools also lacked the capability to measure quality evolution over time in a manageable way, making it difficult to assess improvements in the software quality of its framework.

Since BSB’s framework was used extensively by developers in three different locations (Belgium, Luxembourg and Ireland) to enable its products, it was strategically important for the company to ensure that the framework was being implemented in accordance with best practices and at the highest possible quality. It fell to the Research and Technology group to find an objective system to define the factors making up high-quality code, to make sure these factors were being properly tracked, and to measure the evolution of these factors over time.

The Solution: Consolidated Metrics, Custom Dashboards and Continuous Inspection

In 2009, having heard about Sonar from various sources, BSB’s Research and Technology Group installed it as a Proof of Concept, to validate its functionality and verify whether it would meet their needs. Within three months, it was clear to the team that Sonar had all the key features they needed to objectively measure and verify code quality. In particular, the team was impressed with Sonar’s Continuous Inspection features, which allowed them to measure quality evolution during and after every two-week release cycle and thereby gain a deeper understanding of quality issues.

Sonar offered a key advantage over the previous approach of using multiple separate products: it consolidated quality information into a centralized dashboard, and provided project managers and developers with easy-to-use Web tools that displayed comprehensive and understandable quality statistics. This made it easier for developers and managers to engage with each other to understand and resolve quality issues.

Sonar’s open source nature and regular release schedule was also an advantage: it meant that the group didn’t need to be overly concerned about licensing and support costs, which would require additional buy-in from the company’s financial managers. This aspect helped to reduce resistance to the group’s recommendation that Sonar be installed as BSB’s enterprise-wide quality management platform.

Having made the decision to commission Sonar, the team moved quickly to integrate it with BSB’s product development tool-chain. The first step was to train the product team to understand the benefits of Sonar, and the unique features it offered to help developers and project managers improve code quality. Following this initial training, the team spun up a new Sonar instance for the product development team and initialized it with the codebase for one of the company’s Java-based products. Over the subsequent year, the remaining Java-based product was migrated to Sonar and in 2012, the product development team also began analyzing Flex-based products with Sonar.

The Result: Full-Featured, Integrated and Relevant Quality Reports for Several Million Lines of Code Each Day

Today, BSB operates two Sonar instances, one for the Research and Technology group and one for the Products group. The Research and Technology instance analyses 20 projects, encompassing approximately 1 million lines of code, several times a day. The Products instance analyzes 11 projects, encompassing approximately 4.75 million lines of code.

BSB’s technical architects and quality managers make extensive use of Sonar’s custom dashboards and history to focus on figures that have been identified as important. Sparklines are used to verify progress, and alert thresholds are used to quickly identify events that require immediate attention.

Sonar’s plugin architecture is also of immense value to BSB, as it has enabled the company to easily integrate Sonar with its existing IT and application lifecycle management (ALM) infrastructure. The Jenkins plugin integrates Sonar with BSB’s existing Continuous Integration infrastructure, while the SCM Activity plugin helps architects and QA managers identify team members to contact about code quality violations. Sonar’s LDAP plugin has been used to create a consistent authentication and authorization store, and the BSB team has also developed custom Sonar rulesets for business-specific use cases.

Conclusion

By using Sonar to inspect and manage the code quality of its products, BSB has been successful in improving the quality of its core software framework and, correspondingly, the quality of its entire software product suite. With Sonar, BSB is able to drive software innovation across its development teams whilst still managing its enterprise software portfolio in an economical and flexible manner.

About BSB

BSB is a provider of business solutions and IT services for insurers, private bankers, portfolio managers, wealth managers, holding companies, independent financial advisors and investment funds. It has more than 100 customers in 23 European countries. BSB’s core products are Solife for life insurance policy administration and Soliam for institutional asset management and private client wealth management. A subsidiary, Solfia, offers deployment of these services in ASP and SaaS modes. The company exists since 1995, employs 320 people and has its headquarters in Belgium, with offices in Belgium, France, Ireland, Luxembourg, the Netherlands, Switzerland and the United Kingdom. Visit http://www.bsb.com for more information.