Rebuild

Overview

A rebuild is where the business has a strong need for the application, but that the architecture of the original application is no longer fit for purpose and so needs to be replaced.

This is essentially a new build project. If the original application has been around for some while, then it is very likely that there has been a drift between the functionality that the business needs and the functionality that the application offers - which means that the base requirements will always need to be revisited to some extent, although the core of the original business function should be essentially the same.

A rebuild is not really a “migration” project, it is a new build of an application with the target of the public cloud, and with the business function essentially the same as the existing application.

Benefits

Time to migrate Score
Technical difficulty Score
Strategic Value Score

Both benefit and costs of a rebuild are very high - and similarly, the risk of failure in a rebuild project is very high.

Challenges

Rebuilding an entire application carries both major challenges and risks. While moving to a new architecture often seems an attractive option, every architecture choice carries with it benefits and challenges, and if the new architecture is also new to your organization, then those challenges and risks are very substantial indeed and may become impossible to overcome.

New architectures may also imply significant changes in your development organization in addition to the obvious up-skilling of staff that would be required. Up-skilling to new programming language is not a quick fix - while languages can be learnt quickly, it usually take 12-18 months to become really proficient and so the first months of any new project are very tricky indeed, maybe with the need for external recruitment and expert consultancy.

New architectures can be even more challenging. Starting a rebuild project of a major application with no previous experience in that architecture would be an extremely high-risk project. Cloud-native microservices are a case in point - while there are certainly use-cases which could warrant microservices architecture, in most cases the cost and risk to an individual project are prohibitive.

Use Cases