by Chris Durand
Say you have an existing iSeries (AS/400) or mainframe “green screen” application. It’s been around for a long time and has a solid, reliable code base based on years (decades?) of testing and real-world use. It generally works pretty well, and doesn’t change much.
That’s all great until you find that as the business is moving forward it is becoming increasingly difficult to update the application to support the future business direction. Sure, you’ve found a few creative solutions to work around application limitations so far, but fundamentally you need something other than a short-term fix.
You basically have the following modernization options:
- Rewrite it using the language/technology/platform of your choice.
- Pros: Complete flexibility to keep what is working and rework what is not.
- Cons: Expensive. Risky (does anyone really know all the business rules buried in decades of code?). Slow to implement.
- Convert the code to a new platform using an automated tool. I’ve not had experience with this, however, I suspect it is cheaper than rewriting, but still very risky. Plus you probably don’t get the full benefits of a true rewrite. Continue reading