skip to main content
10.1145/3643667.3648220acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

A preliminary study of the usage of design patterns in quantum software

Published: 06 August 2024 Publication History

Abstract

Quantum computing deserve more and more attention owing to all the promising applications in several fields. These applications are achieved through quantum software. The development of quantum software still poses some challenges as the complexity of quantum algorithms, lack of abstraction mechanisms and the need to integrate classical and quantum software. These challenges could be addressed by applying some quantum software design patterns, which have been already proposed in the literature. However, there is a lack of insights about what is the extend of application of certain design patterns, and how are the characteristics of quantum circuits where these patterns are applied. Thus, this paper proposes a preliminary code repository analysis to systematically analyze the application of five design patterns: initialization, uniform superposition, oracle, entanglement and uncompute. The obtained dataset with 80 source code files in Qiskit and OpenQASM shows that initialization and uniform superposition are the most common design patterns. This study can help quantum software developers to understand how and when to apply some design patterns. Additionally, insights of this study could help to define new design patterns.

References

[1]
Alsalman, A.I.S., Accelerating Quantum Readiness for Sectors: Risk Management and Strategies for Sectors. Journal of Quantum Information Science, 2023. 13(2): p. 33--44.
[2]
Vasiliu-Feltes, I., Impact of Quantum on the Digital Economy and Society. 2023, Coruzant Technologies.
[3]
McKinsey & Company, Quantum technology sees record investments, progress on talent gap. 2023, McKinsey & Company.
[4]
Preskill, J., Quantum Computing in the NISQ era and beyond. Quantum, 2018. 2(aug): p. 79.
[5]
Swayne, M., What Are The Remaining Challenges Of Quantum Computing? The Quantum Insider, 2023. March 24, 2023.
[6]
Carleton, A.D., E. Harper, J.E. Robert, M.H. Klein, D. De Niz, E. Desautels, J.B. Goodenough, C. Holland, I. Ozkaya, and D. Schmidt, Architecting the Future of Software Engineering: A National Agenda for Software Engineering Research and Development. 2021, Software Engineering Institute, Carnegie Mellon University.
[7]
Pérez-Castillo, R. and M. Piattini, Design of classical-quantum systems with UML. Computing, 2022.
[8]
Ali, S. and T. Yue, On the Need of Quantum-Oriented Paradigm, in Proceedings of the 2nd International Workshop on Quantum Programming for Software Engineering. 2023, Association for Computing Machinery:, San Francisco, CA, USA, . p. 17--20.
[9]
Pérez-Castillo, R., M.A. Serrano, and M. Piattini, Software modernization to embrace quantum technology. Advances in Engineering Software, 2021. 151: p. 102933.
[10]
Khan, A.A., A. Ahmad, M. Waseem, P. Liang, M. Fahmideh, T. Mikkonen, and P. Abrahamsson, Software architecture for quantum computing systems --- A systematic review. Journal of Systems and Software, 2023. 201: p. 111682.
[11]
Garcia-Alonso, J., J. Rojo, D. Valencia, E. Moguel, J. Berrocal, and J.M. Murillo, Quantum Software as a Service Through a Quantum API Gateway. IEEE Internet Computing, 2022. 26(1): p. 34--41.
[12]
Jiménez-Fernández, S., J.A. Cruz-Lemus, and M. Piattini, A Systematic Mapping Study on Quantum Circuits Design Patterns, in Proceedings of the 25th International Conference on Enterprise Information Systems - Volume 2: ICEIS. 2023, SciTePress: Prague, Czech Republic. p. 109--116.
[13]
Leymann, F., Towards a Pattern Language for Quantum Algorithms. 2019, Springer International Publishing: Cham. p. 218--230.
[14]
Bühler, F., J. Barzen, M. Beisel, D. Georg, F. Leymann, and K. Wild, Patterns for Quantum Software Development, in 15th International Conference on Pervasive Patterns and Applications (PATTERNS 2023). 2023, Xpert Publishing Services (XPS): Nice, France. p. 30--39.
[15]
Raussendorf, R., D. Browne, and H. Briegel, The one-way quantum computer-a non-network model of quantum computation. journal of modern optics, 2002. 49(8): p. 1299--1306.
[16]
Weigold, M., J. Barzen, F. Leymann, and M. Salm, Expanding Data Encoding Patterns For Quantum Algorithms. in 2021 IEEE 18th International Conference on Software Architecture Companion (ICSA-C). 2021.
[17]
quantumcomputingpatterns.org. Quantum Computing Patterns. 2023 [cited 2023 2023]; Available from: https://quantumcomputingpatterns.org/.
[18]
Sayago-Heredia, J., R. Pérez-Castillo, and M. Piattini, A Systematic Mapping Study on Analysis of Code Repositories. Informatica, 2021: p. 1--42.
[19]
Aversano, L., G. Canfora, L. Cerulo, C.D. Grosso, and M.D. Penta, An empirical study on the evolution of design patterns, in Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering. 2007, Association for Computing Machinery: Dubrovnik, Croatia. p. 385--394.
[20]
Abid, S., Z. Qamar, N. Khan, M. Shayan, and H.A. Basit, Retrieving Design Pattern Usage Examples using Domain Matching. in 2016 23rd Asia-Pacific Software Engineering Conference (APSEC). 2016.
[21]
Paltenghi, M. and M. Pradel, LintQ: A Static Analysis Framework for Qiskit Quantum Programs. arXiv preprint arXiv:2310.00718, 2023.
[22]
Fingerhuth, M., T. Babej, and P. Wittek, Open source software in quantum computing. PloS one, 2018. 13(12): p. e0208561.
[23]
El Aoun, M.R.E., H. Li, F. Khomh, and M. Openja, Understanding Quantum Software Engineering Challenges An Empirical Study on Stack Exchange Forums and GitHub Issues, in 2021 IEEE International Conference on Software Maintenance and Evolution (ICSME). 2021. p. 343--354.
[24]
De Stefano, M., F. Pecorelli, D. Di Nucci, F. Palomba, and A. De Lucia, Software engineering for quantum programming: How far are we? Journal of Systems and Software, 2022. 190: p. 111326.
[25]
Cruz-Lemus, J.A., L.A. Marcelo, and M. Piattini, Towards a Set of Metrics for Quantum Circuits Understandability. 2021, Springer International Publishing: Cham. p. 239--249.
[26]
Perez-Castillo, R. Quantum Software Design Patterns Detection for Qiskit and QASM circuits [Data set]. 2023 [cited 2023; Available from

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
Q-SE 2024: Proceedings of the 5th ACM/IEEE International Workshop on Quantum Software Engineering
April 2024
60 pages
ISBN:9798400705700
DOI:10.1145/3643667
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

In-Cooperation

  • Faculty of Engineering of University of Porto

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 06 August 2024

Check for updates

Author Tags

  1. quantum software engineering
  2. quantum computing
  3. design patterns
  4. quantum circuit metrics
  5. code repository analysis

Qualifiers

  • Research-article

Conference

Q-SE 2024
Sponsor:

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 57
    Total Downloads
  • Downloads (Last 12 months)57
  • Downloads (Last 6 weeks)10
Reflects downloads up to 15 Feb 2025

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media