News & Blog

René Wagner

As we enter a new year, it’s only natural to look back on what we accomplished in the past 365 days. Many of those accomplishments centered around explaining what TSRI does in a way that nearly everyone can understand. Software modernization and refactoring solutions are, by their very nature, complex concepts. Teams of specialized engineers are required to successfully complete each project, and even the simplest automated transformations can take months to get all the right pieces put into place.

In this blog, we highlight some of the most informative pieces published in 2021. These materials were designed to help make the automated modernization process easier to understand and navigate from start to finish. We hope you’ll find them useful as you consider your organization’s IT plans and modernization initiatives for the coming year.

 

GETTING READY TO MODERNIZE!

 

Modernizing to the Cloud 
Scott Pickett, TSRI’s Vice President of Product Operations and Service Delivery, conducted a live presentation that discussed how automated modernization can help organizations move their applications to the cloud. The presentation resulted in a complete series of videos, all of which are accessible from the post linked above.

 

Check out this article featuring a downloadable Checklist: Preparing for Cloud Modernization to help you assess your organization’s current assets, including your existing codebase, databases, and other tools that may be installed on your mainframes and other legacy technologies.

 

 

 

 

 

 

MODERNIZE WITH LESS DISRUPTION

One of the major risks of any modernization is the amount of time a system will be taken offline during cutover to the new environment. Any downtime becomes a disruption to the business, whether that means lost revenue or maintaining security of mission-critical systems. This post, 4 Tips for Modernizing with Minimal Business Disruption discusses ways that organizations can mitigate disruption, and also explains how proofs of concepts, step-wise automated migrations, and proper planning play into maintaining continuous uptime.
 

Common Misconceptions About Modernization (And What to Do About Them)
Application modernization is a game changer in any organization. Oftentimes, perceived obstacles, such as prolonged system downtime, get in the way of bringing mission-critical applications to modern programming environments. This article helps to dispel many of those notions.

 

Automated Refactoring: The Critical Component to Achieving a Successful Modernization
When any application gets modernized, the codebase shifts from a legacy language such as COBOL or PL/1 to a modern language such as C# or Java. However, just because the language is up to date doesn’t mean the system will operate more efficiently. That’s why refactoring is so important: this automated, iterative process eliminates dead code and redundancies while streamlining the entire application. It’s truly the key to more secure, robust applications.

Microservices Offer Robustness and Security in Modern Systems
Many, if not most of the clients who modernize their mainframes with TSRI started out with monolithic systems. All functions in the workflow relied upon one another, and if one area went down, the entire system went down. Modern software architecture operates using multiple tiers that interoperate with one another, but aren’t dependent on each other. That means if one area goes down, the entire system doesn’t go down with it. A component of this structure, known as microservices, makes for easier software maintenance and also protects organizations while allowing for faster go-to-market strategies for new applications.

Cloud Migration and Containerization: 3 Steps to Reduce Risk and Ensure Success
An important benefit to automated modernization is how the business logic of the transformed application never changes. Sometimes, particularly when modernizing to the cloud, the legacy application may still require some usage. Rather than keep the mainframe in operation or employing some other inefficient, insecure method, transforming to a containerized modern codebase can keep those application instances separate from the rest of its processes. This method increases security and efficiency while allowing for further system development in modern languages.

As you contemplate modernizing your mainframe or embedded-system applications in the new year, we hope these articles will provide you with the knowledge you need to move forward.

 

TSRI is Here for You

As a leading provider of software modernization services, TSRI enables technology readiness for the cloud and other modern architecture environments. We bring software applications into the future quickly, accurately, and efficiently with low risk and minimal business disruption, accomplishing in months what would otherwise take years.

See Case Studies

Learn About Our Technology

Get Started on your Modernization Journey Today!

No change in business logic.
Reduction in overhead costs. 
Continuous development during and after migration.

These are a few modernization concepts that Scott Pickett, TSRI’s Vice President of Product Operations and Service Delivery, discussed on his recent appearance on Amazon Web Services’ APN TV channel. 

“TSRI allows for an ability to do automated transformation of not only your language, but your application to the cloud environment, allowing you to bring in skilled, modern technology to your legacy implementations, being able to drive down the cost point associated with ongoing operational costs, and being able to deliver new applications, new functionality, new screens, and new capabilities in that modern language,” he said in his talk. 

So what does that mean, exactly? 

In TSRI’s modernization of a major European bank to the cloud, that meant they modernized approximately 80,000 lines of code at 99.7% automation. In other words, only 384 of those lines of code were hand-written. That's big for a project of this size—but it's huge when you're talking about applications with hundreds of thousands or even millions of lines of code!

For any organization, whether in commercial enterprise organizations like the banking client mentioned above, or in government agencies, modernization reduces risk. 

 

“You're able to bring a new skill set, new experts that know Java and know CI and CD tools and apply them to your legacy application that's been modernized,” Scott said. “It literally also allows for the ability to drop tens of thousands, and even hundreds of thousands of dollars, off your monthly costs.” 

 

 

As Scott also noted in his presentation, “we can not only transform code quickly…because there are very, very few manual changes, but it also means that you can migrate to the cloud and then be able to not have any business logic change associated with that migration.” 

Maintaining business logic is a big deal when it comes to systems that measure their age in decades rather than years and the original programmers have long since moved on. 

One other interesting point Scott brought up is how TSRI’s tools have enabled customers to maintain agility and competitive advantage by providing its clients with the modern, cloud-based applications they need—all while reaching back to its legacy DB2 database that supports the applications that have yet to be modernized. 

Throughout the talk, Scott also pointed to how TSRI has adopted a step-wise model, which modernizes small applications or pieces of an application, tests for validity, then pushes into production before the next applications are transformed. Such a methodology allows the client to continue to develop in the legacy language, maintain a common data set, and minimizes business disruption to almost zero. 

 

 

“There’s no big delay. You can continue developing the legacy and we can migrate those legacy applications while the transformations are happening and migrate them into your modern environment,” he said. 

 

Scott also explains the steps of an automated migration in layman’s terms and how a TSRI transformation integrates cleanly into cloud services like AWS using containerization and microservices. 

We of course don’t want to spoil the presentation by giving everything away, so head over to APN TV and watch for yourself to learn about how automated modernization to the cloud will save your organization time, money, and the headaches from continuing to maintain legacy systems. 

 

TSRI is Here for You

As a leading provider of software modernization services, TSRI enables technology readiness for the cloud and other modern architecture environments. We bring software applications into the future quickly, accurately, and efficiently with low risk and minimal business disruption, accomplishing in months what would otherwise take years.

See Case Studies

Learn About Our Technology

Get Started on your Modernization Journey Today!

 
 

Modernization’s hot.

If there’s a single takeaway from TSRI’s experience as a sponsor and exhibitor at AWS re:Invent 2021 in Las Vegas, it’s that enterprises and governments alike have their minds on software modernization. If they haven’t started the process of migrating their mainframes and legacy applications to modern architectures to the cloud, then they will be soon actively moving in that direction.

“Virtually every CIO who has a mainframe application is now looking to migrate,” said Scott Pickett, TSRI’s Vice President of Service Operations and Product Delivery, who attended the conference at the end of November.

“Mainframe modernization was the centerpiece of activity for the conference-goers we interfaced with at AWS re:Invent,” echoed Greg Tadlock, TSRI’s Vice President of Sales. While modernization comes in many different flavors—mainframes can be transformed in multiple ways (replatforming, redevelopment, or refactoring, for example.), software modernization is a niche inside the modernization industry. It’s a niche that TSRI has embraced for over two decades and doubled down on earlier this year through validation and selection as a launch partner of the AWS Mainframe Modernization competency. Mainframe application modernization is clearly a movement that has entered the mainstream. “The validation that we made the right decision to be a launch partner with AWS on their Mainframe Modernization competency was confirmed at the re:Invent conference,” Tadlock said.

René Wagner, left, and Scott Pickett at the TSRI booth
René Wagner, left, and Scott Pickett at the TSRI booth

What TSRI Learned

As a company, TSRI has mainly focused on migrating legacy systems to modern languages and architectures, whether on-premises or on the cloud. One thing that surprised the on-site team at re:Invent were the questions about round-tripping. In essence, a round trip is a refactoring of applications originally written in software languages that most modernizations currently target, Java or C#. Both languages have been in use for two decades (or more) themselves, and the technology landscape has changed significantly during that time.

“They came to us specifically because they saw refactoring and the need to take their older Java or C# apps and get them refactored to targeted cloud services, microservices, and containers,” said Kory Caze, TSRI’s Lead Account Executive. It’s a service TSRI has begun to offer, and will certainly become a focus area in the coming year.

The refactoring or transformation of nearly any legacy language to modern languages is certainly one the core values TSRI offers to the modernization market. The capability to modernize more than standard IBM COBOL applications can be useful for, say, an airline that needs to modernize their FORTRAN applications—an opportunity that actually presented itself at the conference this year.

“There are so many software languages and technologies out there, that you can't have a one-size-fits-all solution for,” Kory said. In fact, TSRI’s Director of Business Development, René Wagner, had three different inquiries about doing a transformation from MUMPS, a relatively obscure mainframe language originally developed for healthcare operations—all within 10 minutes of each other! “It's like the most random language,” said René.

 

The Necessity of AWS Cloud Migration

Knowing that several companies have joined AWS’s Mainframe Modernization competency is reassuring to smaller companies like TSRI. They have a significant role to play in bringing major corporations and public sector agencies to the cloud quickly and efficiently, according to René.

“If you went over to the modernization area [at re:Invent] and you asked Amazon, ‘Who do you use to transform your systems to modernize the mainframe?’” René said, “their answer was, ‘Oh, we have an ecosystem of partners that we utilize to get this work done.’”

Everyone on the TSRI team saw live, in action, that modernization will be important over the next few years. Migration to the cloud, they all said, is not a matter of if, but when.

“That was kind of the feeling that I got,” René said. “Modernization is happening, and these people have bled enough on what they currently have.”

 

TSRI's re:Invent booth, including a few collectibles.
TSRI's re:Invent booth, including a few collectibles.

The Future of Cloud

While TSRI has begun to focus more of its efforts on cloud migrations, with AWS as a leading platform, the re:Invent conference opened the company’s eyes to plenty of opportunities that the company’s leadership might not have considered even a year or two ago. Being on the floor as a first-time sponsor and having the ability to demonstrate what the company can do, through Application Blueprint® demonstrations, or walking booth visitors through case studies, has opened a lot of doors for the TSRI team.

“The AWS mainframe migration announcement validates the tools, capabilities, and shift that TSRI has undergone, as well as in the industry,” said Scott Pickett, TSRI’s Vice President of Service Operations and Product Delivery.

Next year should be even more interesting.

If you were unable attend AWS re:Invent 2021, you can still access the materials TSRI shared that show what we can do to help your organization modernize to the AWS cloud. Download this information to get started!

TSRI COBOL to Java for AWS case study  

Case Study: Modernizing a Critical ILS-S U.S. Air Force System for AWS

   

TSRI’s approach to modernizing mainframe technology for AWS

 

Checklist: Preparing for Cloud Modernization

 

TSRI is Here for You

As a leading provider of software modernization services, TSRI enables technology readiness for the cloud and other modern architecture environments. We bring software applications into the future quickly, accurately, and efficiently with low risk and minimal business disruption, accomplishing in months what would otherwise take years.

See Case Studies

Learn About Our Technology

Get Started on your Modernization Journey Today!

 
 

Downtime, lack of agility, and vendor lock may keep organizations from modernizing their aging legacy applications, but plenty of other roadblocks, whether technical or psychological, can also stand in the way from an organization from undertaking a high-stakes modernization effort. For example:

  • One TSRI defense client had been using the same COBOL mainframe applications for nearly 50 years. The agency expected that migrating away from this mission-critical system would require downtime that could have led to data loss, mission interruptions, and catastrophic security failures.
     
  • Another client, a large European bank, used mainframe applications that could have served them well for another decade or longer. However, upstart digital competitors were running circles around this financial powerhouse. They needed more agility.
     
  • Another defense client wanted to migrate its applications to Amazon Web Services but worried about limited options. Their mainframe used a proprietary architecture and applications, and the agency was locked into long-term contracts that would have prevented them from undergoing a transformation. This agency needed assurances a transformation could be done—and done properly.

 

 

Understanding and Overcoming the Misconceptions and Fears


If you’re a change maker in your organization — whether on the business or IT side — you probably see the need to modernize your applications. Throughout our 26 years of modernizing critical applications, we have found that many perceived obstacles are actually misconceptions, fears, uncertainties, or doubts that arise due to a lack of information.

Here are the most common misconceptions and obstacles, and how we help our clients get around them:

 

Obstacle 1: “It Will Cost Too Much!”
Cost almost always rises to the top of the list. From an OpEx perspective, once a modernized system goes into production, your organization can achieve savings quickly and dramatically. One client reduced its IT operations costs from over $1 million to tens of thousands of dollars—per month. While not every transformation will yield remarkable savings like that, your organization will recoup its modernization costs quickly.

In addition, because an automated transformation is much less likely to produce the inevitable errors produced by humans—we are, after all, only human—that means far lower instances of cost overruns.

 

Obstacle 2: System Downtime
Many organizations see time to market and system downtime as major concerns. Undertaking an automated modernization will be the fastest, most reliable alternative nearly all the time. As opposed to rewriting all or most of the code in the target language by hand, a fully automated transformation can take months—if not years—off the timeframe to bring the modernized application into production. Such automated modernizations also can give you the option to run your applications in the legacy and modernized environments side by side for testing, and then flip the switch to put the new environment into production with very little, if any, downtime—which means no disruption to the business.

 

Obstacle 3: “If it Ain’t Broke, Don’t Fix it!”
Organizations may also face the dilemma of making change if there isn’t a need to change. Such attitudes can be embedded into an organization’s culture, and convincing top management to commit to large expenditures where much of the beauty lies under the hood can be a heavy lift. However, external issues may force a modernization—oftentimes when it’s too late.

Most enterprise companies and government agencies running mainframes historically had armies of programmers that maintained their systems. As the decades rolled by, however, most of those programmers retired from the workforce while computer science programs shifted to educating on modern, object-oriented languages like C# or Java. As one client discovered for PL/1, a much more obscure mainframe language, the agency that ran the application found only a single person in the entire country capable of supporting the application. That was clearly not a sustainable solution.

Even more challenging, the language or platform itself may have survived past its reasonable lifespan. TSRI has modernized applications originally housed on mainframes built by Wang. The company ceased to exist in the 1990s and its subsequent iterations no longer supported a version of COBOL proprietary to its systems. At that point, modernization wasn’t a luxury—it was a necessity.

 

Obstacle 4: The Knowledge Gap
Finally, when a legacy system has been in service for 40, 50, or even 60 years, the original developers will doubtfully still be a part of the organization. Institutional knowledge can be passed down, but most IT leaders won’t have a clear view of what their systems can do. The transformation engine that takes on an automated modernization can also generate documentation that provides a detailed blueprint of an application today and how it will function in the modern target language. Those insights will help the engineers who maintain the application understand how a modernization can achieve their business goals.

 

Face the Fear and Reap Big Rewards!

Undertaking a drastic change like modernizing an application comes with risks and likely some trepidation, but it also creates opportunities that might never have been possible by continuing to maintain a legacy system. Completion of a successful transformation will not only save your organization money and give you better access to development resources, it will make your organization more agile and provide you with modern tools to better serve your end users.

 

TSRI is Here for You

As a leading provider of software modernization services, TSRI enables technology readiness for the cloud and other modern architecture environments. We bring software applications into the future quickly, accurately, and efficiently with low risk and minimal business disruption, accomplishing in months what would otherwise take years.

See Case Studies

Learn About Our Technology

Get Started on your Modernization Journey Today!

Thursday, 28 October 2021 09:26

TSRI at AWS re:Invent 2021!

Join the TSRI team as we sponsor and exhibit at Amazon Web Services’ 10th annual re:Invent conference in Las Vegas!

AWS re:Invent  |  Nov 29. – Dec. 3, 2021  |  Las Vegas, NV  |  Visit TSRI at Booth #730!

 

AWS re:Invent is a learning conference hosted by Amazon Web Services (AWS) for the global cloud computing community. The in-person event features keynote announcements, training and certification opportunities, access to 1,500+ technical sessions, the Expo, after-hours events, and so much more.

The event is ideal for developers and engineers, system administrators, systems architects, IT executives, and technical decision-makers.

Learn More

 

TSRI at re:Invent – Rapid, Low-risk Mainframe Modernization for AWS Deployment


Stop by our booth #730 or schedule a meeting with us at re:Invent!

 

As a vetted, validated, and verified AWS Mainframe Migration Competency partner, TSRI provides rapid, low-risk software modernization for deployment on AWS.

TSRI’s re:Invent team will include our VP of Product Development and Service Delivery, Scott Pickett. Scott has led the TSRI team through dozens of successful modernization projects and will be on-hand to discuss the technical details of TSRI’s modernization solution and to answer questions about how TSRI transforms numerous legacy languages and operates within different existing and target architecture environments.

Our business development team will be available to answer questions about your specific application modernization scenario, provide demonstrations, and share case studies of TSRI’s successful modernization projects spanning government, military, finance, insurance, and many other industries.

Schedule a Meeting

 

 
----
 

TSRI is Here for You

As a leading provider of software modernization services, TSRI enables technology readiness for the cloud and other modern architecture environments. We bring software applications into the future quickly, accurately, and efficiently with low risk and minimal business disruption, accomplishing in months what would otherwise take years.

See Case Studies

Learn About Our Technology

Get started on your modernization journey today!

When you use automation to modernize applications that you’ve been running for years, there should be no functional change between the legacy code you’ve migrated from and the target language you’ve transformed to. That dramatically simplifies testing.

As Scott Pickett explains in the latest episode of our “Migrating Your Mainframe to the Cloud” video series, you can create quick test scripts to confirm that the business logic has stayed exactly the same. From there, knowing that the automated modernization has created that like-for-like codebase in the new target language means that you simply need to confirm that the data baselines you set are in sync and you’re off to the races!

As Scott does note, TSRI’s solution does inject telemetry into the modernization so you will have logs to help with those code and data comparisons, which makes the full testing process that much simpler.

 

 

 

Originally aired live on May 18, 2021.

 

Be sure to view our other videos in this series:

Videos 1 & 2: “Setting Project Scope” and “Setting Up Development Sandboxes”

Video 3: “Selecting Cloud Vendors and Your Target Language”

Video 4: “Using Automation to Quickly and Accurately Move to a Multi-Tier Environment”

Video 5: “Modernizing Using Layered Architectures”

--- 

TSRI is Here for You 

As a leading provider of software modernization services, TSRI enables technology readiness for the cloud and other modern architecture environments. We bring software applications into the future quickly, accurately, and efficiently with low risk and minimal business disruption, accomplishing in months what would otherwise take years. 

See Case Studies 

Learn About Our Technology 

Get Started on Your Modernization Journey Today! 

PL/1 - Life in COBOL's Shadow

When IBM developed the framework for its PL/1 computing language in the 1960s, the committee of business and scientific programmers that developed the parameters for the language could not have foreseen today’s modern technologies of a phone in every pocket and digital access to anyone on the planet via the internet. They also may have hoped for, but likely did not foresee, how a mainframe language and architecture that survived 60 years would still be in use today.

Though PL/1 never reached the level of popularity of its COBOL competitor, it was still used on multiple government, corporate and defense mainframe systems throughout the years. It is, by many accounts, a very stable and reliable language—it even had more features in some areas than COBOL! However, programmers and organizations had little business or technical incentive to adopt the language. Today, having lived for so long in the shadow of COBOL and Fortran, finding programmers with PL/1 experience has become harder each year making it increasingly difficult to maintain any remaining mainframe applications. Those challenges have made PL/1 a desirable candidate to transform into a modern language like C++, C#, or Java.

 

Modernizing PL/1 - Success is in the Details

When it comes to automated modernization and refactoring, a successful outcome lies in the details. For example, TSRI engineers spend a lot of time prior to transforming any code understanding how a step-wise process could allow a critical system to operate continuously without any disruption or data loss. Going step-wise means that some components of the system such as the login function or other application program interfaces can be modernized, tested, and, if necessary, reverted to the original application without any impact on the rest of the application or the end user. Because an automated modernization creates a like-for-like replica of the functionality in the target language—in this case C# in a Windows environment—the successful migration of each step means that subsequent transformations will be easier because the automated transformation engine continues to learn and adjust.

Following the transformation of PL/1 to the modern computing environment, an automated, iterative refactoring process can find redundant, dead, or unused code and remediate while making the entire codebase more efficient. PL/1 was designed to facilitate programming using human-readable logic so automated refactoring can also reduce code overhead significantly. Furthermore, the transformation from the monolithic environment of early mainframe languages to a multi-tier environment separates the programming from the data and the user interface enabling further functional development while preventing system disruption.

PL/1 is not unique in how the architectures that run this legacy language can be modernized but given the age of the language and lack of business or programmer support, undergoing an automated modernization may be the best way to transform PL/1 applications to modern languages and architectures.

-----

TSRI is Here for You

As a leading provider of software modernization services, TSRI enables technology readiness for the cloud and other modern architecture environments. We bring software applications into the future quickly, accurately, and efficiently with low risk and minimal business disruption, accomplishing in months what would otherwise take years.

See Case Studies

Learn About Our Technology

Get started on your modernization journey today!

 

Monday, 13 September 2021 14:14

Video: Modernizing Using Layered Architectures

One huge benefit to an automated modernization is the migration from a monolithic architecture to a multi-tier architecture. The multi-tier, or layered, architecture separates the data layer from the logic layer, and also makes the presentation layer—what the end user sees and interacts with—independent of the other two. In this video segment, Scott Pickett discusses how this modern-day style of architecture allows developers to extend the functionality of an application without affecting the data or behavior of an application. Even more important, however, he explains how a modernized application can continue to refer back to legacy databases when organizations migrate to their target environment in smaller steps rather than committing all at once.

Be sure to view our other videos in this series:

Videos 1 & 2: “Setting Project Scope” and “Setting Up Development Sandboxes”

Video 3: Selecting Cloud Vendors and Your Target Language

Video 4: Using Automation to Quickly and Accurately Move to a Multi-Tier Environment

----

TSRI is Here for You As a leading provider of software modernization services, TSRI enables technology readiness for the cloud and other modern architecture environments. We bring software applications into the future quickly, accurately, and efficiently with low risk and minimal business disruption, accomplishing in months what would otherwise take years.

See Case Studies

Learn About Our Technology

Get started on your modernization journey today!

As Scott notes in this video, the latest in our Modernizing for the Future series for undertaking a cloud modernization, “One of the benefits associated with using an automated technology is that none of it is done by hand.” In this video Scott introduces the idea of automation when it comes to modernization and how taking this avenue will preserve the functionality and logic of the legacy applications. The benefit is that the application will operate exactly the same way it did previously, but with capabilities to expand into a more tiered approach so the application can take advantage of the best the cloud has to offer.

 

Originally aired live on May 18, 2021.

Additionally, having the automated transformation preserve the functionality means once organizations are ready to put the cloud applications into production, the data layer remains consistent so this can be done gradually with very little downtime in the production environments. That minimal business disruption greatly reduces the risk of data loss and technical failures. And from there, automated and semi-automated refactoring can begin to improve the quality and functionality of the application—all in a cloud environment.

 

Be sure to view our other videos in this series:
Videos 1 & 2: “Setting Project Scope” and “Setting Up Development Sandboxes”
Video 3: Selecting Cloud Vendors and Your Target Language

 

As always, TSRI can help answer any questions you may have about modernization, automation, and making sure your systems are ready to deploy in modern computing environments. 

--- 

TSRI is Here for You 

As a leading provider of software modernization services, TSRI enables technology readiness for the cloud and other modern architecture environments. We bring software applications into the future quickly, accurately, and efficiently with low risk and minimal business disruption, accomplishing in months what would otherwise take years. 

See Case Studies 

Learn About Our Technology 

Get Started on Your Modernization Journey Today! 

Using automation to modernize mainframe applications will bring a codebase to today’s common coding standards and architectures. But in many cases, modernization to an application’s functional equivalent isn’t always enough. Organizations can do more to make their modern code more efficient and readable. By building refactoring phases into their modernization projects, organizations can eliminate the Pandora’s box of dead or non-functional code that many developers don’t want to open, especially if it contains elements that just don’t work.

Using TSRI’s automated refactoring engine, remediation was complete in an hour.

What is Refactoring and How is it Used?

Refactoring, by definition, is an iterative process that automatically identifies and remediates pattern-based issues throughout a modernized application’s codebase. For example, unreferenced variables or unnecessary redundant snippets could exist throughout the application. This scan, known as dead/redundant code refactoring, will find repetitions of any of this unusable code to flag, then remove it from the codebase. One of TSRI’s current projects found 25,000 instances of a similar issue that would have required 15 minutes of manual remediation per instance—not including the inevitable introduction of human error that would require further remediation. The number of development hours would take more than a year for a single developer to complete.

Using TSRI’s automated refactoring engine, however, remediation was complete in an hour.

Calling refactoring its own post-modernization phase is, in some ways, misleading. Refactoring typically occurs all the way through an automated mainframe transformation. As an example, in a typical COBOL or PL/1 mainframe modernization, TSRI would refactor the code from a monolithic application to a multi-tier application, with Java or C# handling back-end logic, a relational database layer through a Database Access Object (DAO) layer, and the user interface (screens) modernized in a web-based format. Believe it or not, many legacy applications still run on 3270 green-screens or other terminals, like in the graphic below.

Once the automated modernization of the legacy application is complete, the application has become a functionally equivalent, like-for-like system. However, any deprecated code, functions that may have never worked as planned, or routines that were written but never implemented will still exist. A process written in perhaps 1981—or even 1961—may have taken far more code to execute than a simple microservice could handle today.

Situations like this are where refactoring becomes indispensable.

 

Where to begin?

Before a formal refactoring process can begin, it’s important to understand your goals and objectives, such as performance, quality, cybersecurity, and maintainability. This will typically mean multiple workshops to define which areas of the modernized codebase need attention and the best candidates for refactoring, based upon the defined goals. These refactorings will either be semi-automated (fully automated with some human input) or custom written (based upon feedback from code scanners or subject-matter experts.)

The refactoring workshops can reveal many different candidates for refactoring:

  • Maintainability: By removing or remediating bugs, dead or orphaned code, or any other anomalies the codebase can be reduced by as much as one third while pointing developers in the direction of any bugs in need of remediation.
  •  
  • Readability: Renaming obscure functions or variables for a modern developer to fit within naming conventions that are both understandable and within the context of the code’s functionality.
  •  
  • Security: Third-party tools such as Fortify and CAST can be utilized to find vulnerabilities, but once found they need to be remediated through creation of refactoring rules.
  •  
  • Performance: Adding reusable microservices or RESTful endpoints to connect to other applications in the cloud can greatly improve the efficiency of the application, as can functionality that enables multiple services to run in parallel rather than sequentially.

 

What are the Challenges?

  • Challenge 1: One reason refactoring must be an iterative process is that some functionality can change with each pass. Occasionally, those changes will introduce bugs to the application. However, each automated iteration will go though regression testing, then refactored again to remediate those bugs prior to the application returning to a production environment.
  •  
  • Challenge 2: The legacy architecture itself may pose challenges. On a mainframe, if a COBOL application needs to access data, it will call on the entire database and cycle through until it finds the records it needs. Within a mainframe architecture this can be done quickly. But if a cloud-based application needs to call a single data record out of millions or billions from halfway across the world (on cloud servers), the round trip of checking each record becomes far less efficient—and, in turn, slower. By refactoring the database, the calls can go directly to the relevant records and ignore everything else that exists in the database.
  •  
  • Challenge 3: Not every modernization and refactoring exercise meets an organization’s quality requirements. For example, the codebase for a platform that runs military defense systems is not just complex, it’s mission critical. Armed forces will set a minimum quality standard that any transformation must meet. Oftentimes these standards can only be achieved through refactoring. A third-party tool like SonarQube in conjunction with an automated toolset like TSRI’s JANUS Studio® can be utilized to discover and point to solutions for refactoring to reach and exceed the required quality gate.
  •  

In conclusion, while an automated modernization will quickly and accurately transform legacy mainframe applications to a modern, functionally equivalent, cloud-based or hybrid architecture, refactoring will make the application durable and reliable into the future.

--

TSRI is Here for You

As a leading provider of software modernization services, TSRI enables technology readiness for the cloud and other modern architecture environments. We bring software applications into the future quickly, accurately, and efficiently with low risk and minimal business disruption, accomplishing in months what would otherwise take years.

See Case Studies
Learn About Our Technology
Get started on your modernization journey today!