The need for historical data
Nearly all estimating methods need information about how projects have been implemented in the past. However, care needs to be taken in judging the applicability of data to the estimator's own circumstances because of possible differences in environmental factors such as the programming languages used, the software tools available, the standards enforced and the experience of the staff.
Measure of work
R. E. Park has devised a standard for counting source statements that has been widely adopted-see Software size measurement: a framework for counting source statements, Software Engineering Institute, 1992.
It is normally not possible to calculate directly the actual cost or time required to implement a project. The time taken to write a program might vary according to the competence or experience of the programmer. Implementation times might also vary because of environmental factors such as the software tools available. The usual practice is therefore to express the work content of the system to be implemented independently of effort, using a measure such as source lines of code (SLOC). The reader might also come across the abbreviation KLOC which refers to thousands of lines of code.
As can be imagined, SLOC is a very imprecise measure. Does it include comment lines? Are data declarations to be included? Unfortunately, researchers have not been consistent on these points. The writers' view is that comment lines are excluded, but data declarations are included. The argument for including data declarations is that in Cobol especially, it is possible to transfer much of the specification of processing to the DATA DIVISION, by using, for example, the report writer facility. Others might argue over this, but the main point is that consistency is essential.
Counting SLOC is difficult when employing application building tools, which often use tables or diagrams to record processing rules. Different measures of size are needed, such as object or function points, which are explained further on in this chapter.
Two programs with the same KLOC will not necessarily take the same time to write, even if done by the same developer in the same environment. One program might be more complex. Because of this, SLOC estimates have to be modified to take complexity into account. Attempts have been made to find objective measures of complexity, but often it will depend on the subjective judgement of the estimator.
Differences in complexity might be one of the reasons for the inconsistencies in Table 5.1.
Was this article helpful?
What you need to know about… Project Management Made Easy! Project management consists of more than just a large building project and can encompass small projects as well. No matter what the size of your project, you need to have some sort of project management. How you manage your project has everything to do with its outcome.