Organisation productivity and agility are severely impacted when teams operate within the limited boundaries of legacy applications and processes. Additionally, any further development is subject to supporting the legacy patterns and designs which would slow down delivery teams significantly.Book a Consultation Our Packages
Key members of our team have designed, planned and executed extra-large transformation programs, moving monolithic win-form based assets with more than thousands of features, to a cloud-native API-first set of micro-services based web application running on private and public Clouds.
The key to any successful transformation initiative is to understand and set a clear 'why', vision, set of goals and expected outcomes, as it helps decide on the strategy and execution approach.
Depending on the transformation budget, and how critical is the software to the organisation, multiple options are available to either replace the asset with a SaaS, or start modernising the asset features.
It is also crucial to have all the necessary Engineering, Architecture, QA, and UX building blocks in place, to execute the modernisation at the highest possible velocity based on a set of consistent guidelines and standards across all those practices.
Most importantly, uplift of the culture, mindset and the thought process of the teams behind legacy assets need to be transformed to a large degree as well, to support a successful transformation journey, as opposed to letting those legacy practices to slow down the process every step of the way.
Typically transformation opportunities, especially in large organisations, won't happen often, and when all the program level necessities and prerequisites are lined-up, adequate due-diligence and groundwork need to be taken into account to ensure we get it right the first time. Below are the areas that need to be covered for any transformation program in advance:
The ability to innovate faster, elevate productivity, keeping the technology up to date, retain talent, break down the monolith and scale up/down based on demand are among the main drivers to modernise and set the asset up for future success. These need to be defined in crystal clear terms and communicated to stakeholders.
End-user experience and how they work with the modernised assets will, to a large degree, determine the approach which needs to be taken to transition from the old state to the target state, whether the old and new features co-exist in the same application, or there will be multiple applications at the end.
Although cloud-native API-first micro-services based architecture could be the preferred model, it varies based on the preferred user experience, the complexity of the system and involved dependencies, and organisation's existing processes and operating models which need to be looked at on a case by case basis.
There are many engineering building blocks which need to in place to transform at scale and the highest velocity such as engineering standards defined, application scaffolds ready, automated pipelines and embedded QA mechanisms implemented, automated and scalable ways to measure complexity and drive consistency ready at the platform level.
One of the most low-value and resource-intensive exercises before each software release is the manual repetitive tests runs which could be automated. The codified pipelines for each micro-service, need to include test cases to make them self-testing units, and their sufficient level of test coverage can minimise the amount of manual effort executed for go-live exercises.
While we overhaul our technology landscape and modernise our assets, supporting organisation processes to enable the frequent go-lives are of paramount importance. There is no benefit in enabling hourly software releases, while the Change Management teams only support quarterly releases to production!