Quantum Computing Platforms: Assessing the Impact on Quality Attributes and SDLC Activities

Balwinder Sodhi,Ritu Kapur
DOI: https://doi.org/10.48550/arXiv.2104.14261
2021-04-29
Abstract:Practical quantum computing is rapidly becoming a reality. To harness quantum computers' real potential in software applications, one needs to have an in-depth understanding of all such characteristics of quantum computing platforms (QCPs), relevant from the Software Engineering (SE) perspective. Restrictions on copying, deletion, the transmission of qubit states, a hard dependency on quantum algorithms are few, out of many, examples of QCP characteristics that have significant implications for building quantum software. Thus, developing quantum software requires a paradigm shift in thinking by software engineers. This paper presents the key findings from the SE perspective, resulting from an in-depth examination of state-of-the-art QCPs available today. The main contributions that we present include i) Proposing a general architecture of the QCPs, ii) Proposing a programming model for developing quantum software, iii) Determining architecturally significant characteristics of QCPs, and \textbf{iv)} Determining the impact of these characteristics on various Quality Attributes (QAs) and Software Development Life Cycle (SDLC) activities. We show that the nature of QCPs makes them useful mainly in specialized application areas such as scientific computing. Except for performance and scalability, most of the other QAs (e.g., maintainability, testability, and reliability) are adversely affected by different characteristics of a QCP.
Software Engineering
What problem does this paper attempt to address?
The problems that this paper attempts to solve mainly focus on the impact of quantum computing platforms (QCPs) on software engineering (SE). Specifically, the paper focuses on the following aspects: 1. **Identifying the key features of quantum computing platforms**: Through in - depth research on existing quantum computing platforms, the paper aims to identify the features of quantum computing platforms that are crucial for software development. These features include, but are not limited to, replication limitations, deletion limitations, difficulties in qubit state transfer, and high dependence on quantum algorithms. 2. **Evaluating the impact of these features on quality attributes (QAs)**: The paper explores how the above - identified features of quantum computing platforms affect software quality attributes such as performance, reliability, maintainability, and testability. The study found that most other quality attributes, except for performance and scalability, are negatively affected by the features of quantum computing platforms. 3. **Analyzing the impact of these features on software development life - cycle (SDLC) activities**: The paper further analyzes how these features of quantum computing platforms affect all stages of software development, including requirements analysis, design, construction, testing, deployment, and maintenance. In this way, the author hopes to provide a comprehensive perspective to help software engineers understand the unique challenges and opportunities they may encounter when developing software on quantum computing platforms. 4. **Proposing a general architecture and programming model for quantum software development**: Based on the research on existing quantum computing platforms, the paper proposes a general architecture for quantum computing platforms and suggests a programming model suitable for quantum software development. These suggestions aim to guide future quantum software developers on how to use the features of quantum computing platforms more effectively for software development. Overall, the main objective of this paper is to provide a theoretical basis and technical guidance for the future development of quantum software by in - depth analysis of the features of quantum computing platforms and their impact on software engineering. This will not only help promote the practical application of quantum computing technology but also provide valuable reference materials for software engineers.