Case Study

Development of the Audio Quality Tool app

Back-end Developer doskonalący narzędzie jakości dźwięku dla klienta

The client

 

Logo-1

 

Industry
  • Automotive
  • 4th largest automotive group in the world (resulting from the merger between Fiat-Chrysler and PSA Group)
  • Includes 14 brands, such as: Peugeot, Citroën, Fiat, Alfa Romeo, Opel, Chrysler, Jeep, among others

Challenge

This project came up given the need to visualize background noise of audio files in a more user-friendly way. To that end, the Audio Quality Tool application was developed, which allows audio files to be classified and displayed in a way that can be understood by all users.

The application receives a set of audio files and classifies each one according to the background noise found. At the end of the sorting process, users can know which parts of the audio file have good quality, or not.

Additionally, the application allows quality comparisons between different audio files through intuitive graphics for users.


Solution

Three major components were developed with well-defined purposes:

  • Audio Quality Tool: application developed in Java Swing, responsible for receiving the user's audio files and sending them to the Python Package, so that they can be classified. This component is also responsible for presenting the results to the users;
  • Python Package: component developed in Python to allow the classification of audio files. This classification was possible thanks to the several data mining and machine learning libraries that python language natively has. 
    Besides allowing the classification, this component also generates CSV files with the classification for each time instant of the audio file;
  • License Key: component developed in Java Swing, which allows the creation and management of licenses.
    Due to security issues within the PSA Group - also known as Peugeot S.A. or PSA Peugeot Citroën -, it was necessary to develop licenses based on advanced cryptography, so that only certain duly authorized users within the PSA Group could access the Audio Quality Tool application (to enter the application, the user would have to have a license duly installed on his computer, which had reliable information about it). 
    Only then could certain users use the application. In addition, the Group Administrator could manage the licenses and allocate them to the users he wanted.

Methodology

A hybrid methodology was used, involving practices from both Waterfall and Scrum approaches.


Technologies

  • Audio Quality Tool: Java 8; Spring Boot
  • Python Package: Python 3.6.5 x64 R2 (Pandas)
  • License Key: Java 8; Spring Boot
  • Database: SQLite

Results

Users are now able to view background noise from audio files in a more user-friendly way.

In addition, the PSA Group was able to develop higher quality sound systems that could be integrated into its cars.


Time and resources

The project lasted 3 months. The team included:

  • Project Manager;
  • Functional Analyst;
  • 1 Back-end Developer.

Architecture

Audio Quality Tool:

Imagem 1-1

License Key:

Imagem 2-1

 


Images of the application

Audio Quality Tool:

Imagem 3-1

Imagem 4

Imagem 5

 

License Key:

Imagem 6

Imagem 7