Skip to content

Case study

Legacy ERP modernisation with a modern web interface

Diagram of a browser UI wrapping a legacy ERP instead of replacing it
Business context

Manufacturing · UK-wide. Mission-critical Progress OpenEdge ERP with decades of embedded rules.

Application age / version

30+ years of business logic in OpenEdge. Functionally rich; UX and access methods were the constraint, not capability.

Starting condition

Users locked to a legacy client. Slow task completion from UI friction. A rewrite of the ERP was not an acceptable risk.

Main technical risks

Breaking decades of industry-specific workflows. Dual-running old and new access. Treating the UI as a place to re-implement rules that already lived in the ERP.

Audit findings

The ERP had to stay the source of truth. The job was an integration layer and a browser UI, with a gradual rollout — the same “do not rewrite first” sequence used on inherited Laravel apps.

Work completed

Angular frontend in the browser. Secure integration layer to OpenEdge. Core ERP logic untouched. Critical workflows rebuilt with modern UX: fewer clicks, validation at each stage, lower latency on common actions.

Deployment / migration

Gradual rollout to reduce operational risk. Browser access removed the legacy-client dependency without a big-bang cutover.

Integrations

Progress OpenEdge as source of truth. Angular as the new access layer.

Testing added

Rollout sequenced so operational capability could be compared against the existing client. Zero loss of business logic was a release requirement, not a slogan.

Result

Noticeable speed gains on day-to-day operations. Reduced time on core ERP actions. Higher adoption. Zero loss of business logic or operational capability. A foundation for further enhancement without a rip-and-replace.

Ongoing support

ERP remains; the web layer is the ongoing enhancement surface.

Facts as published on HTML Studio case studies. Expert involved: Oliver Burton. Stacks are named as built — not recast as Laravel.

Why this sits on a Laravel practice site

OpenEdge is not Laravel. The judgement is: wrap, don’t rip — reproduce, keep the money and stock rules where they already work, then add a safer access layer. That is the same advice as legacy PHP to Laravel and rescue / takeover.

Full write-up: Legacy ERP modernisation.