Quantum Software Development Lifecycle
Abstract
With recent advances in the development of more powerful quantum computers, the research area of quantum software engineering is emerging, having the goal to provide concepts, principles, and guidelines to develop high-quality quantum applications. In classical software engineering, lifecycles are used to document the process of designing, implementing, maintaining, analyzing, and adapting software. Such lifecycles provide a common understanding of how to develop and operate an application, which is especially important due to the interdisciplinary nature of quantum computing. Since today`s quantum applications are, in most cases, hybrid, consisting of quantum and classical programs, the lifecycle for quantum applications must involve the development of both kinds of programs. However, the existing lifecycles only target the development of quantum or classical programs in isolation. Additionally, the various programs must be orchestrated, e.g., using workflows. Thus, the development of quantum applications also incorporates the workflow lifecycle. In this chapter, we analyze the software artifacts usually comprising a quantum application and present their corresponding lifecycles. Furthermore, we identify the points of connection between the various lifecycles and integrate them into the overall quantum software development lifecycle. Therefore, the integrated lifecycle serves as a basis for the development and execution of hybrid quantum applications.
Cite
@article{arxiv.2106.09323,
title = {Quantum Software Development Lifecycle},
author = {Benjamin Weder and Johanna Barzen and Frank Leymann and Daniel Vietz},
journal= {arXiv preprint arXiv:2106.09323},
year = {2021}
}
Comments
This is a preprint of the following chapter: Benjamin Weder, Johanna Barzen, Frank Leymann, and Daniel Vietz: Quantum Software Development Lifecycle, published in Quantum Software Engineering, edited by M. Serrano, M. Piattini, and R. Perez-Castillo, 2022, Springer