Modernising does not have to mean rebuilding. In increasing order of impact: maintenance on the current version, a version upgrade, a web version alongside the desktop client through TMS WebCore, or moving functionality outward step by step. Which one fits depends mostly on the state of the code.
The four routes
- Maintenance on the current version
- Fixing and extending without touching the environment. Fast, but it only postpones the version question.
- Version upgrade
- To a current Delphi, including Unicode, 64-bit and third-party components. Buys maintainability and access to modern libraries.
- Web version with TMS WebCore
- Existing Delphi code in the browser, alongside or instead of the desktop client. Works best when the application does not sit deep in Windows.
- Decoupling step by step
- Moving functionality into a new layer one piece at a time, with the old application still running. The safest route for a critical system.
What decides the route
- The state of the code
- Is everything under version control and is the build reproducible? If not, that is always step one.
- Third-party components
- They often decide whether an upgrade takes days or weeks.
- Where the users are
- Do people work only in the office, or also at home and on the road? That weighs more than the age of the code.
- Windows dependencies
- COM, printer control, attached hardware: the more of these, the less attractive the web route.
We always start by looking at what is there. The first gain often turns out to be somewhere unexpected — in the database underneath, for instance.
More on this →