What do you do when a reliable but aging HPE NonStop system that has been the IT backbone of your operations begins to lose its glitter? Your employees are frustrated by the green screens that display only limited amounts of data. They are also overwhelmed by excessive data entry into special-coded fields. To make matters worse, they must simultaneously navigate the intricacies of other applications because they cannot use the existing application to answer customer queries.
It is time to modernize your system, but the question is — how? You consider moving your application to an open platform, but your operations are now 24/7, and you have come to depend upon the unmatched availability provided by HPE NonStop servers. More importantly, 24/7 business operations will not tolerate downtime while you failover the application. In addition, what if the failover fails? Can you fall back on your original architecture?
A major distributor faced this very problem. Its trusted 15-year-old green screen order processing application running on an HPE NonStop server was showing its age. New sales associates required almost two years to become proficient with the complex application. Customer service response time was increasing, and the need to call back a customer with further information was becoming more frequent. In the fast-paced, modern online world, a callback often means a lost sale. The company needed to modernize its application, and it could not tolerate any downtime during the modernizing process.
The solution was to keep the core existing application intact and refresh it while giving it a new personality. Using today’s Service-Oriented Architecture (SOA) technology, it wrapped the existing HPE NonStop application in an outer shell that exposed all of its services to new PC GUI clients without having to rewrite any application code. The sales associates went from many green screens to a single window. They can quickly navigate the system with a modernized GUI, with on-screen graphics representing the products they are selling. To ease the transition to the new application, sales associates can switch back to the familiar green screens in an emulation window.
The distributor also added services, which seamlessly allow sales associates to quickly access other systems such as the company’s online data warehouse, product manuals, and catalogs during customer calls. A powerful query system based on open platforms was developed to answer customer questions immediately. The HPE Shadowbase data replication engine keeps the query database synchronized in real-time with the HPE NonStop SQL/MP order processing database so that the state of every order is instantly available.
By gradually adding modernized features, the distributor provided its sales associates with enhanced functionality over a period of time. If something does not work, they can always revert to their previous green screens on the PC until it could be fixed.
The result was an orderly, staged migration of the distributor’s existing order processing application to a more powerful modernized system with no downtime, netting the distributor the reliability of the HPE NonStop platform with the modernized features and power of the PC GUI client environment, improving the order processing experience for the customer while reducing overall employee sales and service training costs. By using HPE Shadowbase software, the distributor was able to leverage open systems while keeping data synchronized with the NonStop system, without requiring any application downtime during the migration process.
Headquartered in the midwestern U.S., this multibillion-dollar parts distributor 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. In 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.
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 distributor had been running its original green screen order processing system, written in COBOL under Pathway, on an HPE NonStop server for about 15 years. The original NonStop order-processing application was a siloed, standalone system 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, almost two-year learning curve for a sales associate to become fully proficient. This complexity slowed business growth. The use of “action codes” was at the heart of the system’s complexity. Associates would 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.
The application provided numerous services, namely:
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 HPE NonStop) server to provide continuous uptime.
The application was written in COBOL and ran under the Pathway transaction monitor using the HPE NonStop 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.
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 HPE NonStop IT development and operations staff was not an active participant in these activities, and therefore stuck with the existing green screen front end. The NonStop staff was focused on one thing – their job in keeping both NonStop servers up and running.
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 HPE NonStop system. In other cases, the systems of an acquired company were left up and running. Consequently, the number of different systems proliferated. Name a system, environment, and database combination, and there probably was at least one instance of it running in the datacenter.
The growing heterogeneity of the distributor’s IT operations, combined with several other factors, significantly increased the demand for this modernization project.
It was time to upgrade the system with modern technology.
In order to address all of these challenges, the company would have to either develop a new system or completely rebuild the current HPE 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.
However, years ago, the distributor implemented a major upgrade to its HPE NonStop order-processing system. The upgrade required a “big-bang” migration, one in which the old system was shut down and the new system took over all processing. The upgrade did not go smoothly. The system was migrated 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 migration. The modernized system would have to be phased in over a period of time without affecting users.
Since legacy development was lengthy and costly, the company did not want to develop an entirely new order-processing system for the HPE NonStop environment. It wanted to perform little, if any, modification to the core of the modernized system. 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 was presented to the outside world.
The development team turned to today’s service-oriented architecture (SOA), which can yield several benefits. An SOA facilitates the encapsulation of a legacy system into a framework that provides modern-day access to 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.
As shown in Figure 2, the new system encapsulates the relatively unscathed HPE NonStop order-processing system at its core.
Wrapped around the legacy core are three important subsystems:
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. Several features we take for granted were even added for efficiency, such as multiple windows being displayed at one time. Where appropriate, graphics were added to show products and CAD (computer-aided design) drawings. Scroll bars replaced screen paging.
The migration to an SOA replaced green screens with:
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).
In order to expose the functions provided by the legacy HPE NonStop Pathway Servers, the development team wrote a series of low-level COBOL services that access these servers and the HPE NonStop 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.
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 HPE 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.
The HPE NonStop operations staff is well-versed in managing the NonStop system for high-volume transaction processing. The HPE NonStop SQL/MP database is optimized for transaction processing, and the operations staff is experienced in managing this processing.
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 and did not meet the needs of the new front end. Extending the HPE NonStop system to provide the greatly enhanced query requirements of the modernized system would not only stress the transaction-processing capabilities of the NonStop with large amounts of heavily read-intensive query processing but would also tax the capabilities of the NonStop operations staff since they were not skilled in large database query management. The team wanted to leverage the powerful tools available for open-system query development. Besides, NonStop development is expensive compared to other-system development, and the additional effort to develop extensive HPE NonStop SQL/MP query capabilities would be quite costly.
The distributor decided to implement a separate query subsystem using other technology. The Java business services would still use the HPE NonStop system for all transaction processing, but queries would be routed to the new query subsystem. This offloads the query processing workload from the NonStop environment.
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 HPE 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 like-to-like and dislike databases, including HPE NonStop SQL/MP and SQL Server. Any change made to the SQL/MP database is immediately replicated to the SQL Server database.
The HPE NonStop 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 HPE NonStop 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 SQL/MP database remains the database of record. The SQL Server databases offload the extensive query and report processing from the NonStop server.
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 HPE NonStop production application – meaning zero downtime. Once the target databases were loaded, HPE Shadowbase ZDM continued to keep them synchronized as the HPE NonStop 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 HPE 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 if they ever needed or wanted to for any reason.
Users of this 24/7 system were completely unaware of the migration activity except for the gradual addition of new, simplified, 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. It seamlessly modernized its 25-year-old, standalone, original HPE NonStop order processing application using today’s SOA technology. Query functions were offloaded from the HPE NonStop system onto a separate system that was optimized for reporting functions, by using HPE NonStop Shadowbase software to replicate the HPE NonStop SQL/MP database to a SQL Server database. Sales associates were upgraded from cumbersome green screens and dumb terminals to an enhanced point-and-click Windows-based GUI. Most importantly, the changes were made without incurring any application or downtime during the distributor’s 24/7 operations.