Modernizing COBOL Applications with Generative AI – Skyla Loomis and Keri Olson, IBM
Skyla Loomis, vice president of IBM Z software, and Keri Olson, vice president for IT automation at IBM, dive into how generative artificial intelligence (AI) will be applied to modernize COBOL applications by automatically converting them into Java applications.
Transcript
This is Textron tv. Hey guys, thanks for the throw. We are here with Skyla Loomis, who is vice president of software for the Z platform at I B M and Carrie Olsson, who is vice president of product management for I B M automation.
We're talking about how generative AI is gonna be applied to application modernization within the context of COBOL and Java. Skyla Kerry, welcome to show. Thank you.
Thank you. It's great to be here. Walk us through exactly what this new tool does.
I think it's called, uh, Watson's the next code assistant. But as I understand it, Skyla, we're getting into the land of using generative AI to kind of transform code and um, and actually improve the code because it's not just line for line syntax of COBOL and the Java. It's kind better.
So walk us through how this thing works a little bit. Yeah, happy to. So, yes, I b m is announcing that I B M Watson X code assistant for I B M Z.
And this is our new generative AI assisted solution that will help our clients really accelerate and de-risk their overall cobalt modernization, uh, projects and, and application modernization approaches. Um, you know, this is really about taking a much broader approach to application modernization. Uh, and you know, compared to what a lot of folks do out there, they really just try to do this, you know, kind of brute force, put all your COBOL in, you know, get put 30 million lines of a core banking application in, get hundreds of millions of lines of Java out.
Um, and there's a lot of challenges with that kind of approach. Uh, what we're really doing is taking a, uh, a targeted and incremental approach to application modernization that we think is very pragmatic for our clients and these incredibly important mainframe applications. Um, so it's really about going in and understanding the application, being able to incrementally refactor out a discreet logical business service and then selectively transform it from COBOL into Java where it makes sense and allow that COBOL and Java to really interoperate, um, which the Z platform excels at.
Um, and then also helping to provide, uh, the validation that goes along with that. Um, so we're really trying to understand the semantic intent of these logical business services and create, uh, readable natural Java that a Java developer would recognize as opposed to, uh, like a Joe Ball, which is often what you get from that kind of line for line syntax translation. Alright, awesome.
Gary, where does automation fit in this? I feel like everybody and his brother's talking about generative AI and this cool thing that it can do, but at some point I have to execute something. So do we need to join these two things more closely at the hip than people realize?
We absolutely need to tie together ai, generative AI and automation. And as you look at the approach that we're taking with Watson X code assistant for Z, that's exactly what we're doing. So we have automated tooling as Skyla talked about, that really helps the developer and their organization to understand the app applications to refactor those applications.
Then there's a lot of automation that really fits behind that. Before we get to the transform phase, the transform phase is where the generative AI really comes in. Where I B M is building state-of-the-art foundation models.
Um, we're we're coming out with a 20 billion parameter model that will help organizations to do that COBOL to Java translation. But that doesn't happen without automation, which comes both before and after the translation. You know, Skyla talked about the validation phase where we can help organizations to generate test cases and execute those test cases as well.
So as you look at the end-to-end capabilities and the end-to-end product that we're delivering, it's a huge combination of automation and generative ai. And at the end of the day, you need both in order to succeed. And of course, this is an assistant, right?
It's an assistant to the developer who will continue to have a hand in everything that's going on. Skyla, how will this transform the application modernization effort? 'cause I feel like some of these efforts are gone forever.
Uh, people get engaged, they hire a consulting firm, they pull up with a truckload of kids and they don't leave for years. So is this gonna get better? Is this something we can probably think about executing within a narrower window of time?
Absolutely. I think many of these projects ultimately fail, uh, the way that they're done today because they do tend to be these big bang approach solutions to the entire code base, but often to the entire stack. So they're trying to, you know, they're usually in an effort to migrate.
Um, and in that case you have to rework the data model. You have to rework the application runtime, right? There's everything that you have to kind of recreate.
And so there's huge risk and huge scope creep that often happens, um, through those types of projects. Again, our approach is really about leveraging the power of the I B M Z platform and what it's good for with a fit for purpose and targeted approach to modernization. So you get a value immediately, uh, through the process of that modernization.
As you start to kind of incrementally pull apart and tease apart this logic, you're starting to get these core business services that now are gonna be able to be more agile. You're gonna have more understanding of them, you're gonna have the test cases around them, and you're gonna be able to kind of leverage those skills and de-risk kind of that code those core code bases, uh, right away and start to get that value and start to push this code into production right away. We also believe that this assistant will really be able to help kind of with an order of magnitude kind of style of improvement around these types of projects.
And ultimately you may not need to or choose to, to convert everything into Java, right? You may leave some pieces of that code base in cobol, um, in part because it's so incredibly performant. It's, you know, kind of much more closer to the bare metal in terms of its processing.
But this way you have that kind of optionality, right, to really choose the best fit language and, and kind of approach for the application. It's also gonna continue to leverage the Z platform. So if it's running in your uh, kicks environment, it's gonna continue to run in kicks, right?
If it's leveraging your DB two for Z OS database or your vs a file sets, it's gonna continue to leverage that. So, you know, we're not trying to take on this entire kind of lift and shift or like rip and replace type of motion. We're really trying to, you know, provide targeted value at, you know, being able to leverage a broader set of a skills base and availability for these applications, um, while still getting the benefits from the platform.
Harry, to Skyla point, we're gonna see kind of a multimodal environment from the applications will be in cobol, they'll be in Java, they might be in some other languages as time goes on. Does the automation platform have to get smarter to kinda understand the relationships between these things and the interfaces and the interoperability between all these applications? 'cause I feel like today we have a lot of silos in our various programming languages.
So can we kind of start breaking those down? We certainly can start breaking those down, and I think that's a lot of the value that we bring in in having this approach. Again, that helps to understand and refactor those applications and make sure that the underlying components are still talking properly together and working together.
As Skyla mentioned, what we are doing with Cobalt to Java, it is very much optimized for the Z platform. And what that means is that when we write the Java code or when we produce the Java code for, for the developer, it is optimized for Java. It talks to the underlying capabilities of the platform, which means it will continue to talk to the other applications that are on that platform as well.
Um, so, so yes, we absolutely need to get smarter and the good news is that as we are building Watson X code assistant for Z, we are very much focused on making sure that we have that end-to-end view and can continue to support customers who are running not only new Java code, but also continuing to run COBOL code. Because as Skyla said, we don't expect a wholesale translation or a wholesale transition from Cobalt to Java. There are many critical applications that will continue running in COBOL for for many years.
And so it's very important for us to do that, and that's one of our huge focus areas. Skyline, what are the benefits for organizations that do decide to move over to Java? I mean, one of the obvious things is there's a lot more Java developers out there, but there whatcha hearing from organizations?
Yeah, no, absolutely. I mean, particularly in some of the regulated industries, uh, you know, there's concern around risk of how well our clients understand these applications. Um, and so by being able to go through this understand and, and, and kind of refactoring, you know, they're getting a handle on those applications and then yes, they've got the availability of these additional developers.
Um, and Java actually runs better on z o S than on any other platform. Um, I B M has investing, has been investing for 25 years in Java on Z and you know, we actually have instruction sets, um, you know, through hardware into firmware acceleration that specifically targets, uh, different parts of the Java language that can be, um, kind of slow or very, uh, resource intensive. And we've actually optimized and built, you know, platform level vertical integration and optimization to really kind of drive the best performance for Java on the platform.
So, you know, in addition to I think the skills availability, um, and just the kind of the broader, uh, you know, understanding of that they'll gain through this transformation of their application, uh, they're also gonna get the most performant platform possible, uh, for Java. Carrie and Wag once told me it's one thing to be wrong, it's quite another thing to be wrong at scale. How do we put automation and guardrails together in a way that we can roll it back and maybe, you know, make sure that we're doing the right thing at the right time?
Yeah, so as we build out this solution and provide solutions to our customers along with all the services that I B M is able and willing to provide, um, we will make sure that this becomes part of the DevOps process. This is not something that, it's not a tool that's going to be run on the side. It's not something that's going to be run in isolation.
This is something that will become a tool that the customer can use as part of their overall DevOps process. So absolutely, you know, as customers are starting to use generative AI and we have many customers who are very excited about it, there's a huge promise here. There definitely will be a need to be guardrails to ensure that, you know, there's proper testing that happens before you would roll anything into production.
And obviously, you know, we have a longstanding, we have a longstanding ability to do that as our customers do as well. So it is a very important part of every project. Skyla, how smart can smart get, where do we go from here?
What's next? I mean, if you had told me this was gonna happen a year ago, I probably would've been skeptical, but now it seems like everything is coming fast and furious. So what should we be looking for?
Absolutely. You know, I think in the near term we're very focused on that, that naturalness and being able to really take advantage of all of the, uh, all that the Z platform has to offer as we continue to go into the future, right? Um, you know, more focus on that validation phase as well as the different additional languages and additional use cases.
So, uh, even within the Z platform context, you know, we're looking at PL one in the future. Uh, we're also looking at content explanation, right? So not, not only these transformation use cases, but let me help you understand what your COBOL is doing, what your PL one is doing, uh, right, so that and as well as perhaps make recommendations for optimizations.
Lemme help you write better Cowell, right? Let me help you write better PPL one, uh, for those kind of existing, um, applications and assets that are there. Um, and then, you know, I think as we look even more broadly at the Watson x, uh, family that I B M is bringing out, certainly we have, um, soon coming out, uh, our support with Ansible Lightspeed and being able to take natural language prompts to produce Ansible playbooks.
And beyond that we're looking at even more enterprise, uh, development use cases, uh, certainly, uh, Java and other common languages being, uh, under consideration. Perry, you mentioned DevOps is subject close to our hearts here at Techstrong, but, um, what will be the line between man and machine going forward? It feels like a lot of the manual tasks will be automated.
There are a lot of bottlenecks and DevOps workflows that have evolved over the years, but where does that human come into play? That's a very interesting question. I think one of the things that we need to understand is as we're building generative AI and specific, specifically Watson Xcode assistant for z, we are focused on assisting the developer.
This is not intended to replace the developer. This is not intended to take the place of a human being. But the fact of the matter is that with generative AI and with the automation capabilities that we offer, we can certainly provide a lot of value in terms of, um, productivity and driving productivity for those developers and helping to close the skills gap for the enterprise.
And those are some of the key things that we're focused on. So we certainly don't imagine that developers are going away. As a matter of fact, we'll continue to have a lot of, a lot of opportunity in the development community and developers are excited about having the ability to have this assistant to help them to be more productive and to focus on higher value things.
So we'll continue to focus on that and, you know, the man and machines certainly continue to work together. All right, Laura, in this case, women and machines depending. Absolutely.
Alright. Um, Skyla, what's your best advice to folks? I think a lot of people are looking at this, they're intrigued, for sure, excited, maybe a little scared, and they don't know where to get started, and it's kind of overwhelming.
So what do you tell folks about how to get started with this whole thing? I mean, I think the biggest thing is to actually start, uh, you know, I think, uh, I think a lot of things when you think even about DevOps or agile transformations, you know, anything kind of along these lines of a transformative type of a a project, you gotta take that first step, um, have a little bit of the leap of faith, right? And then learn as you go and adjust and pivot.
So I think this is similar to that, right? Um, you wanna get started and if you're not sure where, uh, you know, there's, um, you know, getting started with DevOps, getting started with, uh, you know, POCs with our teams, right? There'll be lots of ways that you can start to kick the tires and be able to experience some of this technology.
But, um, you know, thinking about, uh, you know, where you can get started and, and maybe like a specific area of your code base, uh, that might be a good, um, a good test pilot, uh, is, is a good way to kind of start getting ready to go. Same question to you Kerry, with some context maybe for lots of folks are using the, uh, red Hat Automation frameworks these days. So is that gonna show up here as well?
And can I use one automation framework across all these platforms? Yeah, it's, it's a really good question, Mike. And where we actually started with Watson, X code assistant is Watson X code assistant for Ansible, and, um, focusing on, um, Lightspeed, right?
So, so that is definitely a sister product to what's next code assistant for z. And as you look at what I b m is delivering here, we're, we're really focused on generative AI for code in targeted domains and targeted use cases. So we will be using an underlying foundation model, um, for across all of our use cases.
And it's trained on over 115 languages. So while, you know, we're focused today on cobalt to Java translation and we're focused on generating Ansible playbooks with Ansible Lightspeed, you can imagine that there are so many additional opportunities for us and for our customers as we move forward. And we're gonna continue taking that targeted approach, which really focuses on bringing the value of not only training the model, but fine tuning the model, uh, with curated data that that helps an organization to move forward in the most effective way.
All right, folks, you heard in here, those of you with long memories know that just about every major technology innovation somewhere along the line probably got started on the mainframe and work its way out. Sounds like generative AI is not gonna be much different. Skyla, thanks for being on the show Carrie.
You as well. Thank you. Thanks.
And back to you guys in the studio.