Legacy Application Modernization in
Pune
The VB6 exe on a stores PC, the PHP 5 box under a desk in Hadapsar, the .NET 4.5 monolith only one retired consultant understands—migrated in slices, with tests, while the business keeps running.
Pune still runs on software that cannot be hired for. That is a risk, not nostalgia.
PCMC factories and Pune traders often have a desktop app written in 2009 that prices SKUs, prints challans, and holds tribal knowledge in unnamed stored procedures. A greenfield rewrite that “goes live on 1 April” is how you halt dispatch. Unitas modernises with characterisation tests, a strangler facade, and dual-run periods. We read VB, old PHP, PowerBuilder-ish patterns, and Framework WebForms so we can replace them without guessing.
This is slower to quote than a new React app, because we must learn what the old system actually does—including the hacks. That archaeology is the product.
Key Highlights
- Characterisation tests before behaviour change
- Strangler: new UI for one flow, old exe for the rest
- Data migration rehearsed on copies
- Knowledge capture from the one person who “knows the system”
Modernization moves we use
Different from .NET new-build: here the behaviour of the old system is the spec.
VB6 / VBA / Access
Common in Pune SMEs. We extract rules, replace UI with web, keep SQL until it is understood.
PHP 5 / CodeIgniter fossils
Framework upgrades or a strangler to Next/.NET. Composer and PHP 8 are a plan, not a hope.
.NET Framework WebForms / WCF
Core APIs beside the monolith. Session and auth are the dangerous parts—we sequence them.
Desktop to web
Keyboard-heavy stores UIs get a web equivalent with the same shortcuts where we can.
Database un-messing
Unnamed columns, dual meaning flags. We document before we “clean.”
Hosting escape
That tower CPU in the accounts room becomes a VM or cloud with a rollback.
Where we see the risk concentrated
Not startups. This is 10–40 year businesses in Pune and PCMC.
Trading houses
Pricing and scheme engines in Access. Authors have left. Month-end is held together by one operator.
Job shops
Job cards in VB. Machines still run. IT cannot hire VB6.
Old ISVs
On-prem installers. Customers in Maharashtra still pay AMC. Need a cloud path without insulting them.
Internal GCC tools
Silverlight-era internals. Security wants them gone; users want the same keyboard path.
Modernization tactics that worked
Print challan first
We replaced the VB print path with a web service the exe called. Dispatch never noticed. Then we replaced the rest of the screen.
Golden master tests
A PHP invoice routine got 120 historical bills replayed. Diffs had to be empty before we touched GST fields.
Read-only parallel
New React UI read the old SQL for two weeks. Users compared. Only then did writes flip.
Modernization programme
Assessment is a paid phase. Anyone quoting a rewrite from a 20-minute call is guessing.
Risk & map
Inventory of binaries, DB, jobs, and the humans. Rank flows by revenue risk.
Characterise
Tests, traces, and a glossary. If the expert is retiring, we record them now.
Thin slice in production
One flow on the new stack, strangler in front. Feature flag.
Data rehearsal
Copy, migrate, checksum, restore. Timed. Done more than once.
Decommission
Turn off the exe, keep the VM a month, then archive. Celebrate only after that.
Why not a clean rewrite
Rewrites discard tacit rules (the 3% of invoices that use a manual override). Strangling preserves them until they are explicit.
We budget archaeology
Pune owners underestimate how much is in stored procedures. We will not.
Plant calendars
Cutovers avoid month-end and Diwali dispatch peaks. IST operations lead the date, not the sprint board.
Hireability as a goal
The target stack is C#/React or Node/React so you can hire in Hinjewadi again.
Linked to .NET and ERP pages
If the legacy is secretly an ERP, we will say so and sequence modules like ERP, not like a website.
Modernization snapshots
Cutover and characterisation—unlike greenfield stories on other Pune pages.
Access pricing → API + web
Schemes characterised with 3 seasons of invoices. New UI for sales; Access remained for one admin report for 45 days, then retired.
VB6 stores → web strangler
GRN first. Barcode on the new screen, same SQL. Dispatch exe stayed until GRN was trusted for a full month.
Modernization commercial model
You are paying to reduce key-person and platform risk. Treat it as insurance plus delivery.
Assessment
Map, risk rank, recommended slices, and a build range. You can take this to any vendor.
- Inventory
- Interviews
- Risk heatmap
- Slice plan
First strangler slice
One production flow on the new stack, dual-run, tests.
- Characterisation
- Feature flag
- Training
- Rollback
Programme
Multi-slice over 6–18 months with a steering cadence.
- Architecture
- Data
- Decommission
- Hireability target
Frequently Asked Questions
Specific to Pune Solutions
After (or instead of) modernization
Explore sibling services across Pune & Maharashtra
Do not send a feature list. Send how the old system is used at month-end.
That story is the spec. We will tell you whether to strangle, replace with ERP, or leave it alone for a year.