{"id":7896,"date":"2021-10-12T18:02:40","date_gmt":"2021-10-12T18:02:40","guid":{"rendered":"https:\/\/modeling-languages.com\/?p=7896"},"modified":"2021-10-13T08:51:16","modified_gmt":"2021-10-13T08:51:16","slug":"kdm-to-uml-quantum-software-modernization","status":"publish","type":"post","link":"https:\/\/modeling-languages.com\/kdm-to-uml-quantum-software-modernization\/","title":{"rendered":"KDM to UML model transformation for Quantum Software Modernization"},"content":{"rendered":"

Quantum computing is getting closer and closer to being embedded in commercial information systems<\/strong> to provide a variety of services to companies and organizations. This is not an assumption, but a fact. We are now living in the quantum decade, where institutions are starting to realize the business value that this technology can provide.<\/p>\n

Sometimes, when we talk about quantum computing, we may think that this domain of science belongs only to physics and mathematics, and that software engineering has nothing to do with it. However, this belief is totally wrong. Software engineering will play a crucial role when companies want (and are able) to evolve their current information systems towards a hybrid type of information system, combining both traditional and quantum computing<\/strong> by making use of the services of providers such as IBM, Google or Microsoft among others. Although software engineering can help in different ways in this evolution of systems, today we will focus on how Model-Driven Engineering<\/a> can achieve this.<\/p>\n

Modernization toward hybrid information systems<\/h2>\n

Quantum computing has great potential to change many of the sciences we know today. A large number of papers have been published in which, even if only theoretically for now, they show that certain algorithms developed based on the principles of quantum mechanics (which is where quantum computing comes from) can be very useful. This is because quantum computing can deal easily with certain types of problems that are nowadays highly demanding to our current systems (i.e., the number factorization).<\/p>\n

Once the commercial quantum computers arrive (with an acceptable number of qubits), companies will migrate part of those classical systems that carry out complex operations or algorithms to quantum computers. The implementation of quantum computing does not necessarily imply a full replacement of the classical information systems<\/strong>, but at some point, both paradigms could work together, creating, as mentioned before, hybrid classical-quantum information.<\/p>\n

The evolution of the systems does not imply discarding the whole classical information systems, given that they are still useful for their organizations. Those systems may embed a vast amount of critical-mission knowledge that probably is not located elsewhere, and their replacement is highly risky. Another reason not to discard the classical part of the systems is that there will be certain operations that, being so simple, their implementation using quantum computing will not lead to an increase in performance.<\/p>\n

One of the possible solutions to address the evolution of the information systems could be through software modernization, which is the evolution of traditional reengineering but following an MDE approach<\/a>. A solution based on reengineering and, more specifically on ADM, was already proposed<\/a> to achieve the evolution of classical information systems to-wards hybrid ones. That solution introduced \u201cQuantum software reengineering<\/strong>\u201d and ensured that it might be used in three complementary scenarios:<\/p>\n