Publicação
Fine-grained analysis of bugs in open source quantum projects
| 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 |
| 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. |
|---|