Lines of code in software estimation is no longer accurate estimate. A better solution is looking at the problem from the source. That is to say how hard is the problem you are trying to solve? The correct answer in software estimation needs to take a wider viewpoint. Lines of code as a true estimate of software cost are not only short-sighted but often wrong by large proportions.
This is where expert opinion can give a better solution to software costs. Is the problem-solving an integration, a conversion, a modification, or a brand-new solution? These are the questions to based on, asked when determining the projected cost of the software. The reasoning behind this is fairly straightforward.
In an integration, software must take one format of data and integrate it into an existing system, the difficulty of this should be made by the integrator after careful examination of the inputs and subsequent outputs, either to another system, or displayed information
A conversion, say from one language to another, similarly should be examined by the software team, fluent in both and aware of conversion issues.
A modification is normally the result of a new way of manipulating existing data or a new algorithm for existing data and should be examined by the technical and software team.
A brand-new solution indicates that the problem is new and has not been previously solved and needs to be examined by engineering and software teams as well. One could argue this may be the one place lines of code may be an accurate measurement; however, lines of code tend to ignore the engineering aspect.
At any rate, getting an accurate, or even semi-accurate cost estimation strictly by lines of code is a fool’s errand and should not be used as a “proven” method of cost estimation of software, and that is because some code is easy, other much more difficult, some can be handled via the software team, others will require a better understanding of the problem to be solved. Lines of code also tend to exclude the user experience and maintenance requirements, which must also be factored into the final estimation.