Mémoire de maîtrise (2022)
|
Libre accès au plein texte de ce document Conditions d'utilisation: Tous droits réservés Télécharger (1MB) |
Résumé
Avec les progrès de l'informatique quantique ces dernières années, les logiciels quantiques deviennent essentiels pour explorer le plein potentiel des systèmes informatiques quantiques. Récemment, le génie logiciel quantique (QSE) est devenu un domaine émergent qui attire de plus en plus l'attention. Cependant, on ne sait pas quels sont les défis et les opportunités de l'informatique quantique auxquels est confrontée la communauté du génie logiciel. En tant que nouvelle approche pour effectuer des calculs afin de résoudre plus rapidement des problèmes spécifiques (par exemple, des problèmes d'optimisation combinatoire), la programmation quantique diffère de la programmation classique de plusieurs manières. Par exemple, l'état d'un programme quantique est de nature probabiliste et un ordinateur quantique est sujet aux erreurs en raison de l'instabilité des mécanismes quantiques. Par conséquent, les caractéristiques des problèmes de programmation quantique peuvent être très différentes de celles de la programmation classique. Cette thèse rapporte deux études empiriques menées dans le but de comprendre les problèmes de programmation quantique auxquels sont confrontés les développeurs de logiciels quantiques. Premièrement, nous effectuons une étude des défis perçus par les développeurs de logiciels quantiques et identifions des opportunités pour la recherche et la pratique du QSE. En particulier, nous examinons les forums de questions-réponses techniques où les développeurs posent des questions liées au QSE, et les rapports de problèmes GitHub où les développeurs soulèvent des problèmes liés au QSE. Deuxièmement, nous effectuons une étude des caractéristiques des bogues dans l'écosystème logiciel quantique et de leur distribution dans les composants du programme quantique. Pour comprendre les enjeux QSE perçus par les développeurs. Nous réalisons une étude empirique sur les forums Stack Exchange où les développeurs postent des questions et donnent des réponses liées à QSE et des rapports de problèmes Github où les développeurs soulèvent des problèmes liés au QSE dans des projets pratiques d'informatique quantique. Sur la base d'une taxonomie existante des types de questions sur Stack Overflow, nous effectuons d'abord une analyse qualitative des types de questions liées au QSE posées sur les forums Stack Exchange. Nous utilisons ensuite la modélisation automatisée des sujets pour découvrir les sujets dans les publications Stack Exchange liées au QSE et les rapports de problèmes GitHub.
Abstract
With the advance of quantum computing in recent years, quantum software becomes critical for exploring the full potential of quantum computing systems. Recently, quantum software engineering (QSE) becomes an emerging area attracting more and more attention. However, it is not clear what are the challenges and opportunities of quantum computing facing the software engineering community. As a new approach of performing computation to solve specific problems (e.g., combinatorial optimization problems) faster, quantum programming is different from classical programming in several different ways. For example, the state of a quantum program is probabilistic in nature, and a quantum computer is error-prone due to the instability of quantum mechanisms. Therefore, the characteristics of quantum programming issues may be very different from that of classical programming. This thesis reports two empirical studies to understand quantum programming issues facing quantum software developers. Firstly, we perform a study of the challenges perceived by quantum software developers and seek opportunities for future QSE research and practice. In particular, we examine technical Q&A forums where developers ask QSE-related questions, and GitHub issue reports where developers raise QSE-related issues. Secondly, we perform a study of the bug characteristics in the quantum software ecosystem and their distribution throughout the quantum program components. To understand the QSE-related challenges perceived by developers. We perform an empirical study on Stack Exchange forums where developers post QSE-related questions & answers and Github issue reports where developers raise QSE-related issues in practical quantum computing projects. Based on an existing taxonomy of question types on Stack Overflow, we first perform a qualitative analysis of the types of QSE-related questions asked on Stack Exchange forums. We then use automated topic modeling to uncover the topics in QSE-related Stack Exchange posts and GitHub issue reports. Our study highlights some particularly challenging areas of QSE that are different from that of traditional software engineering, such as explaining the theory behind quantum computing code, interpreting quantum program outputs, and bridging the knowledge gap between quantum computing and classical computing, as well as their associated opportunities. Regarding the characteristics of bugs occurring in quantum software projects. We conduct an empirical study on the bug reports (in the forms of pull requests and issue reports) of 125 quantum software projects hosted on GitHub, in order to provide insights that can help devise effective testing and debugging mechanisms for quantum software projects.
Département: | Département de génie informatique et génie logiciel |
---|---|
Programme: | Génie informatique |
Directeurs ou directrices: |
Foutse Khomh |
URL de PolyPublie: | https://publications.polymtl.ca/10482/ |
Université/École: | Polytechnique Montréal |
Date du dépôt: | 06 févr. 2023 14:46 |
Dernière modification: | 07 avr. 2024 10:51 |
Citer en APA 7: | El Aoun, M. R. (2022). Empirical Studies of Quantum Programming Issues [Mémoire de maîtrise, Polytechnique Montréal]. PolyPublie. https://publications.polymtl.ca/10482/ |
---|---|
Statistiques
Total des téléchargements à partir de PolyPublie
Téléchargements par année
Provenance des téléchargements