13 April 2025

Rebuild, Refactor, Rise: Your 8-Step Plan for migrating customizations to Maximo Application Suite

Back in the day, I wrote a ton of Java customizations for Maximo, and many of them are still running today. Behind each one is a story — sometimes a quick fix, sometimes a clever workaround, but often exactly what the business needed at the time. Things have changed. The move to Maximo Application Suite (MAS) is the perfect chance to take a fresh look at what your system is really made of and realign it with how your business works today. Curious how? Let’s dive in!

Have customisations over the years quietly grown into a complex web of solutions?

With migration from old Maximo versions to MAS 8-9, you’ve got an opportunity not just to migrate — but to rethink. To clean up. To realign your system with how your business actually works today.

This plan gives you a clear approach to identify what to keep, what to rewrite, and what to leave behind.


1. Inventory of Functionalities

Before migrating anything, get very clear on what your system actually does — and why. I’m convinced this step is part of every migration — and for good reason. My approach? Always begin by zooming out, then zooming in, then zooming out again. Start with the big picture, dive into the details, and then step back to see where everything fits.

Sit down with business users, process owners, and key stakeholders to understand the true purpose behind each functionality.

The landscape has changed! Tools like SharePoint, AFAS, Power Automate, Power BI, and Azure Integration Services have reshaped how we manage business processes, documents, reporting and integrations.

Choose the right platform for each function!


2. Inventory of Customizations

Make a complete list of all automation scripts, Java extensions, JSP and JavaScript files.

Categorize by:

  • Business function (put aside technical workarounds for backend limitations!)
  • Technical component (script, Java, integration, JSP)
  • Dependencies – which modules are these customizations quietly tied to?

3. Functional & Business Analysis

Yes, zoom out again! Every customization was built for a reason — but does that reason still exist? What still solves real problems, and what was simply a workaround because better tools weren’t available at the time?

Check the true purpose behind each customization.

Ask:

  • Does MAS 9 already offer this out-of-the-box?
  • Was this built in Maximo only because there was no better tool at the time?

4. Architect for the Future

While working on refactoring automation scripts or translating Java into automation scripts, please keep in mind three things:

  • Scalability
  • Security
  • Performance

5. Java customizations

Customization in systems like Maximo is powerful… and dangerous. Understand exactly what it’s doing — and why.

Then: retire what’s no longer needed, move to the right platform what can be better handled elsewhere, refactor & rewrite in scripts what you want to keep using in Maximo Application Suite.


6. Automation Scripts

For scripts that you still want to migrate:

  • Modernize the syntax
  • Add error handling and logging
  • Make it modular, reusable, clean

7. Testing and Validation

If it fails here, it doesn’t go live!

Plan:

  • Functional validation of all customizations
  • End-to-end testing across all integrated systems — from user action to backend data flow

8. Documentation

Don’t let knowledge live in someone’s head — document it:

  • Architectural diagrams and data flows should always be up to date
  • Functional purpose and business impact — the why behind each customization
  • Code structure and logic — the how it works, not just what it does

Good documentation isn’t a bonus — it’s your system’s insurance.


Need help with customizations, scripting, or support during your MAS upgrade?

Reach out at info@maximovalue.com — let’s make your automation work for you using today’s tools and tomorrow’s needs.

Anna van den Akker

Experienced IBM Maximo consultant with a solid software engineering background. I help businesses improve their systems effectively, handling tough tasks and delivering great outcomes.
Category

Share this post on: