12 Questions
Which of the following statements is true regarding code length (LOC)?
LOC includes both commented and non-commented lines of code
What does the ratio CLOC/LOC measure?
The density of comments in a program
Which of the following is NOT an internal product attribute mentioned in the text?
Code quality
What is the purpose of measuring software size?
To estimate the effort, cost, and productivity of a software development project
Which of the following statements about internal product attributes is true?
They describe a software product in a way that is dependent only on the product itself
Which of the following development products is NOT mentioned as a predictor of code length?
Requirements
What is Maurice Halstead's theory about?
Correlating program length with programming effort
According to Halstead, what constitutes a program's vocabulary?
The sum of distinct operators and operands in the program
What does Halstead suggest about the relationship between program size and development time?
Smaller programs need more time to be developed
In Halstead's theory, what does the parameter β represent?
A number usually between 5 and 20 in cognitive psychology
What is one disadvantage associated with using Lines of Code (LOC) as a metric?
Vague definition
How does Halstead propose estimating the effort required to develop a program?
By dividing total effort by the number of elementary discriminations per second
Study Notes
Software Size Metrics
- Software size metrics measure the internal attributes of a software product, describing it in a way that is dependent only on the product itself.
- Measuring software size is necessary to reflect effort, cost, and productivity.
Length
- Length refers to the “physical size” of a software product, including specification, design, and code.
- Code length traditionally refers to text-based code length, often measured in Lines of Code (LOC).
- LOC can be divided into Non-Commented Lines of Code (NCLOC) and Commented Lines of Code (CLOC).
- The ratio of CLOC to LOC measures the density of comments in a program.
Advantages and Disadvantages of LOC
- Advantages of LOC: simple to measure, correlates with programming effort and cost.
- Disadvantages of LOC: vague definition, language-dependent, not available for early planning, and developer skill-dependent.
Halstead’s Work
- Maurice Halstead’s Theory (1971-1979) views a program as a collection of tokens, comprising operands and operators.
- The theory defines several key metrics, including:
- µ1: number of distinct operators in the program
- µ2: number of distinct operands in the program
- N1: total number of occurrences of operators in the program
- N2: total number of occurrences of operands in the program
- µ: program vocabulary (µ1 + µ2)
- Halstead’s theory estimates program length, effort required to generate the program, and time required for development.
- The theory also attempts to predict the number of remaining bugs in the software at delivery time.
Explore the concept of measuring internal product attributes in software engineering, focusing on software size metrics such as LOC, Halstead’s, function point, and more. Learn about static measurement methods and attributes like cyclomatic complexity, reuse level, and density.
Make Your Own Quizzes and Flashcards
Convert your notes into interactive study material.
Get started for free