Despite the increasing interest in quantum computing, the aspect of development to achieve cost-effective and reliable quantum software applications has been slow. One barrier is the software engineering of quantum programs, which can be approached from two directions. On the one hand, many software engineering practices, debugging in particular, are bound to classical computing. On the other hand, quantum programming is closely associated with the phenomena of quantum physics, and consequently, the way we express programs resembles the early days of programming. Moreover, much of the software engineering research today focuses on agile development, where computing cycles are cheap and new software can be rapidly deployed and tested, whereas in the quantum context, executions may consume lots of energy, and test runs may require lots of work to interpret. In this paper, we aim at bridging this gap by starting with the quantum computing workflow and by mapping existing software engineering research to this workflow. Based on the mapping, we then identify directions for software engineering research for quantum computing.
翻译:尽管量子计算领域的兴趣日益增长,但在开发经济高效且可靠的量子软件应用方面进展缓慢。其中一个障碍是量子程序的软件工程问题,该问题可从两个方向切入。一方面,许多软件工程实践(尤其是调试)仍受限于经典计算范式;另一方面,量子编程与量子物理现象紧密关联,导致程序表达方式类似编程发展早期阶段。此外,当前软件工程研究多聚焦于敏捷开发模式——该模式下计算周期成本低廉,新软件可快速部署测试——但量子场景中,程序执行可能消耗大量能源,测试运行也需要大量工作来解释结果。本文旨在弥合这一差距:首先构建量子计算工作流框架,进而将现有软件工程研究映射至该工作流。基于映射分析,我们最终识别出面向量子计算的软件工程研究方向。