What is the average life of code?
I’ve been taking a look at some processes that process our EDI invoices. There are 3 main groups of programs. Only 2 groups are being currently used. There used to be four but that is a different story.
The business decided to add a third party vendor to monitor freight charges by the major freight carriers that the business uses. After a manual sampling of invoices it was determined that the business could save “millions”. The Third party vendor likes to use EDI for invoicing. Luckily these freight carriers were sending some invoices to us through EDI. I said some. Actually only for 2 locations and the second location was for only 1 carrier and was added late last year.
The current processes can only handle what they were written for. (the 1 location) We discontinued one process when the vendor started sending in duplicate invoice numbers. Different charges but same invoice number. That violated our unique constraint for invoice numbers on a vendor. Since then we have upgraded the database, the vendor was bought out by another freight carrier, and now that set of programs don’t work.
I usually don’t look at code, but with our OOD project going on, resources are tight. We are under a code freeze, no new programs can be developed and changes to existing ones can not be made unless it’s a production issue. I can’t get changes based on the premise it will save “Millions” of dollars. I usually have a good idea on how the code should look from what I see with the end results and what the developers tell me. The program is more flexible than what I was told it was. Instead of most everything was hard coded only about half was. I did confirm my worst fears. The program inserts directly into the AP invoice tables. BAD, BAD, BAD, BAD, BAD There is a perfectly good payables interface and interface process that has been around since at least 10.7.
One set of code was written in 1998, the other set in 2000. Both programs share a similar history after that. Updates to the code every 2 years or so. This got me to thinking. With some of the other issues I have to deal with. What is the average life of code? These two sets of programs where written 8 and 6 years ago, the latter being a lighter copy of the first. Hours have been spent writing the code, translating the 810 file into another file format that was easier to load and process. In total these 2 processes processed 20 invoices a month. Another issue I have with these 2 program sets, no cost savings except to the carrier since they don’t have to send paper detailing the thousands of shipments per invoice.
Even though the programs were originally written 8 and 6 years they have been periodically updated with major revisions every 2 years. These revisions either reflect changes in the business, or changes in the infrastructure. (upgrading from 10.7 to 11i). Two years seems like a reasonable timeline for the life of code in an ERP environment, from my experience and seeing some more examples at this job. I guess if I was going to apply this to the financial aspects of a project development I would limit the life to two years. You would need to achieve a target ROI using the two year timeline. Too bad the projects here are not analyzed with those criteria.

0 Comments:
Post a Comment
Links to this post:
Create a Link
<< Home