Publicação

Continuous inspection of software quality in an automotive project

Ver documento

Detalhes bibliográficos
Resumo:Due to the amount of software that is produced every day in the automotive industry, improve software quality became a necessity, especially in areas where safety is a critical point, such as autonomous driving. Following on from this, continuous inspection of software is important, timely and central, to guarantee software quality and avoid the worst scenarios related to the automotive industry, particularly with autonomous driving. Even so, this proposal is motivated by the huge number of failures associated with low quality software. Additionally, extending a new feature could damage the success of the entire project because of potential software flaws or poor programming practices. After all, bad quality software leads to the need to review and rewrite the software and then, software’s lifecycle is always going around, so this has associated costs in terms of money, time and resources and can lead to a bad reputation for the company, due to not meeting deadlines, delivering low quality software, among other factors. In this way, the main objective of this research is to achieve a solution for continuous inspection of software quality in the context of the company Bosch Car Multimedia. For this, a tool called CIAnalyzer Tool was developed, and an architecture was designed and implemented in which CIAnalyzer acts as an intermediary between SonarQube and Jenkins providing an analysis of the software, every time someone delivers a software to the repository. This software passes through an analysis and, if it passes the analysis, is delivered to the repository, contributing to the continuous inspection of the software code. After the implementation of this solution, there was a 77.7% decrease in bugs, a 64.6% reduction in code smells, and 100% in vulnerabilities existing in the repository. The results were good, and this dissertation helps in theory and in practice in CI/CD area, and the knowledge created was helpful, contributing with a solution capable to provide continuous inspection of the software quality, in an automotive project.
Autores principais:Ferreira, Ana Margarida Oliveira
Assunto:Continuous inspection Software quality Automotive industry Continuous delivery Continuous integration Inspeção contínua Qualidade do software Indústria automóvel Entrega contínua Integração contínua
Ano:2023
País:Portugal
Tipo de documento:dissertação de mestrado
Tipo de acesso:acesso aberto
Instituição associada:Universidade do Minho
Idioma:inglês
Origem:RepositóriUM - Universidade do Minho
Descrição
Resumo:Due to the amount of software that is produced every day in the automotive industry, improve software quality became a necessity, especially in areas where safety is a critical point, such as autonomous driving. Following on from this, continuous inspection of software is important, timely and central, to guarantee software quality and avoid the worst scenarios related to the automotive industry, particularly with autonomous driving. Even so, this proposal is motivated by the huge number of failures associated with low quality software. Additionally, extending a new feature could damage the success of the entire project because of potential software flaws or poor programming practices. After all, bad quality software leads to the need to review and rewrite the software and then, software’s lifecycle is always going around, so this has associated costs in terms of money, time and resources and can lead to a bad reputation for the company, due to not meeting deadlines, delivering low quality software, among other factors. In this way, the main objective of this research is to achieve a solution for continuous inspection of software quality in the context of the company Bosch Car Multimedia. For this, a tool called CIAnalyzer Tool was developed, and an architecture was designed and implemented in which CIAnalyzer acts as an intermediary between SonarQube and Jenkins providing an analysis of the software, every time someone delivers a software to the repository. This software passes through an analysis and, if it passes the analysis, is delivered to the repository, contributing to the continuous inspection of the software code. After the implementation of this solution, there was a 77.7% decrease in bugs, a 64.6% reduction in code smells, and 100% in vulnerabilities existing in the repository. The results were good, and this dissertation helps in theory and in practice in CI/CD area, and the knowledge created was helpful, contributing with a solution capable to provide continuous inspection of the software quality, in an automotive project.