We’re in the second episode of an six-part series, looking at why application modernization projects fail. Our first episode covered the main reasons that business executives indicated why their app modernization projects fail. For a recap of our first episode, please visit: Why App Modernization Projects Fail Series – Ep 1 Overview.
There are numerous reasons why companies decide to modernize their apps including:
- Improve reliability of the product
- Fill security related holes
- Solve scalability challenges
- Innovate and increase competitive advantage for the business
- Cut costs maintaining the application
- Save time and enhance developers’ productivity
- Improve user and customer experience
- Cope with integration challenges
- Resolve application complexity and overcome technical debt
- Stop using obsolete development tools
- Improve code maintainability and extensibility
These are all great reasons why an organization would modernize an application. But the modernization project cannot impact the business. Senior executives cite business disruption as a leading cause of app modernization failure and one of the main risks for postponing a project. Integrations and reporting relying on legacy applications also can’t be disrupted so organizations often find themselves struggling with the trade-off – is it more important to modernize quickly, or to maintain continuity of business operations? Why can’t they have both?
Further, most business executives don’t simply want to modernize their applications, but they want also to improve and enhance them in the process. In this way the modernization project serves to address several of the reasons to modernize, not just one or two, creating additional value for the organization.
If business disruption is a key risk to app modernization projects, how do organizations mitigate this risk?
Application Risk Assessment
Conduct a thorough risk assessment of the legacy application, identifying potential points of disruption in the modernization process. Evaluate all data flows into and out of the application. Describe all the key business processes and Users that the application supports – capture the User Stories of the software’s business use. Assess all possible scenarios that could lead to downtime, interruption, processing errors, or data integrity issues.
Create Multiple Environments
To mitigate risk, ensure that the product development, system integrations, reporting and workflow evaluations through internal and external testing means can be done securely and separate from that of the older product’s ongoing maintenance and other needs. Source code management, automated builds and deployments, database and overall system health and state checks on behalf of connected systems and data movements via newer and more efficient APIs and microservices need to be taken into consideration to effectively ensure that no harm is created through an App Modernization effort
Pilot with Diverse but Limited User Community
Before rolling out the modernized app to all users, run a pilot program with a limited user base. Select a subset of users who opt-in to try out the new version of the application. This would ideally be initially focused on areas of the application where most users spend their time and include several enhancements demonstrating not just improvements over the older product but also additional business value addressing key customer requests previously unfulfilled. This approach generates enthusiasm for the new product as well as starts to create a sense of urgency for the project to continue moving forward while also capturing feedback throughout the effort
Rollout Incrementally
While not required, it’s worth considering whether an incremental rollout of a modernized application should be done incrementally instead of deploying the modernized app to all users at once ((especially when you’re able to concurrently deliver new business value. This approach helps minimize the impact of any unforeseen issues and allows the organization to address problems quickly. Additionally, it helps the organization manage change more effectively.
Monitor and Test in Real-time
During the transition, closely monitor the performance of the modernized app in real-time. Use monitoring tools to track key metrics such as response times, error rates, and user engagement. Additionally, continuously test the app’s functionality and integrations to ensure that everything works as expected. If issues arise with edge cases that were not effectively tested earlier in the process, they can be addressed quickly, and in some cases, even before users notice the issue.
Provide Proactive Customer Support
Provides proactive, dedicated customer support to assist users during the transition. Reach out to the users of the incremental rollout and request feedback on the application and the modernization process. Establish a support hotline or chat system to address any issues or questions users might have. Communicate proactively with users, informing them about the upcoming changes and any potential planned downtime.
In summary, traditional App Modernization approaches, including how to get these produced improvements out to production, need to be looked at carefully and with a critical eye towards minimizing risk balanced with delivering exceptional results. We hope to continue delivering thought-provoking insights into these details but, more importantly, intend to also illuminate how Aspen ESS addresses these areas of complexity better and faster than anyone else using our Warp Drive Development Engine™.
Todd Ingersoll
With over 20 years of experience serving multiple roles inside successful enterprise software and services organizations, Todd has been expressly interested in successfully overcoming app modernization challenges. His first-hand experience and dissatisfaction with the limitations and business impact of the traditional options of application modernization led him to create Aspen ESS. Aspen ESS was created to give organizations rapid, reliable, scalable, and extendable solutions to challenges with legacy software products and portfolios.