Parameter Definitions
- Project Identification An internally assigned
identification number.
- Project Size Number of delivered source lines of code
(DSLOC) in the delivered project. Source lines are 80 character source
records provided as input to a language processor. Job control
language, link edit language, data declarations, internal program data,
and comment lines are included in the count. Unmodified reused code,
test drivers, "throwaway" code, and external data are not included.
Where the number of lines of source code are known but the content of
the source code is not, the assumption has been made that the code
meets the above definitions. Where the size of the code has been given
in computer words, an arbitrary conversion has been made to DSLOC.
DSLOC is assumed to be half of the number of computer words for high
order languages, and equal to the number of computer words for assembly
language.
- Project Effort Total effort in manmonths (TMM)
required to produce the software product. Includes effort in
management, administration, analysis, operational support, and other
areas such as documentation, program design, coding and test; that is,
all effort chargeable to the project by the builder.
- Project Duration Duration of project in total months
(TM) derived from begin and end dates of projects, less any "dead time"
in the project, for example, work stoppage.
- Source Code Languages Programming languages used on
the project are recorded by name and are expressed as a percentage of
the total DSLOC written in each different laguage; for example, Cobol
80%, Assembly 15%, JCL 5%. Where a Program Design Language (PDL) has
been used to define the program, the total number of PDL lines written
is included as a separate quantity and is not included in the DSLOC
count.
- Errors Errors (ERRS) are totaled by counting the
number of formally recorded Software Problem Reports (SPRs) for which a
fix has been generated during the period covered by the project.
Redundant SPRs are assumed to have been eliminated; that is, multiple
SPRs reporting the same problem. (In general, equating errors to SPRs
on a one-to-one basis produces a low count for all errors encountered
during the software development process, since SPRs are usually not
generated until the software comes under formal configuration control.
This point is usually marked by the end of software unit testing and
the beginning of integration testing; hence many of the errors detected
during coding and subsequent compilation have already been removed.
Collecting data on errors on the coding portion of the development
process is impractical, however, and error data derived
from SPR data can be extrapolated to the entire development process.)
- Documentation Delivered pages of documentation (DOC)
include program listings, flow charts (low and high level), operating
procedures, maintenance procedures, and any other descriptive material
covering the design, development, test, operation, installation, and
maintenance of the software.
- Implementation The implementation techniques used on
the software project are recorded and expressed as a percentage of the
DSLOC built using the specific techniques of Structured Coding (SC),
Top Down Design and Programming (TD), Chief Programmer Team (CPT), Code
Reviews or Inspections (CR), and Librarian or Program Support Library
(LIB). For definitions of the above, refer to RADC-TR-74-300, Volumes
1-16, Structured Programming Series.
Additionally, several other data items, derived from those mentioned previously, are recorded for projects in the dataset:
- Productivity Ratio of DSLOC to TMM
- Average Number of Personnel Ratio of TMM to TM
- Error Rate Ratio of ERRS to DSLOC
Not every parameter has been recorded for every project in the
dataset.
|