We helped our client to migrate their software to an up-to-date Delphi version
-
Industry
IT
-
Project type
Desktop
Description
The client that we worked with is a vendor of software for municipalities (Civic Tech solutions). Thanks to this software, social authorities can create law enforcement practice records and track whether people receive the necessary allowances.
The software was developed many years ago. That’s why there were a lot of risks and challenges related to its support and updating. The management had to make a decision on whether they should migrate the software to an up-to-date Delphi version or develop a software solution from scratch using another technology. They contacted us with a request to conduct a business analysis and come to a final decision as well as to execute re-engineering in order to make it easier to maintain the existing code.
It takes us really a lot of time to introduce even the smallest changes to our software written in Delphi 5.
Our employees complain that the app works too slowly.
We need to get professional help in making a decision on whether we should migrate our software to an up-to-date Delphi version or develop a software solution from scratch using another technology.
Project Team size
- Project manager
- Business analyst
- 3 Delphi developers
- QA engineer
Solutions
Our work started with a deep analysis of the ongoing state of the software. Our team chose an option to migrate the app. We created a migration roadmap and a detailed plan of action.
Nearly 85% of the old could be re-used without any issues, but we had to re-write another 15%. It turned out that small parts of code in the latest Delphi version were combined in a different way and obsolete components were used. We also conducted re-engineering of separate modules as well as code refactoring. As a result, it became easier to maintain code, the number of bugs decreased, and the app began to work more stably.
Preparation of module tests
Component migration
Migration of the app’s core logic
Preparation of test examples
QA testing
Thanks to this approach we could migrate the key software and its components in parallel.
Technologies
- used in the project
- Delphi
- Firebird
- VCL
- DevExpress
Outcome
We successfully conducted the migration. Now the in-house development team of our client can easily and quickly introduce the necessary changes.
Our team managed to achieve the compilation and stable functioning of a 64-bit app version. Thanks to this, some features of the app began to work faster.
After the migration, the software started to work uninterruptedly and efficiently.