Skip to main content
QUICK REVIEW

[論文レビュー] Software Engineering for Quantum Programming: How Far Are We?

Manuel De Stefano, Fabiano Pecorelli|arXiv (Cornell University)|Mar 31, 2022
Quantum Computing Algorithms and Architecture被引用数 4
ひとこと要約

本論文は、2段階の研究を通じて、量子プログラミングの現状を調査している:Qiskit、Cirq、Q# を用いたGitHubリポジトリのマイニングによる使用状況の分析、および56名の活発な量子開発者のアンケート調査。量子プログラミングは主に教育的および実験的用途に使われており、技術的および社会的技術的分野における主要な課題が存在することから、量子ソフトウェア工学は依然として初期段階にあり、成熟していないことが示された。

ABSTRACT

Quantum computing is no longer only a scientific interest but is rapidly becoming an industrially available technology that can potentially overcome the limits of classical computation. Over the last years, all major companies have provided frameworks and programming languages that allow developers to create their quantum applications. This shift has led to the definition of a new discipline called quantum software engineering, which is demanded to define novel methods for engineering large-scale quantum applications. While the research community is successfully embracing this call, we notice a lack of systematic investigations into the state of the practice of quantum programming. Understanding the challenges that quantum developers face is vital to precisely define the aims of quantum software engineering. Hence, in this paper, we first mine all the GitHub repositories that make use of the most used quantum programming frameworks currently on the market and then conduct coding analysis sessions to produce a taxonomy of the purposes for which quantum technologies are used. In the second place, we conduct a survey study that involves the contributors of the considered repositories, which aims to elicit the developers' opinions on the current adoption and challenges of quantum programming. On the one hand, the results highlight that the current adoption of quantum programming is still limited. On the other hand, there are many challenges that the software engineering community should carefully consider: these do not strictly pertain to technical concerns but also socio-technical matters.

研究の動機と目的

  • 最も広く使われている量子フレームワークを用いて、実世界のソフトウェアプロジェクトにおける量子プログラミングの採用状況を評価すること。
  • 開発者が現在、量子技術を主にどのような目的で使用しているかを特定すること。
  • 実際の開発現場で量子プログラマーが直面する技術的および社会的技術的課題を明らかにすること。
  • 今後のツール開発および量子ソフトウェア工学分野における支援開発を支援するための実証的知見を提供すること。

提案手法

  • Qiskit、Cirq、Q# の検索パターンを用いて、大規模なGitHubリポジトリのマイニングを実施し、活発な量子プログラミングプロジェクトを同定した。
  • マイニングされたリポジトリに対して手動でのコード分析を実施し、量子プログラミングの使用目的を分類した。
  • オープンソースの量子プロジェクトに10回以上のコミットを行った56名の活発な貢献者を対象にアンケートを実施し、課題や実践に関する知見を収集した。
  • 量子プログラミングの採用目的に関する分類法と、開発者が直面する課題に関する分類法の2つを構築・検証した。
  • 信頼性を高め、主観性を低減するため、反復的で複数名によるコード分類および集約プロセスを採用した。
  • 研究に使用したすべての資料およびデータをオンラインの付録として公開し、再現可能性および今後の研究を支援した。
Figure 1: Graphical summary of the applied methodology. By mining GitHub , we have obtained a set of repositories that we manually classified. Afterward, we extracted the list of public emails of their developers, whom we surveyed. We addressed RQ 1 using the classification results, while we address
Figure 1: Graphical summary of the applied methodology. By mining GitHub , we have obtained a set of repositories that we manually classified. Afterward, we extracted the list of public emails of their developers, whom we surveyed. We addressed RQ 1 using the classification results, while we address

実験結果

リサーチクエスチョン

  • RQ1実世界のプロジェクトにおいて、量子プログラミングは主にどのような目的で使用されているか?
  • RQ2最先端のフレームワークを使用する際、量子開発者が直面する技術的および社会的技術的課題は何か?
  • RQ3Qiskit、Cirq、Q# の3つの主要な量子フレームワーク間で、使用パターンと課題はどのように異なるか?

主な発見

  • GitHub上の量子プログラミングプロジェクトの大多数は、教育的目的や個人的な実験に使われており、産業的または本格的な開発への採用は限定的であることが示された。
  • 905名の開発者に連絡を取ったが、アンケートへの回答は56名にとどまり、応答率は6.1%であった。これはソフトウェア工学のアンケート調査においては妥当とされる。
  • 目的の分類法から、多くのプロジェクトが生産システムの構築ではなく、学習用ツール、概念実証、教育的デモの作成に使われていることが明らかになった。
  • 開発者たちは、量子理論の理解やプログラムの理解の難しさに加え、ツールの使いにくさ、デバッグの困難さ、共同作業の課題など、社会的技術的障壁も顕著に報告した。
  • 本研究では、量子プログラミングにおけるソフトウェア工学的支援のギャップが明らかになった。開発者は基本的なコーディングを越えて、プログラム解析、テスト、理解の面で困難を抱えている。
  • これらの知見は、量子ソフトウェア工学がまだ成熟しておらず、技術的制限と人的要因の両方が進展を妨げていることを示唆している。
Figure 2: Partition of the repository per class of usage.
Figure 2: Partition of the repository per class of usage.

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。