Displaying items by tag: Refactoring

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!

Published in Education

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. 

Watch Scott’s APN TV appearance 

 

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!

 
 
Published in AWS
Monday, 13 December 2021 15:42

An Eye-Opening Experience at AWS re:Invent 2021

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!

 
 
Published in AWS
Wednesday, 15 September 2021 14:36

Java Refactoring TriGeo Network Security

TriGeo Network Security, Inc. awarded a sole-source contract to TSRI for documentation and Refactoring of TriGeo’s primary product offering. This "Roundtripping" process involves taking in a client's code, applying pattern-based refactorings to change and improve the code without changing the functional equivalency of the application.

  • Customer & Integrator: TriGeo Network Security
  • Source & Target Language: Java Refactoring
  • Lines of Code: 370,000
  • Duration:  6 months
  • Services: Legacy “As-Is” Documentation, Automated Refactoring, Additional Customized Refactoring, Final “To-Be” Documentation

Published in Case-Studies
Wednesday, 15 September 2021 14:32

COBOL to Java J2SE Telos Corporation

The Defense User Registration System (DURS) of the Defense Technical Information Center (DTIC) consisted of a UNISYS 2200 COBOL application running within the DPS form-based presentation system (DPS 1100). DURS required conversion into a Java/J2SE multi-tiered application to support DTIC modernization requirements.

  • Customer & Integrator: Telos Corporation
  • Source & Target Language: COBOL to Java/J2SE
  • Lines of Code: 80,000
  • Duration: 13 months
  • Services: Developed Web-Enabled User Interface, Code Transformation, Automated Refactoring, Automated Re-Architecting, Database Transformation, Transformation Blueprint®

Published in Case-Studies

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!

Published in Education
Friday, 28 May 2021 11:18

Ada to C++ US Navy DSR MFIP

The Navy contracted with Digital Systems Resources (DSR), a division of DEC, to modernize the MFIP, so the Mission Computer Upgrade (MCU) program office contacted the U.S. Office of Naval Research (USONR) to identify a viable, cost-effective modernization solution. The USONR recommended that TSRI employ its architecture-driven JANUS Studio® modernization solution. USONR believed this toolset could be the only resource capable of accomplishing the MFIP modernization within schedule, performance, risk management, and cost constraints.

  • Customer & Integrator: US Navy & DSR
  • Source & Target Language: Ada to C++
  • Duration:  5 months
  • Services: Application Blueprint®, Transformation Blueprint®, Engineering Support, Automated Transformation

Published in Case-Studies
Friday, 30 April 2021 11:38

Ada to Java and C++ - ITT / SENSOR

ITT Corporation awarded a sole-source contract to TSRI for modernization of the COBRA DANE Radar Calibration System (SCRS) of the Ballistic Missile Early Warning System (BMEWS) under the Air Force’s System Engineering & Sustainment Integrator (SENSOR) program.

  • Customer & Integrator: US Air Force/ITT
  • Source & Target Language: Ada to Java/C++
  • Lines of Code: 380,300
  • Duration:  8 months
  • Services: Code Transformation, Automated Refactoring, System Integration, Testing & Implementation Support, Final “To-Be” Documentation

 

Published in Case-Studies
Tuesday, 13 April 2021 12:36

Ada to C++ - US Navy - Modem Control Software

TSRI was engaged to modernize US Navy SATCOM Multi-band Terminal (NMT) Modem Control System (MCS) from Ada to C++. To provide SPAWAR with the best modernization approach, Raytheon selected TSRI to transform the existing MCS Ada code into C++ and to re-factor
the C++ toward the desired target architecture. TSRI's fixed-price "integrator ready" deliverable was selected by Raytheon for its low technical risk,
shortened schedule, and low cost.

  • Customer & Integrator: US Navy & Raytheon
  • Source & Target Language: Ada to C++
  • Lines of Code: 190,000
  • Duration:  5 months
  • Services: Automated Code Transformation, Application Blueprint®, Transformation Blueprint®, Engineering Support, Automated Refactoring

Published in Case-Studies
Tuesday, 15 September 2009 13:54

TSRI Modernizes Banking System

 

"TSRI Generates 4.5 Million Line Transformation Blueprint For Modernization of Major Banking System."

Kirkland, WA. (June 18, 2009) – A large systems integrator has awarded a highly competed contract to The Software Revolution, Inc. (TSRI) to commence modernization of a major financial management system in the banking sector. Under this contract TSRI generated the Transformation Blueprint to document the before and after transformation of 4.500.000 lines of VMS VAX FORTRAN and 200.000 LOC DMS system into Java, and generated the complete UML Design and Architecture for the target ‘To-Be’ systems. Using the Transformation Blueprint as a modernization roadmap, TSRI provided engineering support services to its system integrator to define strategies for custom reengineering specifications and detailed code analyses to support cost estimation and ROI analysis for the overall project.

Greg Tadlock, TSRI’s Vice President, Sales & Marketing said, “The success of TSRI and its system integrator partner during the Definition phase of this modernization project has provided our banking client with an optimal plan for modernizing their core financial systems, a plan that minimizes the cost, schedule and technical risk parameters while delivering the best ROI to the bottom line in the least amount of time. Through the use of the Transformation Blueprints during the planning phase, the client was actually able see how his multi-million line legacy system consisting of multiple languages and databases would be transformed, redesign and reengineered. After yet another success, we trust the IT community recognizes TSRI JANUS Studio®    as the superior solution in the modernization industry, a solution that combines automated modeling, translation, refactoring to reengineer major legacy systems with human guidance but no hand-coding into the highest quality modernized information systems.”

For more information about TSRI, visit our web site or contact:

TSRI
Greg Tadlock
Vice President of Sales
Phone: (425) 284-2770
Fax:     (425) 284-2785
This email address is being protected from spambots. You need JavaScript enabled to view it.

Published in Press
Page 1 of 2