How do you secure the business
flexibility advantages of a modern software design when your
budget won't allow a rewrite of your critical applications?
There are primarily 3 practical alternatives to
a rewrite:
-
Replace with a commercial off the shelf (COTS) package
-
Apply
tools
to extract your business rules, and re-architect the rules
into a modern implementation framework
-
Apply tools to translate your existing code base
into a modern language, database design and user
interface (renovation)
No one strategy is clearly preferable
for all cases. There may not be an applicable COTS package,
or the gap may be too big. Renovation may be cheap but does
not meet your goals. Re-architecting may meet your
goals but not your budget. A rewrite may be the only
alternative, because the legacy assets have too little
residual value. How do you choose the best strategy?
We utilize our
methodology
in a legacy modernization study
to assist you in choosing the best strategy (or combination of strategies)
according to your specific circumstances.
The decision is
non-trivial, and involves understanding the business case,
schedule goals, resources available, residual value in the
legacy assets, technical details of the application
implementations and deployments, and appetite for assuming
IT risk.
Then, if either a COTS package or
outsourcing some or all of the project is under
consideration, we add vendor risk to the list.
Choosing the best strategy is primarily a business question, not a technical
question, except insofar as technology impacts the business.
We argue that the pros and cons of different alternatives
should be analyzed according to business criteria and the
optimal solution derived for each case. There is no
one-size-fits-all answer. Example study summarized
here.