Popis: |
In today’s software engineering, iterations, affordable en masse, form an important part of just about any system. However, not all computing resources are cheap to consume. In High-Performance (HPC) and Quantum Computing (QC), executions can consume considerable amounts of energy and time, which is reserved and used even if the very first steps in the process fail. This means that developers must assume a different attitude towards programming, and aim at error-free software before its execution. This is commonly facilitated using simulators, which are commonplace for both HPC and QC. However the fashion developers advance from one tool to another is ad-hoc, with no established software engineering guidelines, and the final step from simulators to HPC/QC is still a leap of faith, comparable to releasing software. In this paper, we propose a vision where developers can iterate in an agile fashion when developing quantum software. The iterations are defined such that when the solution is still vague in the beginning, computations are interactive and provide instant feedback, thus supporting conceptualization of the software and experimenting with new ideas. When the solution becomes more precise, more expensive computations such as quantum algorithm and hyperparameter optimization are executed in batches. |