[Music] hello good morning and welcome everyone uh I see you still have a few folks coming in but maybe we we'll get get it started uh good to see everyone good to see a full room great to have uh be here right after the kyot to follow of the energy that we saw from stage uh today we'll talk about how geni can help us with the challenge the age uh old challenge of application modernization this is one of the themes that we see as this interplay between gen for cloud and Cloud for Gen right we really believe that gen uh that that there is a lot of synergy there that there is a symbiotic relationship that gen can accelerate the migration and modernization to cloud and that no uh Enterprise grade use case of General I can really exist without being in public Cloud so so that relationship is very strong today we'll talk about how gen can can help on that migration Moniz and modernization uh to Cloud uh as a way of a quick introduction I'm landre Santos I'm a senior partner with McKenzie and Company I'm part of our digital uh practice uh and I lead our Cloud by Mackenzie cap capability globally and here with me we have Aaron hi uh Aon bam uh McKenzie partner um I uh focus a lot of my time on cloud and I sponsor our Global practice for the use of gen to be able to power technology modernization I'm a technologist by trade and Leandra and I are part of what we call the new McKenzie where we focus on technical implementation and Delivery at a keyboard level with our clients which is probably different than you're used to from uh hearing from Mackenzie in the past and we're here because we're really excited to show some of the work we've been doing of how we can use gener of AI to significantly accelerate and reduce the developer burden for modernizing technology systems so uh with that the like of uh Legacy Systems and Technology that is very well known uh you know for age uh the moment you write a piece of code it starts to age right it may not show rusting like physical infrastructure does but we all know that it does rust an age uh and it's a problem that is very visible on the business side and technology side so in the business side it is lows down and limits the ability to change and innovate for the business to respond to Market pressures right for you to to be able to offer new product quickly and all that on the technology side it just brings a ton of risks with it right risks of resiliency risks of continuity risks on the cyber space uh and in several cases also it comes with a larger operating cost a higher operating cost than what you'd be able to do uh uh more modernly right um now if the problem is not new why why is it still there and I think the reason why it's there is because all of the approaches all of the ways of modernizing that have existed so far uh come with a lot of challenge so in the business side uh the business cases are quite tricky right because there's been hundreds of thousands or millions of development hours that have gone into the systems over the years and they're kind of working so justifying that business case is is is very very tricky right really quantifying what are the benefits what are the cost to do it is not simple and the costs tend to be fairly high right so that's one Challenge on the business side and then on the technology side some of the systems don't have documentation they sometimes don't even have the source code available anymore certainly they don't have enough resource uh to go through the modernization the business logic is not clear right and and and also this Challenge on how much do I just modernize without changing or do I want to change the business I wonder and how do I how do I do that at the end of the day the opportunity cost of tackling those those projects uh uh tend to be too great and and other things get prioritized and thus we we keep creating technical data and accumulating technical data as it goes now gen is a game Cher on that equation right it's a game Cher because uh it allows us to automate a lot of the more labor intensive and honestly tedious tasks that developers had to do to modernize uh to modernize an application and walk through the application modernization life cycle and how it helps along the way uh but it does that the other thing it does is it allows you to reverse engineer the business logic that's there uh which which then allows you to understand what the system is doing and and test it more effectively afterwards right those are some of the unlocks that we're seeing with Gen as it applies to this particular use case uh Aon do you want to maybe talk through how we have been using this yeah so the big unlock is being able to take a lot of that manual labor for subject matter experts within different areas of application modernization process and be able to codify what they do within workflows in a multi-agent orchestrated approach so if you think about that that labor that was having to uh read code and be able to understand it and document it in a separate set of Labor to take that document ation to be able to code it another set of Labor to be able to understand the data aspects it's being able to orchestrate that through cognitive agents operational agents decision-based agents and critical thinking type reasoning agents as well and that orchestrated approach is where the most significant gains for the modernization process can actually come and some of the kind of the the so what of using this type of approach uh is on the right hand side here which is at minimal in increasing the the modern modernization process by 40 to 50% and reducing the cost by at least 30 to 40% so if you think about okay now how does that break down even further what are those agents you know actually doing so if you think about a lot of the the use of gen today you may take a piece of code and and copy it into uh a prompt for an llm to actually perform a transformation and what you get may may be fairly accurate you know how does that all tie together what we found is that there's not a magic button that you can press that just says okay convert this Legacy system is that being able to uh tie in observability data and code and knowledge from subject matter experts and to be able to to reverse engineer at into an intermediate State an intermediate state that describes the existing system from a abstract level from a pseudo perspective that's not actual code implementation allows for developers product owners product managers and Architects to look at the system at a higher level to decide should we continue doing it that way should we modify should we add new features should we remove some capabilities and then once that is shaped with a human that's actually performing that analysis then use that to be able to generate the target State system where the last mile of human in the loop actually occurs so breaking that down a bit more is that what type of data is is used to be able to perform that analysis so as Leandro said it's not just code code observability data any documentation that may or may not exist business process and how the business process interacts with a particular uh uh Legacy system and then tying that together through AI synthesis with subject matter experts to complete the picture of okay this is really what the system actually does and that's often times a mystery you know some systems are 20 or 30 years old people have moved on and there's a lot of Niche understanding that's just very difficult to be able to figure out so just being able to document is incredibly critical once that documentation exists that can then be used to be able to rationalize different systems many Enterprises have duplicate systems they may have uh this instance of this system and this instance of the system but they're configured differently they're for slightly different cases but there's maybe an 80 to 90% overlap and some systems there may even nine or 10 different instances so being able to rationalize what those systems are doing at a service level taking that to generate the lowest level of technical specification which includes how does this system fit into the overall business what's the the pseudo code what are the The Logical flow what's the data that's shaping it and most importantly the test cases how do you know that a new modernized system is actually going to work so you have to have those test cases a part of that's specification once you have all that that is then used to generate the target State system so not translating line per line of code from whatever it was before to the new but instead reverse engineering it to an intermediate form and then generating the new Target state so maybe just uh one thing to add is it's this is definitely more than a tool and and and as much as we would have liked for a magic button to exist that's not the case right and honestly that's not what most Enterprises need so this is as much about the approach and methodology that you do it and creating that learning capability within the Enterprise as is as it is about the several tools that are going to come in to support it now it is anchored on real Innovation and breakthroughs that are enabled through gen and those uh breakthroughs are around the the application modernization life cycle so a lot upfront in terms of reverse engineering those business domains the the business Logic the data the data structure the data relationships all of that through that the point of reverse engineering and creating the documentation and the pseudo code uh and and and the technical design which is where the human in the loop really comes in to be able to validate change it improve it right and and act on it in a way that there is there is an AB instruction layer where you can work through it and then finally on the last stage to actually create the source code not just the code itself in a modern language but also the instantiation of that code in a way that that can be managed in adap sack Ops Type of Way in a way that you are uh uh deploying using infrastructure as code again back to the point of this being a way of modernizing to the cloud or even modernizing to perhaps a software as a service type of solution right but really not that line by line trans translation but but really thinking through how do I create a modern application out of it and and we talk about the the 20 non-trivial engineering cases right or challenge that that that we feel like they have been breakthroughs and era maybe you can highlight a couple of them and bring this to life yeah some pretty exciting uh kind of breakthroughs here are if you think about highly integrated monolithic systems where let's say you have you know 10,000 functions across the system and each function in turn calls 2,000 functions per so it's this massive tily integrated mesh so we've actually proven that that's possible using generative AI to be able to reverse engineer that system to able to first turn that into a hierarchy of a call tree and then be able to use similarity scoring to be able to understand which parts of the call trees are actually similar to another to able to start abstracting those out into reusable components to start forming the basis of microservices out of that monolith now we all know that that's possible to do manually but having the benefit of large language models like Gemini and others to be able to do that analysis that is very rote and tedious to perform being able to automate that at a very high speed actually allows for that mesh of code to start being pulled apart in that way uh another one is a cross interface bounded context synthesis what that means is let's say that you have uh a call that comes in from HTTP that then goes to a message CU and then it goes into uh a backend processing system for procedural logic then it goes to a database and then it goes to a database stored procedure so all of that's a part of one bounded context but how do you take each one of those code bases each one of those separate portions of the overall value chain for that type of transaction be able to understand it holistically and then be able to document it and then be able to generate that in a much more simplified form potentially eliminating some of the stord procedures understanding the data so we've we've proven that that's possible and the the last is on the data side you know we we find that in a lot of large Enterprises that the data models that mature over 20 or 30 years can become incredibly challenging to understand a lot of duplicative data data that's misused or is not marked or tagged properly categorized so being able to take let's say thousands or tens of thousands of tables with hundreds of thousands of fields being able to look at call patterns being able to look at observability data to figure out what really should the right Enterprise data model exist for the business be able to suggest that and then and being able to suggest that in an automated way and to be able to automate the mapping of those fields and then to automate the Transformations that exist the existing ETL that might exist within the Enterprise into that model again being able to use gen of AI to significantly accelerate that process so these are some of the come of some of the individual breakthroughs that we've been really excited to experience so uh we're going to bring this to life in a demonstration here so if you think about some of the most challenging Legacy systems uh a lot of times they're mainframes I I think some of the market estimates is that 50 to 60% of the planet still operates off of mainframes so they still are alive and well in a lot of large Enterprises and so uh that was one of the first use cases that we said let's go take this approach and actually apply it for Mainframe transformation so in this demonstration we've taken some open source Cobalt code and we'll go through and really provide an example of what this approach looks like so in an integrated development environment you know first we're going to see all the Cobalt code and BMS maps and JCL and we can actually start seeing a dashboard now we're going to start taking a look at what does one particular code file look like well this is kind of the cobal code and it's got a lot of the setup with copy books but we're going to get to some really meaty nested if statements that may be difficult to be able to understand and here again using the large language model to be able to synthesize that into documentation here's a highlevel business overview this is going to process credit transactions in a badge process on a daily basis and here's the logical flow of what that does now the the product manager may look at this and say well we want to add some new air logging because we want to be able to get some more data back to be able to advise what we do so we're going to actually modify the overview we're to modify the requirements for what the system should do we're going to add that here and then from there start generating human readable test cases which are then turn to code so these test cases actually prove that that system is going to work and now you can actually see from the test cases from the documentation generating the target state code so here you have the core application logic where we've converted from index flat VSM files to SQL relational database data manipulation you see the application code where it's actually uh uh um API endpoints that are actually put in for the application code and the the data models that are going to exist across all the programs that exist across the module and then being able to see that manifest and be able to walk through it now what you didn't see there was a developer typing code that then suggests something else to write what you saw was a holistic view of the whole system where the developer was involved in every step of the way but the work that the developer had to do was significantly reduced to be able to modernize it to a Target State and this example was Java but being able to Target other languages like python or JavaScript simply a matter of changing some of the prompts to be able to do so right so while this is a su obviously in early stage it's a technology that's completely outside of the lab already so we have been working with some of our clients on some of their trickiest uh Legacy challenge uh and and and and and seeing Real Results in the order of the improvements that Aon was talking about at the beginning so Aon will walk us through uh a case example with one of the iminent uh US Banks and how they're using this type of methodology to uh to modernize one of their core systems and and use that then as the the MVP to scaled that across other areas within the Enterprise yeah so this case was uh super exciting because it was such a difficult system that the client had been attempting to modernize it several times uh over the course of several years and just wasn't able to uh so when we started working with them they thought this was a great use case to start with so this include both uh online transaction processing through kicks uh green screens as well as batch processes for being able to compute a lot of data there's a lot of realtime data uh that's also involved uh to be able to process and here you can actually see the the detailed architecture for the components as they are produced in a modern uh Java form of all the different components and how they're working together you actually see an angular user interface that was uh automatically created to be able to talk to API endpoints uh based off of the kicks transactions being able to interact with the batch processes so this is kind of bringing this to life of what it actually would look like for uh an actual uh Mainframe application transformation to a more modern language like Java now one of the big questions uh that we get is okay you know this this type of of you know language translation has been around for a while what does the code look like you know for for some of those who may gone through this may have heard the term uh jobal uh which is Java but it just really feels and looks a lot like Cobalt so how do you really judge whether the code that's produced is really going to be you know good maintainable code so there's a a Julia framework that's used to be able to to measure and Benchmark the the Cod production from geni but what we find in addition to that is just plain old AB testing with subject matter expert developers to actually look at if I were going to do this myself versus what comes out of a large language model how good is it so here you can actually see scoring uh that came directly from the client was this wasn't us this was actually the client scoring on uh human readability maintainability correctness accuracy across the code uh being able to use some of the more modern coding standards that are actually used that uh one of their actual developers would so it kind of brings it to life as far as what you're now uh going to actually maintain through this type of system and last you know this ties back up to uh really the beginning is what's the the the so what you know what's the the value in being able to do this so uh being able to reduce the cost of technology modernization is really the ultimate goal we all know that there's a lot of of Legacy technology or technical debt that may exist within our corporations and our Enterprises but we've never been able to make the business case to actually modernize it when we look at what the cost associated with modernizing it the costs are through the roof and they're very expensive to be able to have a lot of that manual labor so you can start to see here that this is some of the first early data around reducing the cost of modernizing uh these types of systems powered by gen and in this case this was sufficient to change that tricky business case that we talked up front uh and make it more clearly Roi positive right especially as you take into account back to my point on J for cloud and Cloud for J if you take into account that once you modernize this application now you're also able to more easily building new features that for example are using gen for agents and whatnot like we've seen on the keynote earlier today so once you start accounting for additional upside uh from from getting into a modern system as well as a much uh reduced cost to get there all of a sudden some of the modernization case that didn't make sense before start making sense now right so that's one point I think the other here is that uh we see the Gen assisted engineering as way uh as as as the next wave of significant transformation in terms of software development right if we think about just some of the recent Innovations from how we're using agil to kind of break down development Cycles from a waterfall to a more uh uh iterative uh in interactive way with the business for example uh how we've used public Cloud to automate C CD pipelines and and and and uh an automate provisioning of applications scaling up and down and whatnot how we have uh how that then the combination of those two things have enabled us to uh Institute that sack Ops uh uh methods within our development teams and make not just development but the uh operate uh the operations as well as the maintenance of this those applications much simpler we see gen now coming on top of all of those Innovations so if you look at it as a methodology as as as an operating model transformation more so than a tool that's going to assist an individual developer to write an individual file uh this becomes truly transformative right and that's where that that is what we're seeing uh for example on the on the case that Aon just walked you through is the power of doing all of that in a combined way right so uh if we go to the next page or do you want to add anything here yeah I think uh when I recall one of my favorite conversations with with a CIO to to Leandra point about this being really more than just tooling uh that tooling is going to you know save the software development process you we used to develop software without agile we discovered agile and now we can't really Envision developing without agile and then we used to develop without Dev secops and then we discovered Dev seov so I think that that the use of gen as a part of the software development process is going to become quite prominent and as one CIO said it that he said I don't want one tool to be able to solve one problem I have a hundred problems I need to be the ability to actually solve this across my entire software engineering process and all my software development capabilities and uh the developers that exist so I think that's the trend of where we're going here now like I said this is already outside of the the lab and the timing is now uh so our recommendation is that obviously the the the the use case the problem the specific challenges are going to be unique to each Enterprise right so so the first thing that we encourage you all to do and we've been encouraging our clients to do is to go back to those modernization use case those thorny issues that you know you have and you've had for a while that just didn't quite make the cut in the past from a cost benefit standpoint and let's take a fresher look at that and now assuming again additional upside and assuming a more streamlined way to go about it like do some of those at least to start making more sense once you have that and you really understand that there is value right and and we start certain about that that there is also value on the business side not just on the technology side because this will ultimately be a change management challenge right once you validate that then the next step is to create a PC or even better an MVP so pick one of those or a subset of them uh and and and and test it and test it not just to test the tools or to validate that it can work from your source code to to a more modern source code but tested so that you can actually develop your own methodology your own approach on how you're going to do that within the Enterprise and ultimately test and learn and stand up the factory that's going to go through this process going forward right that's really what that uh that PC or the MVP sta uh should achieve and then from there it's about scaling right scaling to other domains uh scaling to other technolog that you have uh and then just sort of accelerating ad option we've seen this model where you know the initial team that works through it can then be split and helping in other areas and all of a sudden uh as you improve your your own efficiency on doing this obviously as the technology continues to M mature as we've been seeing right so rapidly more and more of those business case that didn't make sense before will start making sense now right so if you get into this journey it becomes a a a bit of a Snowball Effect right and and as you get better as the technology get gets better more and more can be done with it so again I think the time to start is [Music] now