Publicação

Fine-grained analysis of bugs in open source quantum projects

Ver documento

Detalhes bibliográficos
Resumo:For the past few years, quantum technologies have rapidly emerged to solve problems that can not be solved in an efficient manner by classical technologies. As quantum software matures, more and more software products harnessing the power of quantum computing are being developed, making it necessary to ensure quantum software’s quality. In pursuance of quantum software quality assurance, we look at bugs that arise from different open-source quantum projects. More specifically, we dig in on the general characteristics of traditional bugs and quantum domain-specific bugs, establishing comparative terms between them every time it is possible. Moreover, we investigate the bug-fixing patches of those bugs as well as code smells over the buggy and fixed project versions. Our study aims to call out the community for some of the malpractices that can be found in quantum projects. Studies such as ours are of utmost importance as they enable us to understand all the software bugs’ properties, manifestations, and impacts in our programs. Our findings could also guide developers to, e.g., implement repairing tools to avoid these malpractices and enhance the correctness of our programs. From this study, we conclude that the most prevalent buggy code elements found in quantum projects are “name” and “string”. Bugs labeled as “Quantum” are fixed in less time than classical bugs possibly due to the severity of quantum domain bugs. The most common repair operations found are editing a “name” and/or a “string”. Code smells found in classical projects are also prevalent in quantum projects. 50 % of the bugfixes contain at least one test unit.
Autores principais:Câmara, Rúben Miguel Alves
Assunto:Computação Quântica Engenharia de Software Quântica Teste de Software Quântico Teses de mestrado - 2023
Ano:2023
País:Portugal
Tipo de documento:dissertação de mestrado
Tipo de acesso:acesso aberto
Instituição associada:Universidade de Lisboa
Idioma:inglês
Origem:Repositório da Universidade de Lisboa
Descrição
Resumo:For the past few years, quantum technologies have rapidly emerged to solve problems that can not be solved in an efficient manner by classical technologies. As quantum software matures, more and more software products harnessing the power of quantum computing are being developed, making it necessary to ensure quantum software’s quality. In pursuance of quantum software quality assurance, we look at bugs that arise from different open-source quantum projects. More specifically, we dig in on the general characteristics of traditional bugs and quantum domain-specific bugs, establishing comparative terms between them every time it is possible. Moreover, we investigate the bug-fixing patches of those bugs as well as code smells over the buggy and fixed project versions. Our study aims to call out the community for some of the malpractices that can be found in quantum projects. Studies such as ours are of utmost importance as they enable us to understand all the software bugs’ properties, manifestations, and impacts in our programs. Our findings could also guide developers to, e.g., implement repairing tools to avoid these malpractices and enhance the correctness of our programs. From this study, we conclude that the most prevalent buggy code elements found in quantum projects are “name” and “string”. Bugs labeled as “Quantum” are fixed in less time than classical bugs possibly due to the severity of quantum domain bugs. The most common repair operations found are editing a “name” and/or a “string”. Code smells found in classical projects are also prevalent in quantum projects. 50 % of the bugfixes contain at least one test unit.