The QPath Blog


QSoftwareEngMRb

Quantum Software Engineering: Practical Challenges

Authors

QSoftwareTechMRb

The most important computing revolution in the last 60 years has begun with the integration of classical computing, quantum computing, and artificial intelligence. Although quantum computing is still a young discipline, specialized in the construction of hardware and software using the quantum properties of nature, it is called to play a relevant role in this computing revolution because of its ability to solve, in various business areas, problems of such complexity that classical computing cannot address.

In this paper, framed in this technological context, the authors present a pragmatic study of the main areas of quantum computing, focusing in particular on software and the need for the existence of a true Quantum Software Engineering (QSE) to produce quantum software with sufficient quality and productivity, which is the fundamental axis for the diffusion of quantum computing.

In order to achieve the objectives of the paper, the exposition of the content is carried out through this structure:

1.     Introduction

2.     Quantum Computing History

3.     Basic Quantum Concepts

4.     Quantum Hardware

5.     Quantum Software

6.     Quantum Software Challenges

7.     Conclusions

After a brief overview of the different industrial ‘revolutions’, the authors conclude the introduction by suggesting that the next revolution will come from nanotechnology, biotechnology, genomics and quantum computing, based on the exploitation of the properties of quantum mechanics.

In the remainder of the article, the authors present the history of quantum computing (Section 2) and the main concepts of quantum mechanics and quantum computation on which quantum computing is based (Section 3). In Section 4, they summarize the main quantum technologies used to build qubits and the different types of quantum computers. 

Main quantum programming languages

 

In Section 5, the authors give an overview of existing quantum software, from programming languages and tools to quantum software development platforms. Next (Section 6), they introduce the need for and importance of the existence of true “Quantum Software Engineering”. 

High-level user-friendly interfaces for quantum design.

Finally, in Section 7, they present the main challenges they have encountered in the field of quantum software development and how they have addressed them (with very good results), based on their experience in quantum software research and development over the last six years.

All sections of the article are supported by a large number of scientific references on the subject, reflecting the authors’ deep knowledge of the state of the art in Quantum Software Engineering.

In the conclusions, the authors express their conviction that quantum computing will be the main driver of a new golden age of software engineering in the current decade (2020), but also believe that professionally developed hybrid quantum/classical software systems will be critical to the success of the adoption of quantum computing by the real world, and recommend readers not to waste time and the entire software engineering community to be at the forefront of this movement.

Congratulations Mario, Pepe and Guido for the publication of this paper in the International Journal of Software
Engineering and Knowledge Engineering
.