The Blessing and Curse of Rejuvenating Legacy Systems
Written By: Predrag Jakovljevic
Published On: September 2005
Every independent software vendor (ISV) finds itself "between a hammer and an anvil" where they have to cater to the needs of both existing and prospective customers. On the one hand, existing customers wish to preserve their current information technology (IT) assets via appetizing "bite-size" application upgrades only, and without major disruptive technology shifts. On the other hand, to win new customers, every ISV has to be able to feature the latest and most modern technologies where rich functionality and rapid implementation tracks. To bridge this gap, many leading vendors have embarked on providing next-generation development platforms and even more comprehensive infrastructure platforms with product evolution rather than revolution in mind. (See SOA-based Applications and Infrastructure—The Next Frontier?). In other words, they allow continual product functionality enhancements, with the ability to create custom extensions rather than ripping out the current system and replacing it with a new one. They also feasibly integrate other applications and complementary products.
This note discusses the situation in general terms, making only passing reference to specific vendor platforms. For details on how several prominent vendors are addressing this problem, look for upcoming articles on the relevant forays of IBM, Intentia, Lawson Software, Infor Global Solutions, LANSA, and other vendors.
Customers who typically want to stay on the IBM eServer iSeries server platform (formerly IBM AS/400), valuing its reliability and high availability due to its clustering capabilities; stability; security; scalability; the price per performance value proposition; and ease of management. However, they also want to look beyond the traditional text character-based, a.k.a. the 5250 "green screen" user interface (UI), and have a more modern, flexible way to use their software by keeping the rich functionality of the software but with increased ease of integration to disparate applications, at least for the reason of collaborating with trading partners.
With enterprise resource planning (ERP) virtually reaching a commodity status, demand for complementary or "bolt-on" extended-ERP functions, such as supply chain management (SCM), customer relationship management (CRM) or product lifecycle management (PLM) has been growing. However, most of these products' providers are developing these for Microsoft Windows and UNIX/Linux systems, rather than for iSeries, and the existing iSeries ERP users typically cannot use them without accepting greater infrastructure complexity and procuring additional IT skills.
Also, the hardware cost to deploy these products on iSeries can still be much greater than for other platforms because the products require higher-performing iSeries models. Moreover, for years, many iSeries' customers have griped and moaned about their ERP vendor's lack of support for their server platform of choice. Vendors often take several years to introduce an integrated language environment (ILE) report program generator (RPG) version of ERP releases (RPG is a programming language developed by IBM in the mid-1960s and is used for developing business applications and especially for generating reports from data. The newest version is still widely used on the iSeries systems). As a rule, ERP releases are always shipped first for counterpart UNIX and Windows platforms. Some users have rightfully questioned their vendors' devotion to iSeries customers, although these customers still comprise a great share of a company's total installed base of often more than few thousand companies.
Java remains a good language for the development of information and communications technology solutions because it can answer the user's needs, and at the same time, fit the industry-accepted, model-view-controller design pattern. The JAWFLOW (Java Workflow Design) framework described by Ludo Dierckx and Wim Van Leuven in an earlier TEC article (see A New Development Framework on iSeries or i5/OS: Architecture), shows how a combination of Java on the client side, integrated language engine for business logic and database access on the server side cannot only provide a graphical user interface (GUI), but can also open the possibility of third-party software integration. A good example is the integration of legacy applications into a new Windows-type environment. This ability allows, for an example, a step-by-step modernization of business applications.
Every modern framework for software development is intrinsically a multi-tier architecture consisting of business logic, presentation logic, and controller logic. Business logic is responsible for database management and its accompanying transactions; presentation logic is used to present data to the user by means of an intuitive interface; and the interactive controller orchestrates the flow between the front- and back-end systems. To give a concrete example, the front-end is a Java 2 Enterprise Edition (J2EE)-compliant graphical client, which can run on any standard workstation or thin-client terminal, while the back-end is an ILE on the iSeries platform.
General User Recommendations
Technology itself does not directly impact profitability; only if it enables smarter business practices will it indirectly improve profitability. Technology can always help to implement new processes and instill some structure and consistency, though. Further, some solutions can also enable novel practices, like design collaboration, customer base trends' profiling, supply chain visibility and problems monitoring, and so on that can be done in new ways and unlock new value. Yet, old software hardly ever dies, and as long as the software is meeting business needs, new technology is not the change driver. However, in the instance when the software does not meet important needs for the business—like providing demand and inventory visibility or problem monitoring over the Internet—that is when old systems need to be enhanced or replaced. At times, old technology may become too costly to operate, and that can drive a replacement strategy, but that occurred far less frequently.
Users of aging platforms, and ISVs may refrain from modernizing because of the uncertainty of the benefits they might realize. However, a recent study from Andrews Consulting Group (http://www.andrewscg.com) conducted among several iSeries-based ISVs and user enterprises, indicates that such companies might be missing out on significant improvement opportunities.
For instance, iSeries applications modernization can enable user companies to reduce business expenses and improve the collaborative flow of information between customers, trading partners, and employees through enhanced integration between core business systems and peripheral applications; high user acceptance of new graphical interfaces; increased user functionality through new possibilities created by the graphical user interface; potential for reduced training and support costs; more flexible development; greater ease in recruiting new developers, etc. On the other hand, vendors can attract more prospective customers, win more business, and improve their competitive standing and market perception.
Again, every technology deployment should be about improving business. Many technologies can bring significant business value in the world of technical data, but their justification must be derived from business management improvements. Even the best software solution cannot substitute knowing for sure that there is an effective business initiative (case) that can drive the application of the technology. Each new release and new set of capabilities calls for a business decision, which is not necessarily a "yes or no" answer as much as a "now or later" and "how" decision. The decision must weigh the value against the cost, and if the value does not outweigh the cost, users will usually defer the decision until the follow-up release is available, giving them yet another value and cost decision to install.
Weigh Value Against Cost: ROI
Recently, enterprises have begun to analyze the viability of IT investments in a quantified manner, instead of doing only feasibility studies, which consider whether the implementation of a system is possible, but not whether it makes viable business sense. Return on investment (ROI) is not a new concept and it is quite a straightforward one—it is the ratio of the benefits of a project and initiative or purchase versus the associated costs and investment (see Whose ROI is it Anyway?).
While doing ROI calculations might be easy, deciding what figures to plug into the calculations can be particularly daunting, given there are both tangible benefits (such as, order fulfillment increase, lead-time decrease, labor , and overhead cost decrease) and intangible or "soft", non-quantifiable benefits (including employees' satisfaction, smoother processes etc). Making certain users understand the scope and dynamics of the whole project, program, or initiative presents the greatest challenges. Harnessing technology is a long journey that takes much work and commitment particularly in terms of planning and dedication. It deals with systems, departments, and individuals, and enforcing (painful) change across the board. Thus, it is important to prioritize modernization requirements and work, in an incremental manner, on the ones that surely deliver the greatest payback.
Enterprises looking for new solutions should consider vendors who have either rewritten their products on a new framework or are at least taking the new approaches described above. Can users abandon their existing infrastructure and go to a model-based, pattern-based, rapid development markup language (RDML) or any other cutting-edge solution? Yes in theory, but that might not prove practical to the vast majority of enterprises, since the IT world is a mix of multiple applications, technologies, etc. Thus, enterprises that are looking to fill in their existing application portfolio should naturally look first at their incumbent vendors for a solution. However, they should also investigate alternative suppliers and the possibility of creating composite applications as an alternative approach.
If the incumbent vendors do not adequately fill the need, vendors with strong application function plus the ability to participate in composite applications should be favored. What is required from an ideal composite solution is the ability to integrate the business process, integrate the applications and data, and supply additional functionality to "fill the gaps" to produce a cohesive, composite application that ensures transactional and contextual integrity across the entire business process including manual process or workaround, a spreadsheet, or some other solution that keeps the business process from being fully automated by applications.
Those existing and prospective customers leaning toward iSeries-based enterprise products should only pick vendors that have multiplatform strategies and accompanying integration and migration capabilities. Practical, iSeries-based enterprise application users should use cross-platform development tools (e.g., Java or particular higher-level language environments) rather than RPG for in-house product expansion or modification. Despite the user preference for a single, "one-stop shop" vendor, componentized software products, interoperability standards, and Internet technology will lead to fewer large-scale projects and ongoing streams of smaller ones, all with tangible ROI rationale.
Easy integration to third-party applications has become a key selling point for ERP and similar vendors as many of them tout the provision of connectors to or from their systems, or make provisions for integration development tools. However, users should vigorously question potential enterprise applications providers the following:
- Which industry interoperability standards are supported? (e.g., Open Applications Group Integration Specifications [OAGIS], extensible markup language [XML], etc.)
- Do they provide message-based flexible interface or a rigid code-based integration?
- Do they provide basic batch-run interfaces or more advanced real-time, interactive two-way connections between applications?
The standards-based development model should ensure a tremendous amount of flexibility down the road. Enterprises that see themselves as technology leaders should consider new approaches to gain longer-term benefits from the decision, although all enterprises should start learning the new protocols, standards, and technologies in order to grasp the underlying business advantage of Web services, and to shift away from the software-centric mindset of largely outgoing client/server perspective.
This is by all means good news for many vendors' existing customers, particularly for the large corporations that need to integrate their internal applications with applications from other vendors, or who need to exchange information with their business partners that are not necessarily on the vendor's list of "usual suspects". Still, while the forthcoming new technology blueprints might be impressive, the market has often in the past witnessed how long the road can be between vision and execution, the notable resources of IBM's, Infor's or Lawson's, notwithstanding.
Yet, the architecture will not benefit customers until products built on it begin to appear en mass. Therefore, potential and current customers with hefty integration requirements should not depart from their short-term IT investment strategies. They should also consider third-party enterprise application integration (EAI) alternatives, particularly if a large corporation is looking to build integrating middleware standard corporate-wide and in the long term. Moreover, users should question their vendor's delivery fulfillment of its strategy and appreciate that migrating older instances or integrating them to other software will remain painstaking for some time to come.