Abstract Quantum computing has experienced a breakthrough. Several companies are taking up the challenge of designing and manufacturing quantum computers, and the supply of tools for quantum software development is growing all the time. This article addresses quantum software development toolkits and introduces the ‘QuantumPath’ platform. In developing QuantumPath, our aim is to fulfil certain principles such as: agnosticism, extensibility, integration, independency, optimisation, scalability, security, usability and software engineering support. This article presents both the architecture itself as well as the main tools that compose QuantumPath, in order to illustrate the support which platform provides to the development and execution of quantum software.
Abstract Quantum computing has experienced a breakthrough. Several companies are taking up the challenge of designing and manufacturing quantum computers, and the supply of tools for quantum software development is growing all the time. This article addresses quantum software development toolkits and introduces the ‘QuantumPath’ platform. In developing QuantumPath, our aim is to fulfil certain principles such as: agnosticism, extensibility, integration, independency, optimisation, scalability, security, usability and software engineering support. This article presents both the architecture itself as well as the main tools that compose QuantumPath, in order to illustrate the support which platform provides to the development and execution of quantum software.
The goal of this paper is to deliver the overview of the current state of the art, provide experience report on developing quantum software tools, and outline the perspective for developing quantum programming tools supporting symbolic programming for the needs of quantum computing technologies. The main focus of this paper is on quantum computing technologies, as they can in the most direct way benefit from developing tools enabling the symbolic manipulation of quantum circuits and providing software tools for creating, optimizing, and testing quantum programs. We deliver a short survey of the most popular approaches in the field of quantum software development, pointing their strengths and weaknesses. This helps to formulate a list of desirable characteristics which should be included in quantum computing frameworks. Next, we describe a software architecture and its preliminary implementation supporting the development of quantum programs using symbolic approach, encouraging the functional programming paradigm, and, at the same, time enabling the integration with high-performance and cloud computing. The described software consists of several packages developed to address different needs, but nevertheless sharing common design concepts. We also outline how the presented approach could be used in tasks in quantum software engineering: quantum software testing and quantum circuit construction.
This article provides an overview of the current state and future challenges of quantum software engineering as quantum computing transitions from proof-of-concept to potential industrial adoption. While significant progress has been made in quantum hardware and cloud-based execution platforms, the article argues that innovation will depend critically on advances in software tools, programming abstractions, and engineering methodologies. Focusing on the constraints of the Noisy Intermediate-Scale Quantum (NISQ) era, it examines challenges related to hardware heterogeneity, software portability, hybrid classical–quantum architectures, and the lack of mature development environments. The article also highlights the urgent need for a new generation of quantum software engineers and coherent educational programmes, particularly in Europe, to bridge skills gaps and support the long-term evolution toward fault-tolerant quantum computing.
Recent progress in quantum computing has under-scored the need for specialized software to effectively address the unique challenges posed by quantum systems. While early research emphasized hardware and algorithmic breakthroughs, recent progress underscores the necessity of Quantum Soft-ware Engineering (QSE), an emerging discipline that combines software lifecycle processes, tooling, hybrid orchestration, and human-centered design. This paper integrates insights from QSE and quantum software architecture (QSA) to propose a hybrid execution architecture explicitly shaped by Quantum HCI principles, emphasizing developer experience, trust, and the quality of interaction with quantum systems. While quantum software represents a new genre of software-intensive systems, existing processes and notations can be adapted to derive architecting activities and develop modeling languages for quantum software. Additionally, tool chains can incorporate reusable knowledge and roles to automate and customize the architectural process. By analyzing current research and iden-tifying existing gaps, this paper aims to guide the systematic development of robust and scalable quantum software systems. Central to this vision is meaningful human interaction, ensuring that developers can interpret, act on, and trust system outputs from design to post-execution analysis.
Quantum computing is the latest revolution in computing and will probably come to be seen as an advance as important as the steam engine or the information society. In the last few decades, our understanding of quantum computers has expanded and multiple efforts have been made to create languages, libraries, tools, and environments to facilitate their programming. Nonetheless, quantum computers are complex systems at the bottom of a stack of layers that programmers need to understand. Hence, efforts towards creating quantum programming languages and computing environments that can abstract low-level technology details have become crucial steps to achieve a useful quantum computing technology. However, most of these environments still lack many of the features that would be desirable, such as those outlined in The Talavera Manifesto for Quantum Software Engineering and Programming. For advancing quantum computing, we will need to develop quantum software engineering techniques and tools to ensure the feasibility of this new type of quantum software. To contribute to this goal, this paper provides a review of the main quantum software components and platforms. We also propose a set of quality requirements for the development of quantum software platforms and the conduct of their quality assessment.
Quantum computing systems rely on the principles of quantum mechanics to perform a multitude of computationally challenging tasks more efficiently than their classical counterparts. The architecture of software-intensive systems can empower architects who can leverage architecture-centric processes, practices, description languages to model, develop, and evolve quantum computing software (quantum software for short) at higher abstraction levels. We conducted a Systematic Literature Review (SLR) to investigate (i) architectural process, (ii) modelling notations, (iii) architecture design patterns, (iv) tool support, and (iv) challenging factors for quantum software architecture. Results of the SLR indicate that quantum software represents a new genre of software-intensive systems; however, existing processes and notations can be tailored to derive the architecting activities and develop modelling languages for quantum software. Quantum bits (Qubits) mapped to Quantum gates (Qugates) can be represented as architectural components and connectors that implement quantum software. Tool-chains can incorporate reusable knowledge and human roles (e.g., quantum domain engineers, quantum code developers) to automate and customise the architectural process. Results of this SLR can facilitate researchers and practitioners to develop new hypotheses to be tested, derive reference architectures, and leverage architecture-centric principles and practices to engineer emerging and next generations of quantum software.
Quantum Software Engineering (QSE) is a recent trend - focused on unifying the principles of quantum mechanics and practices of software engineering - to design, develop, validate, and evolve quantum age software systems and applications. Software architecture for quantum computing (a.k. a. quantum software architectures (QSA)) supports the design, development, and maintenance etc. phases of quantum software systems using architectural components and connectors. QSA can enable quantum software designers and developers to map the operations of Qubits to architectural components and connectors for implementing quantum software. This research aims to explore the role of QSAs by investigating (i) architectural process having architecting activities, and (ii) human roles that can exploit available tools to automate and customise architecture-centric implementation of quantum software. Results of this research can facilitate knowledge transfer, enabling researchers and practitioners, to address challenges of architecture-centric implementation of quantum software systems.