|
It really depends on what your ultimate goals are. Many people have written about the various methods of application modernization, and each has its place. Replacing, refacing and rewriting are the big three. The pros and cons of replacing are pretty straightforward; if you can find an off-the-shelf package that meets your needs with no disruption to your core business, then it's a great solution, if not, you're in a world of hurt.Scott Klement wrote:
The notion of making a 5250 program into a web service
is something I'm not familiar with, and definitely sounds
like a treacherous slope!
A treacherous slope? How about quicksand? May look solid at a cursory glance. Before you know it, you're up to your neck in goo.
5250 and Web-service sound like contradictory terms when used in the same sentence. One designed to respond to discrete requests such as converting degrees centigrade to fahrenheit; the other for controlling complex workflows.This is where rewriting comes into play. You have to think a little outside the box on this. The ultimate goal of rewriting (the better term is probably "re-engineering") is to do exactly what you're talking about: change the focus from a server/client view where the host controls the screen and the user responds to forms to a client/server focus where the client makes a discrete request and the server process it, returning success or failure.
5250 display files traditionally contain 4 - 400 record formats and one 5250 program may call other 5250 programs in a chain of programs that open their own dislay files.That's the challenge: to somehow extract the business rules out of a half dozen programs, each of which contains multiple screens. It's hard enough to do on a simple master file maintenance program, much less a complex order entry screen. The problem is that you have to spend a lot of resources re-engineering your programs just to separate interface code and business logic, not to mention testing the heck out of it, and at the end of the day, you have basically the same process. Yeah, that's fun to justify to upper management.
5250 and Web services? We're talking about different paradigms. Unless of course, one considers HATS and Webfaced applications as "web services".And this is where the value-add comes in: you script a typical workflow, such as adding an order. You define the *entire* message - all the data that goes into the order, all the data that comes out, including errors - and you create a document for each direction. A request, if you will, and a response. Then you design an adapter object which can take the request document and then walk through each of the screens in the workflow, plugging data elements from the document into the screens. It retrieves the responses and then creates a response document.
Suppose we take a product like Zend 5250 bridge. After a connection is established, 5250 screens are exposed as arrays of fields [including row & column numbers, data types, display attributes, and conditioning indicators]. How is that data useful except to emulate 5250 screens with a lot of extra overhead?
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.