I saw how the application was re-archived for 2 years from the moment it was put into production, while the others were rewritten in different technologies (one was C ++ - now Java). In my opinion, both efforts were successful.
I prefer a more evolutionary approach to poor software. If you can “build” your old application so that you can present your new requirements and the interface with the old code, you can make yourself easier in the new environment without “selling” the zero cost (from a business point of view) of the rewrite investment.
The proposed approach is to write unit tests for the functionalities you want to interact with: 1) make sure the code behaves as you expect, and 2) provide a security grid for any refactoring that you might want to do on the old base .
Bad code is the norm. I think that IT gets a bad rap from the business because it prefers to rewrite / rebuild / etc. They pay money and “trust” us (as an industry) to deliver reliable, extensible code. Unfortunately, business pressure often leads to shortcuts that make code unreachable. Sometimes these are bad programmers ... sometimes bad situations.
To answer your paraphrased question ... can code maintenance costs exceed rewriting costs ... the answer is clearly yes. However, I do not see anything in your examples that make me believe that this is your business. I think that these problems can be solved with the help of tests and refactoring.
Adrian Wible Sep 28 '08 at 1:50 2008-09-28 01:50
source share