Upgrading COTS-based Core System The Agile Way
A public sector organization used an agile-based approach to upgrade its COTS-based asset management system faster by nearly 60 percent and improve efficiency of key workflows by nearly 50 percent.
The Upgrade Imperative
A postal organization (agency) in Canada used 15,000 machines and 13,000 vehicles to sort and deliver 8.1 billion pieces of mail, parcels and messages to over 16 million addresses. The agency used an IBM Maximo v7.1 system to manage all these machines, fleet and inventory assets. While the system had served the agency well, it lacked certain capabilities to meet changing requirements like reporting for work orders or inventory transactions and tracking revisions to purchase orders. The system’s security protocols had become noncompliant with the organization’s security standards as well. And, it was running out of warranty support. To address these challenges, the agency decided to upgrade its system to IBM Maximo v7.6 and engaged Infosys Public Services to help with this program.
Choosing Agile to Upgrade the Core System
The program was going to be a technical upgrade from IBM Maximo version 7.1 to IBM Maximo version 7.6, i.e.:
- The new system was to be configured to meet the new requirements, and;
- The data had to be migrated from the old to the new system as-is.
Agency had experienced delays in the past with similar programs so they wanted to use an agile approach to ensure on-time and on-budget execution of this upgrade.
The Infosys team (team) conducted workshops on agile development for the senior management, the business owners and the IT teams. This helped finalize principles that would guide the upgrade.
1. Configuration Over Customization
Out-of-the-box functionality of IBM Maximo 7.6 to guide the solution; i.e., align processes with product functionality. Eliminate customizations.
2. Minimum Viable Products
Decide sprints based on the business processes to be configured and design each sprint to deliver a production ready, user- tested working module.
3. Time-Boxed Decisions
Finalize decisions on aspects like simplification of business processes, integration requirements etc. within 24 hours and empower all team members to make these decisions.
After finalization of these principles, the team conducted a story mapping exercise with process owners to define the program scope. This exercise helped identify the modules to implement, the dependencies to address and the user-stories to build for each process/module.
Given the scale and scope, the team decided to use:
- Scrum framework to upgrade the system.
- Kanban to migrate the data.
- Jira and Confluence to track requirements, defects, and project documents.
The team also established an implementation sequence and decided to implement the program in 29 sprints. (Figure 1)
Each of these sprints involved detailed description of the requirements and user stories, configuration of modules to support these requirements, and automated testing using Selenium to increase productivity and improve quality.
The team used various tools to accelerate implementation:
- Application Designer for screen changes.
- Work Flow Designer for process flow.
- Maximo Integration Framework to integrate with SAP-based sourcing system and other systems, e.g. the systems that captured volumetric reading of sorting machines.
- Talend open-source tool to manage data migration.
During each sprint, the team identified ways to optimize existing processes through performance tweaks and/or through elimination of customizations. For example:
- Removal of purchase order approval process to simplify procurement.
- Automated updates to exchange rates through integration with the SAP system.
- Maximo automation script to develop functionality that supported the fuel invoicing process.
- Automated calculation of slippage in work order completion with representative color-coding.
These improvements, and the agile principles defined at the outset, enabled the team to increase sprint velocity (the number of story points/requirements implemented in each sprint) by more than 250% (an average of 25 story points were implemented in the first three sprints and an average of 90 were implemented in the last three).
Infosys’ proven agile testing approach enabled the team to identify and resolve 88% of the defects during the development and system testing phases. This minimized cost of re-work and helped deliver a high-quality end-system faster.
Benefits of Upgrading Core Systems the Agile Way