• Within Ada bodies, each semicolon counts as one SLOC. Generic instantiations count one line for each generic parameter.
This definition treats declarative (specification) design much more sensitively than it does executable (body) design. Although this definition caused many heated debates, within the project and externally, it served as quite good enough. It was not important to have the perfect definition; it was very important to have a consistent and adequate definition.
Two components drove the change in the definition of SLOC. First, the SAS packages in SSV contained a network definition that consisted of all the process definitions, task definitions, socket definitions, and socket connections. These packages contained numerous record definitions, custom-enumerated types, and record and array field initializations in specification parts. The source code for these elements consisted of more than 50,000 carriage returns but only a few hundred semicolons. Because the engineering effort involved with these packages was much more like the effort associated with 50,000 SLOC, there was a need to change. The second component, with similar rationale, was the system global message types. These packages numbered some . 300 different record types that represented the majority of data exchanged across SAS objects.
Because of the variety of different categories of SLOC developed on CCPDS-R, a method was devised for normalizing the different categories so that budgets could be properly allocated and productivities compared. The result was an extension of the COCOMO technique for incorporating reuse, called equivalent source lines of code (ESLOC). In essence, ESLOC converts the standard COCOMO measure of SLOC into a normalized measure that is comparable on an effort-per-line basis. The need for this new measure arises in budget allocation and productivity analysis for mixtures of newly developed, reused, and tool-produced source code. For example, a lOjOOO-SLOC display component that is automatically produced from a tool by specifying 1,000 lines of display formatting script should not be allocated the same budget as a newly developed lOjOOO-SLOC component. Table D-ll defines the conversion of SLOC to ESLOC on CCPDS-R.
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.