Migration or Modernization: Costs

How do you choose a new platform? What’s the best plan for transitioning from the IBM i to a new platform? How much will the transition cost be and how long will it take? Or is it better to modernize your IBM i applications?

Migration and modernization can become expensive projects. Be sure you understand the underlying causes of the problems so you fix the real problem rather than applying a superficial bandage.

Analysis and Assessment

Business requirements must drive application development and maintenance. In a fast-moving economy, companies require applications that are easily and quickly built and/or changed. Development practices must be agile to accommodate change and regular deployment into production.

Transform your developer culture into an agile mindset. Becoming more agile may challenge long-standing developer practices so, the transformation requires collaboration, coaching and maybe mind-changing training.

If contemplating a migration away from the IBM i, postpone a final decision until completing a thorough analysis and cost estimation of a migration project. You will need a virtual walkthrough of the migration project to ensure you can estimate a cost for each component of the project.

Evaluation questions to consider:

  • What do you do if you don’t have the application source code?
  • Does the application support business requirements?
  • Is the vendor still in business?
  • Is there a cost-effective upgrade path?
  • How do you add business functionality?
  • How do you maintain the application?
  • Can you modernize the applications without changing the source code?
  • What are the integration points?
  • Is it practical to rebuild by gradually replacing application functions and features?

Understand how each application contributes to the corporate operation and map the applications to where the company wants to go. The knowledge will suggest modernization priorities so that the modernization project can achieve a quick return on investment (ROI).

Modernize applications, or the parts of an application, that will simplify and optimize business processes. You don’t have to modernize every screen in every application.

Choose the modernization strategy wisely. Adding a modern user interface is beneficial but exposing application functions as APIs provides access by other applications for greater flexibility, agility and integration for the future. For example, you could speed up supply replenishment by allowing your supplier to manage inventory via an API.

Application Inventory

Before embarking on a migrate or modernize project, compile a list of the applications and assess the value and complexity of each application. The list may look something like this table.

Applications – the application name or identification.

Core Business – core business applications support the primary business operations and provide a competitive advantage. Non-core applications include human resources, payroll, financial accounting, general ledger, accounts payable and accounts receivable.

Business Value – assign a measure of importance to the application is to business operations. High-value applications are those without which the company cannot operate.

Complexity – define a measure for complexity for the application using a scale of 1 to 4 where one represents low complexity and four high complexity. Understanding the complexity of the application provides direction for the migrate or upgrade in place decision. Complex logic and business rules hard-coded in RPG programs are problematic. When assessing a migration, determining logic and business rule equivalence in a replacement application will be almost impractical without the source code for the new application. When considering modernizing the existing application breaking up the logic and business rules into microservices will be challenging.

Priority – allocate a priority to each application to define the sequence of work to migrate or modernize the application.

After completing an inventory analysis, you are ready to compare the costs of modernization by migration and modernization by upgrading the applications in place.

Cost Comparison

Comparing costs and determining the total cost of ownership are critical factors in the migration versus modernization decision process. The comparison must include both tangible and intangible costs to derive the real cost of the decision.

The comparison assumes a decision between modernization by migration and modernization by upgrading in place. Upgrading in place means retaining existing applications and infrastructure. Migration considers application modernization as either replacing existing applications on a new platform or moving existing applications to a new platform. Upgrading in place considers application modernization as changing and enhancing existing applications and the applications remain in place on IBM i servers.

The following are some of the cost items to consider and evaluate.

Migration Costs

Capturing all migration costs can prevent surprises during or after the migration project. Cursory, best guess estimates may leave you exposed mid-project when the cost to complete the migration surges and you have no option to go back.

Here are some cost items to consider. The list won’t be exhaustive without specific application details.

Abandoning a migration is a costly experience. You go back to where you started and now face the same migration or modernization decision all over again but with the wasted expenditure of the failed migration still fresh in your mind.

Modernization Costs

Modernizing applications by upgrading in place can be incremental or whole of the application project. Incremental modernization imposes minimal disruption to normal operation. You can focus modernization efforts to a part of an application without interrupting the operation of other parts of the application.

Two extremes of modernization by upgrading in place are converting existing screens into pages using HTML, CSS, and JavaScript or redesigning business processes and transforming business functionality into APIs. You can expose the APIs to other applications and/or build a user interface that interacts with the APIs. Converting existing screens will make the application look modern but redesigning the business processes provides a path to productivity improvement and deliverable ROI. The cost differential will be wide. Choosing either extreme or a combination of them depends on your motivation for modernization and your budget.

Here are some cost items to consider. The list won’t be exhaustive without specific application details.

Do Nothing Costs

Evaluating the cost of doing nothing will provide a perspective against which to compare migration and modernization costs. Here are some items to consider.

Business Processes

  • Will existing business processes be adequate for the foreseeable future?
  • If not, what is the cost of adding to existing processes?

Competitive Advantage

  • Will doing nothing reduce your competitive advantage?

Continued Operations

  • Can the company afford to continue operating inefficiently with the existing applications?  This question is especially important for companies running on high volumes and low margins.


  • Can you innovate your information management requirement using the existing applications and IT infrastructure?


  • Will suppliers force your company into new modes of interaction, e.g. by requiring machine-to-machine ordering?
  • Are other suppliers available if you can’t comply with their mandate?

Doing nothing might appear to be a viable alternative to migration versus modernization dilemma, but it is rarely the right decision. Evaluating the real and intangible costs of doing nothing will establish the viability of doing nothing. Remaining stagnant in the changing economy in which your company operates will eventually force you to replace existing applications, but then you will be under tremendous pressure to deliver quickly. It’s best to decide between migration or modernization before being forced into rash decisions, quick fixes and band aid solutions by factors beyond your control.

Modernization is Ongoing, Not a Once in a Lifetime Fix

Companies develop products and provide services. Innovation is the necessary ingredient for making a profit and staying in business. Applications provide the data management services that support products and services and ongoing application modernization goes together with business innovation.

Don’t try to modernize everything in the first project. Break modernization into small manageable steps. Start with the high priority applications and modernize the priority parts of the applications using the old 80/20 rule. Know when to stop. Can you justify modernizing an application that is used twice per year?

Proceeding slowly allows you to spread the cost over a longer period, monitor the progress and outcome of the modernization and reduce overall risk.

If you missed my first two posts in this series, check them out — Are you Facing the Modernization Dilemma? and Migrate or Modernize – That is the Question.




Submit a Comment