Smart Software Modernization

Written on
27 June 2022
by
Christian Boer
Partner & Thinker
Share
You have to keep developing software. So is it smart to start from scratch? Or is it still possible to repair the software? Often, there are still enough options to modernize an existing, business-critical application so that you can still get on with it. We explain how that works in this blog post.

If you developed an application years ago, it may now be obsolete if sufficient maintenance has not been done. Or in terms of ease of use, the software no longer meets users' expectations and the app is no longer visually appealing.

Other things that are often missing in older software include opportunities to communicate with customer systems or suppliers in an automated way, and performance problems or security issues can also occur. But how do you know if the outdated application can still be modernized? And when is this wise?

Determine the state of the software

Just like not every obsolete home qualifies for renovation, not every business-critical application qualifies for modernization. Technically, the foundation must be in order and able to support the size of the modernized house. It is not useful to only install new frames if the house is even further warped after a year or if the window next to it is always open so that burglars can walk in straight away.

Source code and data quality

The state of your business-critical application is largely determined by source code and data quality. This quality largely determines the options between renovation and new construction.

If the structure of the database is well put together, it offers good opportunities to partially or gradually modernize the application without time-consuming and error-prone data migration and implementation projects. But even when choosing a new building, there are still options to take over high-quality components from the software.

New construction or modernization of the software

So how do we arrive at a well-founded basis for the choice that must be made between complete reconstruction (new construction) and partial step-by-step reconstruction (modernization)?

Indeed, the choice for a complete reconstruction should not be taken lightly. In general, it can be said that the actual costs for complete reconstruction are a factor of three higher than previously estimated, on the one hand because further development is being carried out on the existing platform and, on the other hand, because the existing software often contains a lot of hidden functionality that was not included in the scope of the new software but later proved necessary. The graph below shows this graphically.

Another important factor that influences the choice between complete reconstruction and modernization is the possibility to opt for a changed scope when completely rebuilt. Where existing functionality of the application is not included and new functionality is being built. This includes functionality for certain manual activities in the application that are now easily replaced by automated tasks using AI and machine learning.

At the other end of the spectrum, the development speed of new functionality is generally higher in a more modern platform than in an existing legacy codebase.

How do we determine the quality of the software?

When building software, you usually start in elegant, separate blocks of code that are well separated. Over time, new or changed wishes arise and an application is further developed. Several people are working on the same product and, in a period of negligence, the structure gradually disappears and the software becomes one big chunk of spaghetti.

In our analysis phase, we will quickly recognize this type of spaghetti, but we will also find the valuable and useful meatballs. In a subsequent blog post, we would like to give you more insight into how we can carry out this analysis process for you.

Pragmatic approach

That's why we first map out your software environment, determine its quality and run through the applications together. In addition, we identify the wishes, bottlenecks and opportunities for improvement. With the insights gained, we then provide an independent business analysis and provide well-founded advice for renovation, reconstruction or a combination of both. This advice also includes an action plan and a quote. Includes a first design that provides an insight into what the old software would look like in a modern look and feel.

Getting started with your software

Do you use a business-critical software product and do your employees or customers run into problems? Or are you replacing existing software? Then it's time to ask yourself whether you really need a completely new product or if modernizing software could be an option. Do you have questions about your business-critical software product? We are happy to help you with this issue!