Take the High Road to the Web
Author: Jim Mason
IBM's iSeries Developer Roadmap was designed to give customers and partners a path to modernize and extend their existing green-screen applications to the Web. The Roadmap has now taken on a life of its own with new versions coming out and multiple uses. In this article, I help you understand the Roadmap and the technologies IBM is promoting. I also explain Roadmap options, and the steps you need to take to create your own software strategy.
Build The Right Software Strategy For Your Company
Whether large or small, iSeries shops can benefit from having a well-defined software strategy to guide their IT investments in systems, software, and people over time. With technology evolution, many companies now have a primary focus on building a Web software strategy to integrate their business operations and people. A well engineered Web software strategy can improve support for existing business operations, open new business services, lower operating and IT costs, improve the quality and value of applications and deliver better service to customers, vendors, and employees.
Many iSeries shops also face a number of challenges in building a solid Web software strategy. They have to budget the planning costs, upgrade in-house Web software technical skills, find knowledgeable iSeries Web specialists, and identify the best ways to cut costs. Plus, they have to find time to move applications to the Web.
IBM's iSeries Developer Roadmap
IBM's stated goal for the Roadmap (http://www.ibm.com/servers/eserver/iseries/roadmap/index.html ) is defined on the Web site: "Moving from traditional iSeries programming languages (RPG, COBOL, C) to J2EE is a long jump, but does not require a single leap. This chart describes a roadmap - discreet, achievable steps that move developers and applications on the path to an excellently implemented Web future".
Al Zollar, iSeries General Manager, made a few points on IBM's intent for the Roadmap. It's goals are to direct iSeries customers, ISV's, and Business Partners who are moving to the Web. Developers can enter and exit the Roadmap at different places and it shows them the available (IBM) resources.
An overview diagram of the Roadmap is shown in Table 1.
How The Roadmap Can Help Your Web Strategy
The Roadmap focuses on a key challenge for IT: the evolution of software technology is a constant. Every shop has to deal with software evolution, one way or the other. Technology change has both benefits and costs. At it's best, the Roadmap shows one way to implement a Web software strategy. Just the fact that IBM created the Roadmap has generated a lot of healthy interest in planning Web software strategies in iSeries shops.
Questions on the Roadmap
While the Roadmap shows one scenario for moving to a Java Web Strategy, it may not fit many customers needs. For example, COBOL was left out of the first Roadmap. Here are a few questions that have come up.
Why rewrite an application twice?
In many cases, modernizing an application is really rewriting the application. Modernization often involves more than 80% of the cost of a rewrite in development and testing. If the next step for portability is to rewrite the application in Java, why not just do it right the first time? I'm assuming IBM's argument to do this twice is that it's too hard for iSeries developers to learn J2EE and then, save money, by doing this in one step.
Do developers need to become J2EE experts?
In training, my customers want to know how to deliver Java Web applications without the need to become Java and J2EE experts. The Web-based training we do using IBM's WDSC toolset focuses on the QuickWeb Development skills you need to build a variety of Java Web applications for the iSeries quickly. We avoid the Java and J2EE expert approach that's common to many Redbooks or other training courses. With simpler training, the concept of moving to Java Web applications in one step can make sense.
Where do I go to get help in planning a Java Web strategy?
Whether you talk to IBM or another consulting company, make sure you deal with consultants that are experts on iSeries and Java Web technologies. A lot of damage has been done with many customers using "standard" J2EE 'best practices' solutions in iSeries shops. You can build solid, low-cost iSeries Java Web applications that are portable if you know the iSeries as well as J2EE.
Are there affordable solutions to get started?
You don't need to buy WebSphere Portal Server or buy an Enterprise iSeries server to deliver basic Java Web applications quickly. Often, you can put up a no-charge Java Web application server quickly to test applications in house. You can learn to build basic Java Web applications in a few days using IBM's WDSC toolset if your training focuses on the application and not on Java and J2EE details. After you've seen some real success and benefits, you can begin to invest in more expensive IBM Web solutions.
More choices for Web Application strategies
Those iSeries customers moving to the Web can choose other application strategies and Web technologies than the set recommended in the IBM Roadmap. More Java Web options exist than just those listed in the IBM Roadmap. IBM identifies EJB (Enterprise Java Beans) as a key technology for scalable applications, but numerous other Java Web frameworks are available. Some frameworks are open-source like Hibernate. These options provide the same basic services as EJBs with less overhead.
While the IBM Developer Roadmap focuses on a few application strategies,
but many iSeries shops can use it for existing or new applications:
- WebFace - use a tool to create a Web interface to existing iSeries RPG or COBOL 5250 applications. IBM's WebFacing tool is part of the IBM WDSC toolset for the iSeries.
- Modernization - rewrite an application to modularize it based on an ILE service program model using the same RPG or COBOL language
- Conversion - convert the application to another language manually or using a tool (RPG to Java, for example)
- Replacement - replace an existing application with a new one, often a software package
- Migration - move an application from iSeries to another platform (modernization is easy to do if the application is written in Java)
- Rewrite - in many cases, this means rewriting an application in Java from RPG. Often, due to a lack of in-house skills, Java development may be outsourced.
Hosting - hosting your applications with an Application Service Provider has become a growing trend. The ASP provides the application, support and hosting services, which dramatically lowers your in-house IT expenses. Some companies experience a net gain here.
Let's review some of the potential benefits and issues for these strategies in Table 2:
||• Users have immediate Web access
• WebFaced applications can run in Standard edition iSeries servers cutting the cost of a server by 50%
• Very low cost, low risk option
|• Other IBM options like HATS, iSeries Access for Web have high server costs|
• Applications are still expensive to maintain in RPG or COBOL
||• Higher reuse, lower maintenance costs than
||• Improvements may not offset rewrite costs existing application|
||• Application is in Java where development and maintenance costs are lower
• Web access is easier
|• Manual conversions can be costly. Using a tool like ASC's RIO can lower the development and testing costs|
||• Platforms like Linux can offer lower costs than OS/400, especially compared with Enterprise edition
||• If the application is RPG or COBOL, the cost of conversion or rewrite to Java for migration may be high. |
||• Pure Java Web application that runs on any server with low development, maintenance costs
• Open-source tools like StructuredJ can lower rewrite costs by providing simple procedural Java
|• Rewrite costs may be very high with higher testing requirements on rewritten business logic|
• Customers often pay for outsourcing missing opportunity for QuickWeb skills transfer to in-house staff
||• Cuts in-house IT expenses
• May offer better services
|• May not save money over in-house IT costs|
Looking at the different strategies, benefits and issues, it's clear finding the right application strategy for your company requires a real planning process and effort.
Java Web Platform Choices For Your Application
Selecting a platform for an application is a key strategic challenge. J2EE is an open standard architecture that encompasses all types of applications: server, client, and Web-based. As a result, J2EE has become a preferred choice as an enterprise application platform. With J2EE, customers have choices for both Java Web servers and server platforms. IBM promotes the WebSphere server family on the iSeries as an excellent J2EE server platform. In addition, iSeries customers have the freedom to choose other vendors' J2EE servers: BEA WebLogic and open-source Java Web servers like Apache's Tomcat and Jetty.
The open-source servers and Java frameworks have made Java Web applications more affordable for many iSeries customers now. StructuredSoft (www.structuredsoft.com), for instance, provides a complete Java Web development platform and runtime for the iSeries as open-source software. It is designed to cut the time it takes for iSeries developers to learn and build Java Web applications. Other open-source software options that can work with the iSeries are available at Apache Software Foundation (www.apache.org) and SourceForge (www.sourceforge.net).
Having selected a Java Web application server, customers can run them directly on an iSeries server or, if capacity is limited, they easily can run the Java Web application servers on Windows, Linux, or Unix front-end servers.
Tips To Plan Your Own Web Strategy
If this is the first time you are planning a Web strategy, think small. Don't presume to get a complete global, Enterprise Web strategy right the first time. Create a full cycle Web project that is small in scope. The project will go from business requirements through support and maintenance, and you'll learn a lot. Get the outside help you need up front. Too many companies plan everything first, then call in the consultant to build it. Bad idea. Leverage what you already have: an iSeries server, existing applications, data, along with your business and application knowledge. Don't outsource all the thinking to a third party. Make it a team effort: your resources and theirs.
Jim Mason is president of ebt-now (www.ebt-now.com) and training manager at StructuredSoft (www.structuredsoft.com). ebt-now provides iSeries WebSphere Studio training services. StructuredSoft has the StructuredJ Java Web development plug in for WDSC and the open-source StructuredSoft Developer platform for iSeries. Jim's creating a self-study course for RPG programmers that teaches "hands-on" rapid visual development with WDSC for all types of iSeries and e-business applications without the need to become a Java expert. The course will be published by Rochester Initiative. You can reach Jim at firstname.lastname@example.org.