Within Quantum Software Engineering, the development of hybrid classical-quantum applications is an active research topic. Concretely, there is a focus on the usage of microservices architectures to offer quantum functionalities through classical service gateways. However, while there are methodologies and tools to automatically determine the best deployment for classical applications, this is not the case for hybrid applications, which are especially complicated to deploy due to their specific quantum-requirements. In this paper, we propose Cost Minimizer, a tool to determine the most cost-effective classical and quantum machines to deploy hybrid microservice-based applications. We believe Cost Minimizer will be a step towards achieving a better interaction between classical and quantum computing systems.
Within Quantum Software Engineering, the development of hybrid classical-quantum applications is an active research topic. Concretely, there is a focus on the usage of microservices architectures to offer quantum functionalities through classical service gateways. However, while there are methodologies and tools to automatically determine the best deployment for classical applications, this is not the case for hybrid applications, which are especially complicated to deploy due to their specific quantum-requirements. In this paper, we propose Cost Minimizer, a tool to determine the most cost-effective classical and quantum machines to deploy hybrid microservice-based applications. We believe Cost Minimizer will be a step towards achieving a better interaction between classical and quantum computing systems.
Early advances in the field of quantum computing have provided new opportunities to tackle intricate problems in areas as diverse as mathematics, physics, or healthcare. However, the technology required to construct such systems where different pieces of quantum and classical software collaborate is currently lacking. For this reason, significant advancements in quantum service-oriented computing are necessary to enable developers to create and operate quantum services and microservices comparable to their classical counterparts. Therefore, the core objective of this work is to establish the necessary technological infrastructure that enables the application of the benefits and lessons learned from service-oriented computing to the domain of quantum software engineering. To this end, we propose a pipeline for the continuous deployment of services. Additionally, we have validated the proposal by making use of a modification of the OpenAPI specification, the GitHub Actions, and AWS.
Addressing problems beyond classical computing limits is sparking an increasing interest in Quantum Computing. However, despite their adequacy to address specific problems, quantum algorithms cover a limited subset of the functionality required in real-world computing systems. Additionally, they require expensive specialized hardware. To overcome this issue, hybrid (quantum-classical) software systems are emerging as a promising way to integrate both computing paradigms by applying the principles of Service-Oriented Architectures (SOA). Still, the design and deployment of hybrid service-based systems faces unique challenges like the idiosyncrasies and constraints of NISQ computers (e.g., algorithms that can only run in specific machines, disparate quality attribute metrics), and the management of structural and behavioural properties of service-based applications. From the SOA perspective, architectural decisions need to be made by performing a trade-off analysis and providing quantitative guarantees of system configurations under prescribed levels of uncertainty. In this paper, a method to explore the design space of quantum-classical applications is provided by a formalization of an architectural style of hybrid applications. The obtained results demonstrate that the proposed method successfully identifies decision boundaries. It enables the dynamic selection of the most suitable hybrid or classical configuration based on the user's QoS criteria.
Quantum computing promises to offer significant computational advantages for certain types of problems, which motivates its integration into current software systems. In this context, Service-Oriented Computing provides a suitable mechanism for encapsulating classical and quantum resources through the concept of hybrid quantum-classical services. Although techniques aimed at obtaining optimal deployments for this type of application are beginning to emerge, the literature still highlights the need for methodologies and tools to describe, validate, and homogenize the deployment structures of hybrid applications. To address this gap, this work proposes a MDE-based approach through the definition of a DSL for specifying deployment schemes for hybrid quantum-classical service applications. The proposal enables the description of the available classical and quantum resources, the services that compose the application, and the assignment of quantum services to QPUs, including the mapping between logical and physical qubits. In addition, a model-to-text transformation is provided to generate YAML artifacts that can be interpreted by deployment processes. Finally, the proposed grammar is instantiated on a hybrid search scenario to illustrate its applicability.
The widespread adoption of microservice architectures in large-scale cloud systems introduces challenges related to the optimal deployment of service components and the optimization of inter-service communication. This study proposes a quantum-classical hybrid approach to address this problem, which can be considered an NP-hard problem at large scale, with the aim of achieving an optimal deployment of microservices that exhibit intensive interactions. In the proposed method, microservice interactions are modeled as a weighted graph and transferred to a quantum environment for the purpose of maximum clique detection. Modeling the problem using a weighted graph, where microservice interaction parameters such as latency, communication frequency, and data volume are evaluated as composite edge weights, enables the deployment problem to be grounded in system-oriented criteria and treated as a multi-dimensional optimization task. In this study, all valid clique structures are correctly identified, thereby enabling optimization strategies to be executed within the quantum computing environment.
Quantum computing holds great promise to solve to problems where classical computers cannot reach. To the point where it already arouses the interest of both scientific and industrial communities. Thus, it is expected that hybrid systems will start to appear where quantum software interacts with classical systems. Such coexistence can be fostered by service computing. Unfortunately, the way in which quantum code can be offered as a service still misses out on many of the potential benefits of service computing. This paper takes the traveling salesman problem, and tackles the challenge of giving it an implementation in the form of a quantum microservice. Then it is used to detect which of the benefits of service computing are lost in the process. The conclusions help to measure the distance between the current state of technology and the state that would be desirable in order to have a real quantum service engineering.
Despite the promise and potential of quantum computing, most of the current day developments of quantum computing have several limitations for relevant practical use. As a result, hybrid classical-quantum computing has emerged as a viable solution. This paper discusses the software aspects of hybrid classical-quantum computing solutions to understand and examine how hybrid computing solutions can be expected to work in practice. This paper examines existing software solutions (cloud applications, middleware frameworks, and API gateways) that can enable classical and quantum computing to work together. For practitioners the paper provides a curated list of algorithms, full stack libraries, simulators, and cloud service providers that are likely to be central to the development of any hybrid computing solutions. We conclude by identifying an agenda for future research on classical-quantum hybrid software engineering, and some near-term priorities for development of functional, robust hybrid software systems. The paper argues that due to the deep dependency of quantum execution on classical pre- and post-processing, hybrid computing may represent a near-permanent outcome of classical-quantum computing rather than a transitional workaround.