Ensuring the quality of your memories with SonarQube



Behind all of Hofmann’s digital innovation were multiple software projects that needed to be analyzed to ensure business operation.

Mobile and desktop applications that users download to create customized products, ecommerce (backoffice and gateway), a production dashboard, internet apps or the entire production factory suite, are some of the examples of the software that Hofmann handles.

Caso de exito de Hofmann y excentia

Key project

Starting point

Hofmann had no control over their code and were not able to measure the quality of their software or the deliveries of their suppliers.

Objective

We were clear about this. The project’s goal was to centralize control and management of all software.

Solution

Implementation of SonarQube, SonarLint and its integration with tools such as Jenkins and migration to version control repositories.

Logo Hofmann

Hofmann, a leader in digital albums and personalized photography products, transformed its physical product into a digital revolution.

From the physical frames that our grandmothers have to the current personalized digital albums and this is how this Valencian company has been present in the history of photography.

The need to measure code quality

This situation, in which much of the development was not involved internally, caused a sense of frustration in the Hofmann team because they did not feel useful because they were not able to participate in software development.

In addition, its code was in a state of decentralization and lack of control because there was no single place where the company’s software applications resided. To top it off, this situation also involved a very slow response to bugs and a very poor bug report. In this context, it was clear that the first step was to centralize the control and management of all this software.

Jira Software para equipos de desarrollo
Jira Software flujos de trabajo ágiles y avanzados

Regain the reins of version control

Hofmann applications were becoming big business critical projects, which were constantly changing without any control. Any mistake or change could translate into a big impact.

With the incorporation of version control, it was intended not only to improve management and transparency in the code, but to provide the technical team with a version system that allows them to improve the code of their applications without having a negative and direct impact on the business. A clear commitment to work on quality from the beginning, scalable and transparent.

Hofmann and excentia, fellow travelers

With excentia, Hofmann found a partner who would accompany them on the road of continuous inspection. The first step was to move from sending binaries to Hofmann FTP, to a shared SVN. Version control was incorporated, this being the key and necessary piece of the quality and continuous integration environment that was starting.

We also help them implement SonarQube and integrate it with tools like Jenkins, creating a complete system of continuous code inspectio

Jira Software escala con tu empresa
Logo Hofmann

"Having the support of excentia is very useful. They provide us with new ideas based on all their experience. They presented us with a project structured in very well identified phases that gives us a lot of confidence. Its incorporation has been enriching for all involved, both for Hofmann and for external suppliers"

Improving code quality is possible

What have we done with Hofmann to improve code quality?

Jira Software Cloud soluciónes personalizada
  • Migration to Git/GitHub repositories of all code.
  • Build an environment of quality and continuous integration, allowing early detection of errors, based on Git/GitHub + Jenkins + SonarQube + Unit and automatic tests.
  • Implementation and configuration of SonarQube and SonarLint for static code analysis.
  • Implementation and configuration of SonarQube and SonarLint for static code analysis.
  • Define a strategy of pipelines and multi-branch pipelines.
  • Define well-defined testing strategy and testing plans.
  • Clean as you Code evangelism to work with legacy code and critical applications.

And in the end, Clean Code for Hofmann

With all these actions, little by little, Hofmann was getting to know its code better, it has debugged the detection of errors and as a result they are more specific when reporting bugs.

After a first analysis, the Hofmann team was able to identify blocking or critical bugs and focus on repairing them, thus better prioritizing their tasks. The initial photo showed a good state of code quality with very good maintainability data, and adequate ratings in safety and reliability. However, a high percentage of duplicate code was detected.

With all this information, Hofmann knows its virtues and defects, the code and quality of this offered by its suppliers, and can work under a defined and argued methodology, without affecting the operation of the business.

Receive the latest news about our products and services directly to your inbox