<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>An Exploratory Study on the Challenges of Engineering Quantum Applications in the Cloud</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Daniel Vietz</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Johanna Barzen</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Frank Leymann</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Benjamin Weder</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Vladimir Yussupov</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Stuttgart, Institute of Architecture of Applications Systems</institution>
          ,
          <addr-line>Universitätsstr. 38, 70569 Stuttgart</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The rapid evolution of quantum computation in the cloud creates considerable opportunities for multiple real-world application scenarios, including chemical simulation, optimization, and machine learning. Typical quantum applications are hybrid as they consist of both classical and quantum components. The latter require quantum computers for execution, which are often ofered as cloud services. Thus, to implement quantum applications, developers need to have expertise in integration of quantum and classical components of the application, as well as understanding the relevant cloud-specific challenges and limitations. In this work, we explore the challenges which can be encountered when designing and implementing hybrid quantum applications in the cloud and identify which limitations of current quantum cloud services make such integration complex. To achieve this, we (i) implemented four quantum applications highlighting diferent scenarios of using quantum software components in cloud applications and (ii) analyzed the challenges and limitations encountered during the implementation process and documented the key observations. In addition, we discuss open research questions and ways to address them to improve the process of developing quantum applications in the cloud.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Cloud Computing</kwd>
        <kwd>Quantum Computing</kwd>
        <kwd>Hybrid Quantum Applications</kwd>
        <kwd>Quantum-Classic Integration</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Quantum computing is an emerging field, which promises to solve many problems from diferent
domains more eficiently or with better precision compared to classical computers [
        <xref ref-type="bibr" rid="ref1 ref2 ref3">1, 2, 3</xref>
        ], e.g.,
optimization, machine learning, or simulation of chemical molecules [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Quantum computers
are often provided as cloud services, making them available to a broader audience and allowing
their usage in real application scenarios [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. However, existing quantum computers are limited
in available resources and prone to errors, e.g., due to the instability of the generated quantum
states [
        <xref ref-type="bibr" rid="ref6 ref7">6, 7</xref>
        ]. In addition, operations on quantum computers are often imprecise. Thus, current
quantum computers are referred to as Noisy Intermediate-Scale Quantum (NISQ) [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] computers.
Due to these limitations and given the fact that quantum computers are only superior in certain
cases, they cannot fully replace their classical counterparts [
        <xref ref-type="bibr" rid="ref1 ref6">1, 6</xref>
        ]. Instead, quantum computers
can be employed for solving only specific tasks they are best suited for , whereas the remaining
tasks are performed using classical computers, e.g., preparing inputs for quantum algorithms,
storing data, or processing user interactions [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. Therefore, such hybrid quantum applications,
or hQApps for short, inherently combine both worlds: classical and quantum computers.
      </p>
      <p>
        Consequently, to implement hQApps in the cloud, software engineers need to deal with
the implementation and integration of quantum software components that rely on specialized
services such as IBM Quantum (IBMQ) [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], AWS Braket [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], or Azure Quantum [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], and
classical software implemented using traditional cloud oferings. As a result, the development
of hQApps requires a team that combines not only quantum-specific expertise but also expertise
in more traditional domains such as cloud computing, software integration, service-oriented
architectures, and workflow technology [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. Therefore, it is crucial to understand the challenges
such interdisciplinary teams of hQApps developers are facing.
      </p>
      <p>In this work, we explore common challenges from diferent domains which can be
encountered when designing and implementing hQApps that combine traditional and quantum cloud
oferings from commercial providers. Therefore, the main research question in this work can be
formulated as follows: “Which design and implementation challenges are commonly encountered
when engineering hQApps in the cloud?”</p>
      <p>
        To address this question, we (i) design and implement four quantum application scenarios
based on the existing literature focusing on engineering hQApps [
        <xref ref-type="bibr" rid="ref13 ref14">13, 14</xref>
        ]. As a result, we
present scenarios using diferent types of interaction and of varying complexity: from a “simple”
application generating random bit strings to composite applications that involve integrating
diferent quantum tasks and hybrid algorithms that rely on optimization loops. Next, we
(ii) analyze the challenges encountered during the design and implementation of each application
scenario, and (iii) discuss key observations and open research questions.
      </p>
      <p>After having covered the background and fundamentals in Section 2, Section 3 presents the
implemented scenarios. Section 4 presents and discusses the identified challenges, and Section 5
outlines related work. Finally, Section 6 gives a summary and an outlook on future work.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Background and Fundamentals</title>
      <p>
        In general, there are diferent quantum computation models such as the gate-based,
measurementbased, or quantum annealing computation model. These computation models influence the
implementation of quantum algorithms [
        <xref ref-type="bibr" rid="ref15 ref16">15, 16</xref>
        ]. In this work, we focus on the gate-based
quantum computation model using so-called quantum circuits to formulate computation steps
executed on a quantum computer. Within a quantum circuit, multiple qubits form a quantum
register and specific operations, so-called quantum gates, are applied to that register [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>
        Quantum computers are often provided as services in the cloud and, hence, can be used on
demand by a broader audience [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. These quantum cloud services typically ofer application
programming interfaces (APIs), enabling the execution of quantum circuits on real quantum
processing units (QPUs) or quantum simulators running on classical hardware. Since QPUs and
also simulators enable computing quantum circuits, we use the term “quantum computer” for
both. To facilitate and support the implementation of quantum circuits and their execution on
quantum computers, providers usually ofer software development kits (SDKs) [
        <xref ref-type="bibr" rid="ref16 ref17">16, 17</xref>
        ].
      </p>
      <p>
        Since today’s quantum computers are limited, most algorithms already applicable during the
NISQ era are hybrid, i.e., they combine computations on quantum and classical computers [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
Variational algorithms, such as the Variational Quantum Eigensolver (VQE) [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] for determining
eigenvalues, and the Quantum Approximation Optimization Algorithm (QAOA) [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] for
approximating the solution of an optimization problem, are common types of hybrid algorithms [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ].
They use a parametrized quantum circuit (called ansatz) and optimize the measuring results
classically by varying the input parameters of the ansatz in each iteration [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. Integration Scenarios</title>
      <p>
        In this section, we present four scenarios that highlight various quantum-classical integration
aspects including diferent kinds of interaction, composition of multiple quantum tasks in one
application, and implementation of hybrid algorithms with the control flow encompassing
classical and quantum tasks. The first two scenarios show how quantum and classical components
can be composed into simple sequences of actions. The last two scenarios show more complex
compositions in which the intended control flow spans classical and quantum components and
has loops and conditions. To explain these more complex scenarios, we model them using the
Business Process Model and Notation (BPMN) [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ], a well-known standard which provides a
visual notation for modeling business processes.
      </p>
      <p>
        We implemented the scenarios using the cloud oferings of two providers, namely Amazon
and IBM. The quantum components are implemented using Python, based on Qiskit and the
AWS Braket SDK, respectively. Additional libraries, such as Boto3 and Pennylane, were also
used to implement individual scenarios. Developed workflow models are specified and executed
using the Camunda workflow system [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ], which comprises a graphical modeling tool and
a state-of-the-art BPMN workflow engine. The implemented scenarios are open-source and
available via GitHub [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ].
      </p>
      <sec id="sec-3-1">
        <title>Scenario 1: Random Data Points Generation</title>
        <p>
          Due to their inherent quantum-mechanical properties, quantum computers facilitate generating
true random bits [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ]. The first scenario shown in subfigure (a) of Fig. 1 focuses on generating
random bit strings using quantum computers and post-processing the generated random bits
using classical computers. For this, the quantum task Generate Random Bit String needs to be
integrated with the classical task Assemble Points which interprets the random bits and stores
them in the desired format, e.g., as two-dimensional data points. Finally, another classical task
needs to persist the generated random data.
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>Scenario 2: Minimum Distance Classification</title>
        <p>
          In the second scenario, data points are classified w.r.t. a given set of classes using the distance
to their centroids. The distance is calculated on a quantum computer using a quantum distance
estimator [
          <xref ref-type="bibr" rid="ref25 ref26">25, 26</xref>
          ]. Subfigure (b) in Figure 1 shows the classical task Load Centroids getting
invoked by a trigger-event in the Data Points Storage (e.g., an insert event). After the centroids
have been loaded, the distances between the data point and all centroids are computed using
User
        </p>
        <p>Generate Rand.</p>
        <p>Bit String</p>
        <p>Assemble</p>
        <p>Points</p>
        <p>Store</p>
        <p>Points
(a) Scenario 1: Random Data Points Generation</p>
        <p>Direct Call Event-driven Call
Data
Points
Storage</p>
        <p>Load
Centroids</p>
        <p>Quantum
Distance
Estimator</p>
        <p>Find
Minimum
Distance</p>
        <p>Label with</p>
        <p>Closest</p>
        <p>Centroid
(b) Scenario 2: Minimum Distance Classification</p>
        <p>
          Quantum Classical
Task Task
the quantum task called Quantum Distance Estimator. This quantum task normalizes the data
points, encodes them as angles on the unit circle [
          <xref ref-type="bibr" rid="ref27">27</xref>
          ], and uses a SWAP-Test [
          <xref ref-type="bibr" rid="ref28">28</xref>
          ] to check to
what extent the prepared quantum states difer. The results are used by two classical tasks: the
ifrst finds the minimum distance and the second labels that information to the data point.
        </p>
      </sec>
      <sec id="sec-3-3">
        <title>Scenario 3: K-Means Clustering</title>
        <p>
          This scenario demonstrates the composition of the components from the first two scenarios to
implement the quantum k-means clustering algorithm [
          <xref ref-type="bibr" rid="ref26">26</xref>
          ]. Subfigure (a) of Figure 2 depicts
the composition of required components as a BPMN Process. First, the execution is scheduled
by a timer start event which triggers the execution of this scenario once every 24 hours. The
ifrst task called Generate Random Data Points is depicted as a BPMN Sub-Process: this task
generates random data points on a quantum computer, i.e., it executes the random data points
generator (see Scenario 1) as a first activity. These random data points are used as initial values
for the centroids, which will be recalculated later. After the data points and centroids are loaded
using a classical service task, the data points are assigned to the centroids using another
subprocess, which is the Minimum Distance Classification of Scenario 2. The last task recalculates
the centroids using the mean of all data points assigned to them. The BPMN Exclusive Gateways
are used to model a loop in which the aforementioned three tasks are repeated until the algorithm
converges, i.e., by reaching a maximum number of iterations or if centroids no longer need to
be updated.
        </p>
        <p>Generate</p>
        <p>Random
Every Data Points
24h</p>
        <p>Load
Points and
Centroids</p>
        <p>No
Classify
Points</p>
        <p>Converged?</p>
        <p>Yes
Recalculate
Centroids</p>
        <p>Create
Hamiltonian</p>
        <p>Adapt
Parameters
Execute
Ansatz</p>
        <p>Converged?
No Yes</p>
        <p>Evaluate</p>
        <p>Cost
Seq. Flow
(a) Scenario 3: K-Means Clustering</p>
        <p>SEMtvaeersntstage STEtvimaernettr</p>
        <p>End
Event
(b) Scenario 4: Variational Quantum Eigensolver
STaesrkvice ECQxiurecacun.ittTuamsk PSurobc-ess EGxactleuwsiavye</p>
      </sec>
      <sec id="sec-3-4">
        <title>Scenario 4: Variational Quantum Eigensolver</title>
        <p>
          This scenario represents a hybrid quantum-classical algorithm called Variational Quantum
Eigensolver (VQE) [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ] for approximating the smallest eigenvalue of a hermitian matrix.
Subifgure (b) in Fig. 2 shows this scenario modeled in BPMN. Based on the input matrix, the first
task creates a Hamiltonian (or a combination of several Pauli strings). Following the structure
of variational quantum algorithms [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ], an ansatz is then executed on a quantum computer.
Afterwards, a cost function is evaluated, which is defined as the expectation value of the
Hamiltonian, i.e., the sum of the expectation values of the Pauli strings. The workflow minimizes this
cost function by “tweaking” the parameters of the ansatz. Due to the variational principle, the
expectation value is always greater or equal to the smallest eigenvalue, thus, the expectation
value gets minimized in order to approximate the minimum eigenvalue. The algorithm stops if
the changes of the expectation value are below a certain threshold.
4. Engineering Challenges of hQApps in the Cloud
The design and implementation of hQApps require expertise from diferent domains, such as
quantum computing, cloud computing, workflow technology, etc. In this section, we discuss
various challenges from diferent domains we encountered when designing and implementing
the scenarios introduced in Section 3.
        </p>
      </sec>
      <sec id="sec-3-5">
        <title>Challenge 1: Identify Quantum-Classical Split</title>
        <p>
          One of the first encountered challenges is the task of splitting a problem into classical and
quantum components [
          <xref ref-type="bibr" rid="ref12 ref29">29, 12</xref>
          ]. This challenge of quantum-classical split is twofold. Firstly, it is
necessary to identify which problem parts are suitable for computation on quantum
computers [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]. This requires identifying suitable quantum algorithms and assessing relevant functional
and non-functional characteristics, e.g., their performance in the context of a given problem [
          <xref ref-type="bibr" rid="ref30">30</xref>
          ].
Here, one needs also to decide which computation model will be used to implement the quantum
parts [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. In particular, this concerns the decision between universal computation models, such
as gate-based and measurement-based quantum computing, or restricted computation models,
such as quantum annealing [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ]. Since quantum circuits are wrapped by classical source code
handling the execution, further classical logic can be combined into this wrapper. Thus, the
second aspect is to decide which classical logic should be implemented tightly coupled with the
quantum circuit. For example, the loading of the centroids in Scenario 2 can be combined with
the execution of the quantum distance estimator.
        </p>
        <p>Key Observations and Open Research: Turning requirements into an architecture design
is dificult for classical applications as well as for quantum applications. One way to facilitate
this process is to model hQApps using workflow languages as they provide a good overview of
the intended control flow w.r.t. involved activities, which can serve as a basis for identifying
better component boundaries, e.g., based on the observed data locality and interaction patterns.
Although a separation of classical and quantum problem parts into separate components makes
the implementation more concise and maintainable, strict separation is not always preferable
due to performance reasons. For example, variational algorithms, as described in Scenario 4,
comprise quantum and classical computations, and splitting them introduces an additional
communication overhead. Thus, it can be preferable in some cases to combine quantum
and classical parts into one component. We also used this strategy in our implementation
of Scenario 4. A “good” quantum-classic split via properly-defined component boundaries
improves maintainability and reusablility of application components while at the same time
ensures eficient execution. However, finding a suitable quantum-classical split is highly
problemdependent and requires further research.</p>
      </sec>
      <sec id="sec-3-6">
        <title>Challenge 2: Identify a Suitable Quantum Service Type</title>
        <p>Another challenge encountered when designing hQApps is to choose a cloud service type suiting
the defined application requirements. For instance, one important factor to consider is whether
the selected quantum cloud service supports the required interaction type, e.g., implementation
of direct API calls.</p>
        <p>Key Observations and Open Research: In general, available quantum service oferings
fall into one of the following four categories:
(i) Circuit Composers ofer a combination of graphical and textual quantum circuit editors.</p>
        <p>
          Examples are the IBMQ Composer and the QI Editor in Quantum Inspire [
          <xref ref-type="bibr" rid="ref31">31</xref>
          ]
(ii) Jupyter Notebook Services enable the development and direct execution of quantum
components in a document-style manner where source code is accompanied by documentation
and console instructions. IBM Quantum Lab and AWS Braket Notebooks are oferings
which fall into this category.
(iii) Quantum Computation as a Service (QCaaS) oferings receive computation requests over
an API. Thus, they require to construct a quantum circuit first to be sent to this interface.
(iv) Hybrid Cloud Services (e.g., [
          <xref ref-type="bibr" rid="ref32">32</xref>
          ]) allow transmitting hybrid components consisting of both
classical and quantum parts which are managed and executed by service providers.
Although Circuit Composers allow to create quantum circuits which are stored in the cloud and
can be executed multiple times on various quantum computers, they do not allow external
input variables to be used and cannot establish a connection to other services. Currently,
Jupyter Notebook Services do not provide endpoints for implementations, so they cannot be
triggered externally. In the future, however, providers could add such functionality, making
Jupyter Notebook Services a suficient option for hosting invocable quantum components. The
structure of current QCaaS oferings implies hosting on classical cloud components which
connect to QCaaS APIs to perform quantum computations. First, some classical component
creates a quantum circuit, which is then sent to the API of the QCaaS where it gets executed
on a quantum computer. The response is interpreted by the classical component that further
defines all external interfaces needed for invocation. Hybrid Cloud Services enable to create
hybrid quantum components hosted in the cloud that can be invoked over an HTTP endpoint.
        </p>
        <p>Some of our scenarios also use event-driven interaction between components. However, none
of the currently available quantum cloud services we are aware of allow this type of interaction.
Thus, suitable oferings from the classical cloud must be selected. For example, the quantum
component can be implemented as a function hosted on a FaaS ofering, such as AWS Lambda
or IBM Cloud Functions, establishing a connection to a QCaaS ofering. The function can be
bound to specific events so that it gets executed when they occur.</p>
        <p>
          Challenge 3: Decide on Quantum Computer Utilization Strategy
Quantum computers are often shared by multiple users, with quantum circuits typically being
queued before execution. Compared to the actual computation time on the quantum computer,
this can result in a rather long total execution duration. Therefore, before implementing the
hQApp it is important to choose the desired quantum computer utilization strategy.
Key Observations and Open Research: Since the execution of hQApps depends on the
selected quantum computer, a suitable utilization strategy must be selected. In multi-circuit
scenarios, e.g., it has to be decided whether to use several quantum computers or execute all
quantum circuits on the same one. Furthermore, it must be decided how to select those quantum
computers. Since quantum computers provide varying capabilities, such as qubit count and
computation accuracy, one strategy is to find all suitable instances for a given problem [
          <xref ref-type="bibr" rid="ref30">30</xref>
          ] and
use the instance with the fewest amount of requests waiting in the queue. Since the utilization
of available quantum computers can be high, many quantum-specific services ofer to book
time-slots for exclusive access to certain quantum computers. Since it incurs additional costs, it
is especially useful for scenarios that perform many quantum computations such as Scenario 3
and Scenario 4. Booking a time slot for single circuit executions rises the question of how to
collect multiple execution requests to fit in a time slot, i.e., how to estimate execution times for
quantum components.
        </p>
        <p>Additionally, it must be considered whether quantum circuits should be executed sequentially
or in parallel. For example, in Scenario 2, the distance estimations of multiple data points
are independent from each other and can be computed in parallel. In contrast, Scenario 4
requires iterative execution of the quantum circuits. When parallel computing is possible, bulk
processing features should be used to transmit multiple quantum circuits simultaneously rather
than sequentially. To avoid sending each circuit individually to the interface, hybrid cloud
services can be used. These upcoming services combine the execution of quantum computations
with classical computations and allow iterative execution of multiple circuits behind the queue.
Thus, they are especially useful for iterative scenarios such as Scenario 3 and 4.</p>
        <p>
          To determine an appropriate quantum computer utilization strategy, it is important to first
analyze the overall structure of the hQApp. Although the analysis is currently a manual task, it
could be automated in certain ways. For example, the iterative nature of applications, such as
in Scenario 3 and Scenario 4 can be identified by detecting loops in the workflow model [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ].
Additional actions to reserve time-slots for exclusive access can then be integrated by extending
the workflow. However, availability of quantum computers might not be assured anytime and
time slots might be postponed. Another approach could merge existing implementations of
quantum and classical tasks as hybrid components, e.g., using the Qiskit Runtime. However, an
automated realization may pose further challenges, e.g., if quantum and classical components
are implemented in diferent programming languages.
        </p>
      </sec>
      <sec id="sec-3-7">
        <title>Challenge 4: Select Components Integration Style</title>
        <p>
          The individual components need to be integrated to form the application system, raising the
question of how to integrate quantum components with classical components.
Key Observations and Open Research: In general, diferent approaches can be used to
integrate diferent components. For example, tightly-coupled components can interact with
each other by means of hard-coded endpoint calls. However, tight coupling conflicts with the
separation of concerns principle, hence, hindering the maintainability. To avoid this, more
loosely-coupled approaches can be used, e.g., required components can be composed using the
workflow technology [
          <xref ref-type="bibr" rid="ref33">33</xref>
          ]. Quantum-specific extensions of conventional workflow technologies
have also been proposed [
          <xref ref-type="bibr" rid="ref34">34</xref>
          ]. Another option is to use messaging-based integration, e.g., to
decouple the preparation of quantum circuits from the processing of the results. Here, the QCaaS
oferings are used as an external component integrated using the Service Activator Pattern [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ].
Fig. 3 shows this pattern – quantum circuits are no longer sent directly to the QCaaS, but to
a Request Queue that the Service Activator listens to. The Service Activator, e.g., hosted on a
PaaS ofering, communicates with the QCaaS API to submit the quantum circuits and poll for
computation results. It then forwards the results to the Response Queue.
        </p>
      </sec>
      <sec id="sec-3-8">
        <title>Challenge 5: Implement for Specific Hardware</title>
        <p>When implementing hQApps, one issue that must be taken into account is that the choice
for certain quantum hardware (one quantum service ofering might provide several quantum
hardware options) influences the actual implementation.</p>
        <p>
          Key Observations and Open Research: In contrast to classical cloud service oferings,
quantum cloud services do not incorporate virtualization techniques; instead users must
manually select quantum computers and align their implementations with them. Selecting the instance
with the least number of jobs in the queue, as mentioned in Challenge 3, is one approach to
avoid manual selection. Since it does not incorporate information about the number of required
qubits, it might pick an unsuitable quantum computer to execute a certain quantum circuit.
Thus, the approach is useful for circuits requiring only few qubits, because in these cases “small”
quantum computers can also be chosen. Another possible solution is to make hardware selection
configurable within the application, e.g., by implementing the Content Enricher pattern [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ].
Figure 4 shows an example implementation of the Content Enricher, in which the application
still creates quantum circuits, however, without referencing concrete quantum computers. This
IPA QCaaS
        </p>
        <p>Content</p>
        <p>Enricher
put pull</p>
        <p>Request Queue
Quantum
Circuit
trigger</p>
        <p>Service execute
Activator respone
put</p>
        <p>Measure</p>
        <p>Results</p>
        <p>
          Response Queue
information is injected into the quantum circuits as they pass through. However, multiple
hardware-specific criteria [
          <xref ref-type="bibr" rid="ref36">36</xref>
          ] must be considered to enable such configurable behavior, e.g.,
the connectivity of qubits and the average error rates of diferent operations. Additionally, it
is important to check whether the given quantum circuit can be executed successfully on the
selected quantum computer, e.g., using existing tools [
          <xref ref-type="bibr" rid="ref30">30</xref>
          ] that help automating the selection.
        </p>
        <p>In the NISQ-era, however, the selection of suitable quantum computers for running an existing
implementation is only one aspect. In addition, the implementation itself must be aware of
the hardware limitations in the NISQ era, e.g., to avoid creating too large quantum circuits. As
hardware continues to improve, the question arises of how to implement applications that are
as flexible as possible to grow with progress.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>5. Related Work</title>
      <p>
        There are already various publications that discuss challenges of developing hQApps.
Rahaman et al. [
        <xref ref-type="bibr" rid="ref37">37</xref>
        ], e.g., present diferent problems of QCaaS oferings in general and focus
on reliability and security issues. Leymann and Barzen [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] point out several pitfalls for the
successful and eficient implementation of quantum algorithms in the NISQ era: algorithms are
often presented without considering crucial steps, such as state preparation, oracle expansion,
connectivity, etc. Rojo et al. [
        <xref ref-type="bibr" rid="ref38">38</xref>
        ] present an empirical study describing the tribulations of
quantum-classical microservice systems. However, they focus on technical properties, such as
the number of qubits and response times, of current quantum cloud services. Hevia Olivera [
        <xref ref-type="bibr" rid="ref39">39</xref>
        ]
presents requirements for quantum service providers, discussing several challenges related
to technical limitations and the diversity of current oferings. In previous work [
        <xref ref-type="bibr" rid="ref12 ref40">40, 12</xref>
        ] we
present the development lifecycle of quantum applications showing that expertise from diferent
areas is required. While the aforementioned works discuss challenges only related to technical
conditions or the pure implementation of quantum algorithms, in this work we explore the
engineering challenges faced by interdisciplinary teams of hQApps developers.
      </p>
    </sec>
    <sec id="sec-5">
      <title>6. Summary and Future Work</title>
      <p>In this work, we analyzed the challenges of engineering hQApps in the cloud by conducting an
exploratory study comprising four diferent integration scenarios. We have shown that it is
important to understand how to split a problem into classical and quantum components. On the
one hand, fine-granular decomposition leads to better maintainability and reusability. On the
other hand, it is crucial to minimize communication overhead between quantum and classical
computations in some scenarios, e.g., hybrid algorithms. One strategy, thus, can be to start
with a monolith-first implementation and decompose it into classical and quantum components,
paying attention to avoid unnecessary communication overhead. Another important step is to
decide what type of quantum service to use and how to utilize available quantum computers.
This may involve booking exclusive access or result in a quantum computer being shared
among multiple applications. It is also important to decide how individual components should
be integrated, as the integration style influences the design and implementation of a hQApp
and its components. There are several options for this, such as message-based integration
or orchestration based on workflow technologies. In contrast to tightly-coupled and
hardcoded integration, the aforementioned approaches are more robust to changes and ofer better
reusability, but also require additional expertise, e.g., regarding the use of quantum-specific cloud
services. Quantum-specific cloud services, unlike classical cloud services, do not incorporate
any virtualization techniques. Hence, implementations of hQApps are hardware-specific and
cannot run on arbitrary quantum computers.</p>
      <p>
        In future work, we aim to improve tooling support for the design of quantum applications.
Thereby, we plan to extend previous work [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] to also incorporate decision support and guide
developers in their decision for specific tools and services. Furthermore, we also want to evaluate
the feasibility of diferent virtualization approaches for quantum hardware.
      </p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgments</title>
      <p>This work was partially funded by the BMWi projects PlanQK (01MK20005N), the project
SEQUOIA funded by the Baden-Württem-berg Ministry of Economy, Labour and Housing, and
the DFG’s Excellence Initiative project SimTech (EXC 2075 - 390740016).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>National</given-names>
            <surname>Academies of Sciences</surname>
          </string-name>
          , Engineering, and Medicine,
          <source>Quantum Computing: Progress and Prospects</source>
          , National Academies Press,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>T.</given-names>
            <surname>Gabor</surname>
          </string-name>
          , et al.,
          <source>The Holy Grail of Quantum Artificial Intelligence: Major Challenges in Accelerating the Machine Learning Pipeline</source>
          ,
          <year>2020</year>
          . arXiv:
          <year>2004</year>
          .14035.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>J.</given-names>
            <surname>Barzen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Falkenthal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Vietz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Weder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Wild</surname>
          </string-name>
          ,
          <article-title>Relevance of Near-Term Quantum Computing in the Cloud: A Humanities Perspective</article-title>
          ,
          <source>Cloud Computing and Services Science</source>
          <volume>1399</volume>
          (
          <year>2021</year>
          )
          <fpage>25</fpage>
          -
          <lpage>58</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>A.</given-names>
            <surname>Acín</surname>
          </string-name>
          , et al.,
          <article-title>The quantum technologies roadmap: a european community view</article-title>
          ,
          <source>New Journal of Physics</source>
          <volume>20</volume>
          (
          <year>2018</year>
          )
          <fpage>080201</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Barzen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Falkenthal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Vietz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Weder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Wild</surname>
          </string-name>
          , Quantum in the Cloud: Application Potentials and Research Opportunities, in
          <source>: Proceedings of the 10th International Conference on Cloud Computing and Services Science (CLOSER</source>
          <year>2020</year>
          ), SciTePress,
          <year>2020</year>
          , pp.
          <fpage>9</fpage>
          -
          <lpage>24</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>J.</given-names>
            <surname>Preskill</surname>
          </string-name>
          ,
          <article-title>Quantum Computing in the NISQ era and beyond</article-title>
          ,
          <source>Quantum</source>
          <volume>2</volume>
          (
          <year>2018</year>
          )
          <fpage>79</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <surname>J. Barzen,</surname>
          </string-name>
          <article-title>The bitter truth about gate-based quantum algorithms in the NISQ era</article-title>
          ,
          <source>Quantum Science and Technology</source>
          <volume>5</volume>
          (
          <year>2020</year>
          )
          <fpage>044007</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Barzen</surname>
          </string-name>
          ,
          <article-title>Hybrid Quantum Applications Need Two Orchestrations in Superposition: A Software Architecture Perspective</article-title>
          ,
          <year>2021</year>
          . arXiv:
          <volume>2103</volume>
          .
          <fpage>04320</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <surname>IBM</surname>
          </string-name>
          ,
          <string-name>
            <given-names>IBM</given-names>
            <surname>Quantum</surname>
          </string-name>
          ,
          <year>2021</year>
          . URL: https://quantum-computing.
          <source>ibm.com.</source>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Amazon</surname>
          </string-name>
          .com, Inc, AWS Braket,
          <year>2021</year>
          . URL: https://aws.amazon.com/braket.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Microsoft</surname>
            ,
            <given-names>Azure</given-names>
          </string-name>
          <string-name>
            <surname>Quantum</surname>
          </string-name>
          ,
          <year>2021</year>
          . URL: https://azure.microsoft.com/services/quantum/.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>B.</given-names>
            <surname>Weder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Barzen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Vietz</surname>
          </string-name>
          ,
          <source>Quantum Software Development Lifecycle</source>
          ,
          <year>2021</year>
          . arXiv:
          <volume>2106</volume>
          .
          <fpage>09323</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>J.</given-names>
            <surname>Zhao</surname>
          </string-name>
          ,
          <source>Quantum Software Engineering: Landscapes and Horizons</source>
          ,
          <year>2020</year>
          . arXiv:
          <year>2007</year>
          .07047.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>C. A.</given-names>
            <surname>Pérez-Delgado</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. G.</given-names>
            <surname>Perez-Gonzalez</surname>
          </string-name>
          ,
          <article-title>Towards a Quantum Software Modeling Language</article-title>
          ,
          <source>in: Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops</source>
          , ICSEW'20,
          <string-name>
            <surname>Association</surname>
          </string-name>
          for Computing Machinery,
          <year>2020</year>
          , p.
          <fpage>442</fpage>
          -
          <lpage>444</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>J. A.</given-names>
            <surname>Miszczak</surname>
          </string-name>
          ,
          <article-title>Models of quantum computation and quantum programming languages</article-title>
          ,
          <source>Bulletin of the Polish Academy of Sciences: Technical Sciences 59</source>
          (
          <year>2011</year>
          )
          <fpage>305</fpage>
          -
          <lpage>324</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>D.</given-names>
            <surname>Vietz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Barzen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Wild</surname>
          </string-name>
          ,
          <article-title>On Decision Support for Quantum Application Developers: Categorization, Comparison, and Analysis of Existing Technologies</article-title>
          ,
          <source>in: Computational Science - ICCS 2021</source>
          , Springer International Publishing,
          <year>2021</year>
          , pp.
          <fpage>127</fpage>
          -
          <lpage>141</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>R. LaRose</surname>
          </string-name>
          ,
          <source>Overview and Comparison of Gate Level Quantum Software Platforms, Quantum</source>
          <volume>3</volume>
          (
          <year>2019</year>
          )
          <fpage>130</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>A.</given-names>
            <surname>Peruzzo</surname>
          </string-name>
          , et al.,
          <article-title>A variational eigenvalue solver on a photonic quantum processor</article-title>
          ,
          <source>Nature Communications</source>
          <volume>5</volume>
          (
          <year>2014</year>
          )
          <fpage>4213</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>E.</given-names>
            <surname>Farhi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Goldstone</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Gutmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A Quantum</given-names>
            <surname>Approximate Optimization Algorithm</surname>
          </string-name>
          ,
          <year>2014</year>
          . arXiv:
          <volume>1411</volume>
          .
          <fpage>4028</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>M.</given-names>
            <surname>Weigold</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Barzen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Vietz</surname>
          </string-name>
          ,
          <article-title>Patterns For Hybrid Quantum Algorithms</article-title>
          ,
          <source>in: Proceedings of the 15th Symposium and Summer School on Service-Oriented Computing (SummerSOC)</source>
          , Springer International Publishing,
          <year>2021</year>
          , pp.
          <fpage>34</fpage>
          -
          <lpage>51</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <surname>OMG</surname>
          </string-name>
          ,
          <article-title>Business Process Model and Notation (BPMN) Version 2</article-title>
          .0, Object Management Group (OMG),
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <surname>Camunda</surname>
          </string-name>
          ,
          <source>Camunda BPMN Workflow System</source>
          ,
          <year>2021</year>
          . URL: https://camunda.com.
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23] University of Stuttgart, Practical aspects quantum engineering challenges,
          <year>2021</year>
          . URL: https://github.com/vietzd/qc-cloud-challenges.
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>M.</given-names>
            <surname>Herrero-Collantes</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. C.</given-names>
            <surname>Garcia-Escartin</surname>
          </string-name>
          ,
          <article-title>Quantum random number generators</article-title>
          ,
          <source>Reviews of Modern Physics</source>
          <volume>89</volume>
          (
          <year>2017</year>
          )
          <fpage>015004</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>M.</given-names>
            <surname>Schuld</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Fingerhuth</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Petruccione</surname>
          </string-name>
          ,
          <article-title>Implementing a distance-based classifier with a quantum interference circuit</article-title>
          ,
          <source>EPL (Europhysics Letters)</source>
          <volume>119</volume>
          (
          <year>2017</year>
          )
          <fpage>60002</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>S. U.</given-names>
            <surname>Khan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. J.</given-names>
            <surname>Awan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Vall-Llosera</surname>
          </string-name>
          ,
          <source>K-Means Clustering on Noisy Intermediate Scale Quantum Computers</source>
          ,
          <year>2019</year>
          . arXiv:
          <year>1909</year>
          .12183.
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>M.</given-names>
            <surname>Weigold</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Barzen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Salm</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <article-title>Data Encoding Patterns For Quantum Computing</article-title>
          ,
          <source>in: Proceedings of the 27th Conference on Pattern Languages of Programs</source>
          , The Hillside Group,
          <year>2021</year>
          .
          <article-title>Accepted for publication</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <surname>M.-S. Kang</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Heo</surname>
          </string-name>
          , S.-G. Choi, S. Moon, S.-W. Han,
          <article-title>Implementation of SWAP test for two unknown states in photons via cross-Kerr nonlinearities under decoherence efect</article-title>
          ,
          <source>Scientific Reports</source>
          <volume>9</volume>
          (
          <year>2019</year>
          )
          <fpage>6167</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>R.</given-names>
            <surname>Pérez-Castillo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Serrano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Piattini</surname>
          </string-name>
          ,
          <article-title>Software modernization to embrace quantum technology</article-title>
          ,
          <source>Advances in Engineering Software</source>
          <volume>151</volume>
          (
          <year>2021</year>
          )
          <fpage>102933</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <given-names>M.</given-names>
            <surname>Salm</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Barzen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>U.</given-names>
            <surname>Breitenbücher</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Weder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Wild</surname>
          </string-name>
          ,
          <article-title>The NISQ Analyzer: Automating the Selection of Quantum Computers for Quantum Algorithms</article-title>
          ,
          <source>in: Proceedings of the 14th Symposium and Summer School on Service-Oriented Computing (SummerSOC</source>
          <year>2020</year>
          ), Springer International Publishing,
          <year>2020</year>
          , pp.
          <fpage>66</fpage>
          -
          <lpage>85</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          [31]
          <string-name>
            <given-names>T.</given-names>
            <surname>Last</surname>
          </string-name>
          , et al.,
          <string-name>
            <surname>Quantum</surname>
            <given-names>Inspire</given-names>
          </string-name>
          :
          <article-title>QuTech's platform for co-development and collaboration in quantum computing, in: Novel Patterning Technologies for Semiconductors</article-title>
          ,
          <source>MEMS/NEMS and MOEMS</source>
          <year>2020</year>
          , volume
          <volume>11324</volume>
          , International Society for Optics and Photonics,
          <string-name>
            <surname>SPIE</surname>
          </string-name>
          ,
          <year>2020</year>
          , pp.
          <fpage>49</fpage>
          -
          <lpage>59</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          [32]
          <string-name>
            <surname>IBM</surname>
          </string-name>
          ,
          <string-name>
            <surname>Qiskit</surname>
            <given-names>Runtime</given-names>
          </string-name>
          ,
          <year>2021</year>
          . URL: https://github.com/Qiskit-Partners/qiskit-runtime.
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          [33]
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Roller</surname>
          </string-name>
          , Production Workflow:
          <article-title>Concepts and Techniques</article-title>
          ,
          <string-name>
            <surname>Prentice Hall</surname>
            <given-names>PTR</given-names>
          </string-name>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          [34]
          <string-name>
            <given-names>B.</given-names>
            <surname>Weder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>U.</given-names>
            <surname>Breitenbücher</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Wild</surname>
          </string-name>
          ,
          <article-title>Integrating Quantum Computing into Workflow Modeling and Execution</article-title>
          ,
          <source>in: Proc. of the 13 th IEEE/ACM Int. Conf. on Utility and Cloud Computing (UCC</source>
          <year>2020</year>
          ), IEEE Computer Society,
          <year>2020</year>
          , pp.
          <fpage>279</fpage>
          -
          <lpage>291</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          [35]
          <string-name>
            <given-names>G.</given-names>
            <surname>Hohpe</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Woolf</surname>
          </string-name>
          , Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions,
          <string-name>
            <surname>Addison-Wesley</surname>
          </string-name>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref36">
        <mixed-citation>
          [36]
          <string-name>
            <given-names>M.</given-names>
            <surname>Salm</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Barzen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Weder</surname>
          </string-name>
          ,
          <article-title>About a Criterion of Successfully Executing a Circuit in the NISQ Era: What  ≪ 1/ ef Really Means</article-title>
          ,
          <source>in: Proceedings of the 1st ACM SIGSOFT International Workshop on Architectures and Paradigms for Engineering Quantum Software (APEQS</source>
          <year>2020</year>
          ), ACM,
          <year>2020</year>
          , pp.
          <fpage>10</fpage>
          -
          <lpage>13</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref37">
        <mixed-citation>
          [37]
          <string-name>
            <given-names>M.</given-names>
            <surname>Rahaman</surname>
          </string-name>
          ,
          <string-name>
            <surname>M. M. Islam</surname>
            ,
            <given-names>A</given-names>
          </string-name>
          <article-title>Review on Progress and Problems of Quantum Computing as a Service (QCaaS) in the Perspective of Cloud Computing</article-title>
          ,
          <source>Global Journal of Computer Science and Technology</source>
          <volume>15</volume>
          (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref38">
        <mixed-citation>
          [38]
          <string-name>
            <given-names>J.</given-names>
            <surname>Rojo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Valencia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Berrocal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Moguel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>García-Alonso</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. M. M.</given-names>
            <surname>Rodriguez</surname>
          </string-name>
          ,
          <source>Trials and Tribulations of Developing Hybrid Quantum-Classical Microservices Systems</source>
          ,
          <year>2021</year>
          . arXiv:
          <volume>2105</volume>
          .
          <fpage>04421</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref39">
        <mixed-citation>
          [39]
          <string-name>
            <given-names>J. L.</given-names>
            <surname>Hevia</surname>
          </string-name>
          <string-name>
            <surname>Olivera</surname>
          </string-name>
          ,
          <article-title>Requirements for Quantum Software Platforms</article-title>
          ,
          <source>in: 1st Quantum Software Engineering and Technology Workshop</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>20</fpage>
          -
          <lpage>26</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref40">
        <mixed-citation>
          [40]
          <string-name>
            <given-names>B.</given-names>
            <surname>Weder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Barzen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Salm</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Vietz</surname>
          </string-name>
          ,
          <source>The Quantum Software Lifecycle, in: Proceedings of the 1st ACM SIGSOFT International Workshop on Architectures and Paradigms for Engineering Quantum Software (APEQS</source>
          <year>2020</year>
          ), ACM,
          <year>2020</year>
          , pp.
          <fpage>2</fpage>
          -
          <lpage>9</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>