Earlier in the year I started a thread on rewriting applications. That first post highlighted some of the major barriers to successfully rewriting applications, namely: the lack of an accurate specification; the difficulty in testing given the lack of said specification; the lost customer feedback already built into the legacy application and the likely damage to customer satisfaction during the rewrite process.
I also touched on the cost/time/risk equation of rewriting applications when compared with a technology-based transformation process such as that offered by Morphis…
“Our most conservative estimates show a factor of two difference in cost/delivery time when compared with the automated approach adopted by Morphis; with a strong likelihood that the true comparison is an order of magnitude difference. And that’s without factoring in the risk of failure associated with rewriting the application, something that can prove to be existential for software companies needing to modernize their main product.”
Those “conservative estimates” were based on a Gartner estimate that an average programmer can write 15 lines of code (LOC) per hour. I could never find the original source for that metric but we use it in our pricing models to compare rewriting with our own costs/timescales for modernizing an application.
But it bothered me that the source was unverified. So I started researching to see what verified data points are out there.
One of the most reputable I found is from Capers Jones – Software Estimating Rules of Thumb. Admittedly 10 years old but an excellent paper all the same and yielding the following data points.
The “Gartner” 15 LOC/hour fits for a 100-10,000 LOC program (allowing for productivity enhancements over the past 10 years) if the metric is for raw (pre-testing) effort. Adding in test and other non-coding effort, then 15 LOC/hour applies only for the very smallest programs.
So how does this impact our estimates when comparing the time/cost to transform a 300K LOC application using the Morphis platform vs the time/cost for rewriting.
We recently contracted for a similar sized application (Oracle Forms to Java) and our proposal was for a cost of <$0.5M with a delivery time of 6 months.
Let’s be generous and use a net 3 LOC/hour from Capers Jones’ estimate above. Using a fully loaded developer cost of $150K per annum and 240 work days per year (and 8 hours per day), this yields a modernization cost of close to $8M. Delivery time will depend on the size of the team but the number of man-years works out at more than 50.
$8M and >50 man-years of effort compared to <$0.5M and 6 months elapsed project time. Which do you prefer?
And this still doesn’t factor in risk. The Morphis approach uses a technology platform to automate the majority of the transformation. Yes, there will be some degree of manual code completion and UI tuning at the end of the process but nothing compared with the risk associated with over 50 man-years of software development.
Watch out for the next post on this topic as we explain exactly why automated modernization affords the benefits discussed.