The next entry in Razorleaf’s series exploring digital twins, Episode 85: Software Digital Twins Boosting Reliability Through DevOps, finds co-hosts Jonathan Scott and Juliann Grant discussing the growing importance and relevance of software digital twins, given that almost every product in our lives now has software in it. In this discussion, they define one of the many different types of twins that exist, in order to expand our view on what and where digital twins can improve manufacturing processes.
Making Sense of Digital Twins for Software
It’s easy to talk about a hardware digital twin as a digital representation of a physical thing, but defining a software digital twin is more challenging—the idea of a digital representation of a digital thing gets a little meta, Jonathan points out. In the end, he says, “It’s an emulation, a representation of the software, or a way to try it out.” There are plenty of different applications for a replication of the software. “Maybe for some kind of optimization,” Jonathan says. “When software starts to behave on its own, maybe in complex or unexpected ways. You want to watch it, observe it, optimize it, that kind of thing. I think it’s there for other purposes like testing, validation. A version of a digital twin is, hey, create a build to the code, run it through, run some automated tests and see how it does. Does it respond in the ways that you want it to?”
Jonathan suggests that software digital twins can be broadly categorized into two types—though he admits, it’s more of a spectrum than two segregated categories. “You can think about software for software’s sake, where the hardware is just the place it runs. But the purpose and the interactions and all that is primarily about the software,” he says. “The other bucket is when the software’s a component of a physical product, and it’s the interplay that really is important.”
DevOps and Software Digital Twins
Part of what Juliann finds interesting is where software digital twins fit into a DevOps process and where they live in enterprise systems. One possibility is application lifecycle management (ALM) software. Jonathan says, “[It’s] where you’re going to develop your software, capture the requirements, the things that define what it needs to do, and hopefully capture the software that you write. You may also capture what’s compiled at the end. So you take that code, you run it through a compiler, you get some executable back that could actually be run on hardware itself.”
Another home for software digital twins is DevOps platforms, which might be doing some amount of ALM, but probably not all of it. DevOps software has “the pieces that get you to, ‘I’ve got code and I need to compile it.’ But then what they’re doing, the Ops part, is they’re letting you automate getting it into an operational state and do things like test it,” he explains. Those automation capabilities are particularly valuable when you want to test software on a different operating system—instead of buying multiple machines and OSs, the DevOps system can automatically spin up virtual machines to emulate physical machines. “And that’s my digital twin operating environment,” Jonathan says.
DevOps systems that can automate that kind of testing are also important when you’re dealing with a digital twin for software that’s a component of a physical product. “You need to spin up some kind of emulation of the physical hardware,” Jonathan says, “and you need to figure out the emulation of the software that controls it and how you get that on there.” With a hardware/software mix, configuration management (CM) can be critical, because you need to know that you have the right versions of every electrical, mechanical, and software component involved—and the stakes get higher as the scope and complexity of the product get bigger. Jonathan notes, “Down at the lowest levels, it’s new version, old version, little update. But when you start talking about these interdependencies of that won’t work if it doesn’t have the right version of that, and this can’t connect to that. It gets complicated and it turns into a big deal fast.”
Learn More About Software Digital Twins
The full podcast contains more discussion and details on a variety of topics, including use cases for how DevOps helps automate the configuration, testing, and even launch of your software products using digital twins; what Jonathan’s early love of Nintendo can teach you about software digital twins; why understanding your car starter will help you understand software digital twins; and more.
Be sure to check out Stay Sharp Episode 85: Software Digital Twins Boosting Reliability Through DevOps and join us each week for a new podcast.



