Publicação
Continuous inspection of software quality in an automotive project
| 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 |
| 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. |
|---|