In my previous article, Thinking of Migrating During a Pandemic?, I wrote about how impressed I was with the different IT initiatives and buzz of activity that increased from the pandemic. Situations like this pandemic truly highlight how much we all take technology for granted, and how interwoven our lives have become. Actually, this dependence reminds me of a very hot business topic from a college course: globalization. The most common usage of the word refers to the fact that we (basically everyone, except those independently-sustained scientists working in Antarctica…) are all interconnected through international supply chain lines. Whether we like it or not, our countries, economies, and supply chains are inextricably interconnected, rely on one another, and are growing increasingly more interconnected.
HPE NonStop Servers
HPE NonStop Servers are an exemplification of globalization. First, the server was released by Tandem, then Compaq, then HP, and now, the product is in HPE’s hands, and is used across the globe. Take a look at any HPE NonStop Server implementation. It is typical for more than just HPE to be involved at any given time, including but not limited to: contractors, consultants, IT personnel, and third-party vendors.
Have social distancing, mask mandates, and pandemic-related disruptions been enough change for you? How about an ice storm that takes out most of your state’s power grid, leaving 4.5 million people without power or water? This past year and even parts of this year have been particularly difficult for folks already trying to adapt to the pandemic.
That being said, the COVID-19 pandemic (along with other recent disastrous events), has opened the public’s eyes to how quickly everyday life can be negatively affected. Contingency, backup, and disaster recovery planning have been brought back to the forefront of IT’s concerns. Let us examine how this concern inspired one company to improve its IT infrastructure, turning a challenging situation into an advantageous one.
A Major Distributor Modernizes its Application with Zero Downtime
Headquartered in the midwest, this multibillion-dollar company has 5,000 employees. Its sales associates service a customer base primarily comprised of original equipment manufacturers (OEM) and maintenance, repair, and operations (MRO) companies representing virtually every industry. These associates answer customer questions, help with product selection, monitor inventory, accept orders, and monitor order status. They depend on the hard-working HPE NonStop order-processing system.
Over the years, the application grew in functionality and complexity as the business expanded. The application comprised hundreds of screens, batch programs, and Pathway Servers, which grew to fit evolving customer needs. It was difficult to find employees familiar with the breadth of processing within each subsystem, let alone the entire application. As a matter of fact, one of the initial steps the company took was to fully document the existing application’s functionality so that it would be easier to understand how to interface with it in the future.
Three Million Products: Electric Motors to Hydraulic Equipment to Pneumatic Tools
Selling three million products from over 2,000 manufacturers, the parts distributor operates six major distribution centers and over 400 sales offices throughout the United States, Canada, Mexico, and Puerto Rico. The distributor and its systems sell products ranging from bearings to electric motors to equipment for hydraulic and pneumatic power applications. In areas such as customized fluid power applications, the distributor also provides mechanical and fabricated rubber shop services as well as engineering, design, and systems integration.
The Legacy HPE NonStop Order-processing System
The distributor’s original NonStop order-processing application was siloed with no information interchange or connection to the distributor’s other systems. The application was feature-rich and consequently very complex. It required a steep learning curve approaching two years for a sales associate to become fully proficient and independent. The use of “action codes” was at the heart of its complexity. Associates could enter any one of several hundreds of action-codes in green screen fields, but they had to remember which codes were meant for which fields.
Application Services Provided
The application provided numerous services, namely:
- Inventory management
- Parts searching
- Other sales associate operated functions
- Taking orders
- Properly processing orders
- Other functions to answer numerous inbound customer queries
However, associates that wanted information from any other system needed to be trained and skilled in using that system in order to navigate unwieldy green screens.
The order-processing system was a homegrown application built 25-years-ago and tailored to satisfy the company’s needs with the legacy technology of that time. Since the system was vital to the company’s success, 24/7 availability was of paramount importance. For this reason, the distributor originally chose a Tandem (now NonStop) Server to provide continuous uptime.
The application was written in COBOL and ran under the Pathway transaction monitor using the SQL/MP database (Figure 1). It handled all transaction and query processing for the sales associates. The company reports that it experienced virtually no downtime in the first 15 years of the original system’s operation.
The legacy green screen system was rapidly losing its ability to keep pace with expanding business needs. Green screen dumb terminals connected to the central system via Telnet over 8 KB and 16 KB lease lines and were used by sales associates.
The Pressures for Modernization
However, the rest of the enterprise was not standing still. New development proceeded on other systems. Early uses of Microsoft’s ASP/IIS technology morphed into the use of Java on Linux. EDI and XML were adopted for e-commerce. Newer systems used PCs and Windows environments instead of dumb terminals. But the distributor’s management was not an active participant in these activities. The NonStop IT development and operations staffs were singly focused – their only job was to keep both NonStop Servers up and running.
Rapid Growth and Acquisitions Lead to System Proliferation
To complicate matters, the distributor was rapidly growing by acquiring dozens of companies. In some cases, the order-processing activities of a newly-acquired company were moved to the NonStop system. In other cases, the systems of an acquired company were left up and running. As a consequence, the number of different systems proliferated. Name a system, environment, and database combination, and there was at least one instance of it running in the datacenter.
Increased Demand for Modernization
The growing heterogeneity of the distributor’s IT operations, combined with several other factors, significantly increased the demand for this modernization project.
- Many of the sales associates were baby boomers and were expected to retire over the next few years.
- With the long learning curve for the system, replacing them was going to be an increasingly time-consuming and costly problem.
- The line of products represented by the company was rapidly expanding.
- At its inception, the distributor was selling only bearings.
- Today, it sells millions of products from thousands of manufacturers.
- The complexity of the products was increasing.
- Electric motors and fluid power components are far more complicated than bearings.
- Customers were becoming more self-educated.
- They could learn a great deal about a product from a manufacturer’s website prior to contacting the distributor.
- The speed of the business was increasing.
- If a sales associate had to return a customer call with a product query answer, that customer might shop elsewhere before the query was answered.
- An opportunity that required a callback was a lost opportunity.
- Rapidly accessing the information to satisfy a customer was complicated, and was slowed by having to log on to multiple systems to find the answer.
- Sales associates had to be familiar with a multitude of other systems.
- New hires would already understand Windows-based GUI applications, so could quickly learn in that environment, rather than in a green screen character-based environment.
It was time to upgrade the system with modern technology.
The Modernization Project
In order to address all of these challenges, the company would have to either develop a new system or completely rebuild the current NonStop system. This choice was quickly resolved because the company had become dependent upon the high (even extreme) availability of the NonStop system. Therefore, it was decided that the NonStop Server would continue to be the platform of choice for the new system.
The Attempted “Big-bang” Migration
However, years ago, the distributor had made a major upgrade to its NonStop order-processing system. The upgrade required a “big-bang” cutover, one in which the old system was shut down and the new system took over all processing. The system was cut over on a weekend with no way to fall back if there were problems. The system ran poorly for several months until all of the bugs could be corrected.
The distributor mandated that this experience was not to be repeated. The company operations were now 24/7, and there was no time window in which to take down the system for a cutover. The modernized system would have to be phased in over a period of time without having any effect on the users.
Since legacy development was lengthy and costly, the company did not want to develop an entirely new order-processing system for the NonStop environment. The NonStop SQL database would remain the database of record. The enhanced system would be built around this proven core. In other words, the system itself would not change – only the “face” that it presented to the outside world would change.
Modernized Order-processing with an SOA (Service-oriented Architecture)
The development team turned to today’s service-oriented architecture (SOA), which facilitates the encapsulation of a legacy system into a framework that provides modern-day access to the legacy services. With SOA, the functions provided by a legacy system can be exposed as services to other applications that see the functions only as interfaces. There is no need for external applications to be aware of the software structure providing these services. In fact, the underlying legacy functions can continue to be enhanced, leading only to extensions, if any, to their service interfaces.
Major System Extensions and Underlying Infrastructure Improvements
- Users had to see the system through the commonly accepted and understood Windows GUI environment.
- Therefore, the green screen terminals had to be replaced with PCs communicating over broadband communication links, and outdated character-oriented screen presentation needed to be replaced with windowed GUI functions.
- Related information contained on multiple green screens had to be consolidated into single windows to improve efficiency.
- Access to key information held on other systems, such as data warehouses and electronic catalogs, had to be transparent to the associates.
- Associates no longer needed to understand other systems in order to look up information required for sales.
- Query and search functions had to be significantly enhanced to improve customer service.
Modernized System Architecture
As shown in Figure 2, the new system encapsulates the relatively unscathed NonStop order-processing system at its core.
Wrapped around the legacy core are three important subsystems:
- the clients,
- the infrastructure to expose the core functions of the NonStop system,
- and a new SQL Server query system.
From 20 Green Screens to One GUI
The green screen dumb terminals were replaced with PC clients running in the Windows environment. The development team achieved a tremendous consolidation of information that significantly increased the efficiency of the sales associates. In some cases, 20 green screens were consolidated into one GUI window. Multiple windows can be displayed at one time. Where appropriate, graphics were added to show products and CAD drawings. Scroll bars replaced screen paging.
The migration to a SOA replaced green screens with:
- modern Windows clients,
- separated transaction-processing functions from query activity,
- integrated diverse systems within the enterprise,
- and greatly expanded the system’s ease of use without having to take any application offline.
The Eclipse framework is used to develop client-side software. For the modernized functions, Eclipse services access the legacy order-processing functions via Java business services running on an IBM WebSphere application server (more about this later).
A JPath plug-in for Eclipse, delivered by Comforte GmbH, provides access over Telnet from the client to the legacy requesters in the order-processing system. It also allows users to move data between green screen images and Windows GUI screens. Associates can maximize their use of the features of the modernized system while continuing to access the green screen functions of the application (as if they were using their old dumb terminals).
Low-level COBOL Services
In order to expose the functions provided by the legacy NonStop Pathway Servers, the development team wrote a series of low-level COBOL services that access these servers and the SQL/MP database. These COBOL services, resident on the NonStop Server, not only provide an external interface to the Pathway Servers and the SQL/MP database, but also connect to many external systems. These services provide consolidated information to the sales associates, enabling efficient customer service.
Java Business Services
A set of Java business services running on redundant J2EE/Linux WebSphere application servers provide the client’s Eclipse services with the modernized order-processing functions. The Eclipse services and the Java business services communicate over a SOAP/HTTPS broadband communication channel. The Java business services access information from the NonStop Server and from other external systems via the COBOL services, written to expose the Pathway Servers, the NonStop SQL/MP database, and the external systems. The Java business services interface with the newly-written COBOL services via the Client Server Link provided by Comforte.
Enhanced Query System
The NonStop operations staff is well-versed in managing the NonStop system for high-volume transaction processing. The SQL/MP database is optimized for transaction processing, and the operations staff is experienced in managing this processing.
Saved Development Costs
The legacy order-processing system provided some level of query capability. However, compared to the extended query functionality required by the modernized system, this capability was relatively primitive. Extending the NonStop system to provide the greatly enhanced query requirements of the modernized system would not only stress the transaction-processing capabilities of the NonStop, but would also tax the capabilities of the NonStop operations staff, since they were not skilled in large database query management. Besides, NonStop development is expensive compared to other-system development, and the additional effort to develop extensive SQL/MP query capabilities would be quite costly.
Separate Query Subsystem Using Other Technology
The distributor decided to implement a separate query subsystem using other technology. The Java business services would still use the NonStop system for all transaction processing, but queries would be routed to the new query subsystem.
A SQL Server running in Windows was the chosen platform for the query server because the distributor had a strong operations staff skilled in large SQL Server query applications, such as data warehousing and business intelligence. However, the problem was how to keep the SQL Server database synchronized with the NonStop database in near-real time so that queries could be accurately answered.
To solve this problem, HPE Shadowbase software was chosen, because it provides near-real-time asynchronous data replication between heterogeneous databases, including NonStop SQL/MP and SQL Server. Any change made to the SQL/MP database is immediately replicated to the SQL Server database.
Skinny Keys vs. Fat Keys
The SQL/MP database schema uses “skinny keys” for optimized transaction processing, but the SQL Server schema is quite different. It uses “fat keys” to provide efficient access paths for searching the database. As data is replicated, HPE Shadowbase software transforms the data read from the SQL/MP database to the format and schema of the SQL Server database. The Java business services access the SQL Server query system using JDBC. Stored procedures in the SQL Server database help maximize the efficiency of database searches.
To eliminate a single point of failure, two identical SQL Server query systems are provided. HPE Shadowbase software replicates SQL/MP changes to both query systems1. During normal operations, the Java business services can distribute the query load between the query servers; if one fails, the other provides the necessary query functions. With this architecture, the NonStop SQL/MP database remains the database of record. The SQL Server databases offload the extensive query and report processing from the NonStop Server.
Zero Downtime Migration
Using HPE Shadowbase Zero Downtime Migration (ZDM), the distributor was able to build and load the SQL Server query and reporting databases, while migrating its sales associates to the modernized system – without impacting the NonStop production application – meaning zero downtime. Once the target databases were loaded, HPE Shadowbase ZDM continued to keep them synchronized as the SQL/MP database was updated.
By turning to today’s SOA technology, the industrial distributor was able to seamlessly modernize its 25-year-old standalone legacy NonStop order-processing application. Sales associates were given the best of both worlds: PCs in a familiar Windows GUI-like environment with the ability to continue using their familiar legacy green screen environment.
Users of this 24/7 system were completely unaware of the migration activity except for the gradual addition of new and modern functionality. Over time, the development staff has added COBOL Servers, Java business services, and enhanced Eclipse services to implement the new services provided by the modernized order-processing system.
The distributor successfully transformed and integrated its legacy application with other systems in the enterprise while keeping its application available 24×7. Query functions were offloaded from the NonStop system onto a separate system that was optimized for reporting functions, by using HPE Shadowbase software to replicate the NonStop SQL/MP database to a SQL Server database.
In the midst of great challenges, NonStop keeps moving forward. It is used internationally and brings people together from very different corners of the globe. It has continued to flourish as countries grow and globalization increases. Our everyday life has become inextricably interwoven with NonStop and technology in general.
This case study is just one example of how a company can take advantage of a harsh situation similar to the pandemic. The disruptions from this past year have tested all of us in many unique ways that we never could have imagined. It has opened the public’s eyes to how quickly things can go wrong and brought contingency, backup, and disaster recovery planning to the forefront of IT’s concerns. Nevertheless, we still hope that this pandemic will end soon, life will normalize, and those who are affected will recover.