2023 Research Review
Software Architecture for Systems that Use Quantum Computers
Since its inception, software architecture has developed a robust toolset allowing its practitioners to aid the stakeholders of a system in reasoning about the system’s quality attributes—security, performance, availability, modifiability, testability, and so forth. In recent years, with the increasingly larger leaps in technology, it has become a point of discussion on whether software architecture and engineering has the toolset to properly harness the benefits of advanced artificial intelligence (AI). At the CMU SEI we believe that with minimal refinement and innovation we already have the toolset to handle AI Engineering.
The same could not so confidently be said about other emerging technologies, especially not for quantum computing. Quantum computing brings in additional physics compared to traditional computing which replaces bits with qubits (quantum bits), algorithms with quantum algorithms, and promises exponentially faster compute power able to enhance AI and break encryption protocols. While quantum computers (QCs) currently do not have enough capacity to show advantage over classical hardware, the U.S. Department of Defense (DoD) has recognized quantum technologies as a national security concern.
The U.S. Department of Defense has recognized quantum technologies as a national security concern.
Daniel JusticeSoftware Developer
After a year of exploratory research, speaking with early adopters, writing blog posts, and holding the first Workshop on Software Concerns for Quantum Computing, we have several key insights:
- A key abstraction is the QC which is a hybrid system consisting of a classical-to-quantum controller and a QPU.
- Given that QCs exist, it is reasonable that software architecture can be adapted to handle the algorithm redesign and reproducibility challenges.
- Inside of QC, everything from the physics of qubits to QPU chip design and circuit mappings of new algorithms host an immense number of physics, chemistry, computer science, and engineering challenges.
- QCs are not yet mature enough to be used practically beyond vendors, early adopters, and custom solutions. This technological immaturity has led to an insufficient workforce.
The implications of these findings are that, given proper QC abstraction, the DoD is likely to be able to integrate QCs in a forthright manner. However, the complexity inside the QC abstraction is still developing and in want of improved tools, software engineering practices, and increased workforce. The critical, yet subtle, finding is that we have not seen evidence that the unique physics of quantum computers have impacts on quality attributes beyond fault tolerance and reproducibility outside of the quantum computer abstraction.
In Context: This FY2023-24 Project
- builds on the CMU SEI’s cybersecurity expertise and experience quantum computing and is a collaborative effort with the U.S. Naval Research Laboratory (NRL) and Air Force Research Laboratory (AFRL)
- aligns with the CMU SEI technical objective to bring capabilities that make new missions possible or improve the likelihood of success of existing ones
- aligns with the OUSD(R&E) critical technology priority of developing quantum science to help solve the DoD’s hardest analytical problems
Principal Investigator
Daniel Justice
Software Developer
SEI Collaborators
Dr. Rick Kazman
Visiting Scientist
Andrew Mellinger
Principal Engineer
Dr. Jason Larkin
Senior Researcher
Watch the Recording
Have a Question?
Reach out to us at info@sei.cmu.edu.
Mentioned in this Article
[Shaw 2022]
Horneman, Angela; Mellinger, Andrew; & Ozkaya, Ipek. AI Engineering: 11 Foundational Practices. Software Engineering Institute, Carnegie Mellon University. 2022. https://doi.org/10.1184/R1/19639092.v1
[Horneman 2022]
Shaw, Mary & Zhu, Liming. Can Software Engineering Harness the Benefits of Advanced AI? IEEE Software. Volume 39. Number 6. November-December. 2022. Pages 99-104. https://doi.org/10.1109/MS.2022.3203200