The original source code cannot be recovered from a compiled program, and we would rather say so straight away. What usually can be done: secure the database and the data, document how the application behaves, and build a successor from there that does the same.
What is and is not possible
- Reconstructing source code
- Not realistic. Decompilation produces unreadable code nobody can maintain, and it is far from always permitted.
- Securing the data
- Almost always possible. The database or the files can be read and transferred independently of the application.
- Documenting behaviour
- Screens, calculations, reports and exceptions, recorded together with the people who use it daily.
- Keeping it running
- The application can often survive for years in a walled-off environment while the successor is built.
Where to look first
- Old disks and backups
- Source code turns up surprisingly often in an old backup or on the machine of the developer who left.
- The installation folder
- Configuration files, scripts and report definitions are frequently still there even when the code is missing. They save a lot of investigation.
- The contract
- Sometimes source code escrow was agreed with a third party. Worth checking before you do anything else.
Even without source code you hold more than it seems. Start by securing what exists, and only then ask what the successor should be.
More on this →