The hard thing about transforming legacy systems - tight coupling. When legacy systems interact with one another bi-directionally, and are intimately aware of each other's implementation approaches it becomes extremely difficult to work with. Legacy systems also have all kinds of logic in them - mixture of presentation, business rules, process orchestration, data access etc. Not to mention the increased cost of ownership and lack of transparency.
The first step towards transforming your legacy systems then is to loosen the tight coupling. Specifically:
- Minimize (and eventually eliminate) point to point integrations between legacy systems
- Migrate process orchestration and reengineer them using a business process layer. Orchestrations of calls across systems can be controlled from a separate layer rather than be done from every system
- Use reliable messaging to exchange data between legacy systems and systems of record. Rather than including legacy systems in every orchestration you can keep data synchronized using an asynchronous flow.
- Integrate legacy system operations with BPM layer so you can reuse standardized process flows. This is relevant when not all functions have migrated out of your legacy world and you need to reuse part of what you have built in your target platform
- Iteratively transform functions from the legacy system - if you see a function that is needed for multiple use cases you can partially or completely move it out. Or wrap capabilities as services accessed through a mediation layer













Leave a comment