What is the need of software measurement? Explain different size metics.

Mumbai University > Information Technology > Sem 8 > Software Testing and Quality Assurance

Marks: 10 Marks

Difficulty : Medium

2 Answers
  • Measurements are a key element for controlling software engineering processes
  • Controlling means accessing the status of the process, observe the trends to predict what is likely to happen and take corrective action for modifying our practices.
  • Measurements increases understanding of the process by making visible relationships among process activities and entities involved and improves processes by modifying the activities based on different measures.

enter image description here

Fig: Need for software metrics.

  • Software measurement is needed for the following activities:

1) Understanding: Metrics help in making the aspects of a process more visible, thereby giving a better understanding of relationships among the activities of entities they affect

2) Control: using baselines, goals and an understanding of the relationships, it can be predicted what is likely to happen and correspondingly, make appropriate changes in the process to help meet the goals.

3) Improvement: By taking corrective actions and making appropriate changes product can be improved. Similarly, based on the analysis of a project a process can be improved.

- SIZE METRICS - The s/w size is an important metric, it is difficult to measure because unlike other physical products, a software cannot be measured directly with correctional units. - Various approaches for its measurements are given below

1) Line of code (LOC)

  • This metric is based on the number of lines of code present in the program
  • The LOC are counted to measure the size of a program
  • The comments and blanks are ignored during this measurement.
  • The LOC metric is often presented on thousands of line of code ( K LOC)
  • It is often used during the testing and maintenance phases not only to specify the size of the software product but also it is used in conjunction with other metrics to analyse other aspects of its quality and cost.

2) Token count (Hall stead product metrics)

  • The problem with LOC is that it is not consistent because art lines of code are not at the same level. Some lines are more difficult to code than others.
  • Another metric given by Hall-stead states that any s/w program could be measured by counting the member of operators and operands.
  • From these set of operator and operands are defined a number of formula to calculate the vocabulary, the length and the volume of the s/w program.
  • Hal stead extended this analysis to determine the effort and time.

Program vocabulary

It is the number of unique operators plus the member of unique operands as given below:

$n = n_1 + n_2$

Where n = program vocabulary

$n_1$ = number of unique operators

$n_2$ = number of unique operands

Program length

It is the total usage of all the operators and operands appearing in the implementation.

It is given as,

$N = N_1 + N_2$

Where N = program length

$N_1$ = all operators appearing in implement

$N_2$ = all operands appearing in implement.

Program volume

The volume refers to the size of the program and it is defined as the program length times the logarithmic base 2 of the program vocabulary

It is given as

$V = N log_2 n$

Where, V = program volume N = program length

N = program vocabulary

3) Function pent analysis (FPA)

  • It is based on the idea that the software size should be measured according to the functionalities specified by the user.
  • Therefore, FPA is a standardized methodology for measuring various functions of a software from users point of view
  • The size of an application is measured in function points
  • The purpose of counting the functions using FPA has been standardized by the international function point users group (IFPUG). IFPUG defines rules and standards for calculating function points.

  • Process to calculate the function points is given below:

1) Determine the type of project for which the function point count is to be calculated

2) Identify the counting scope and application boundary

3) Identify data functions and their complexity

4) Identify transnational functions and their complexity

5) Determine the unadjusted function point (UFP) count

6) Determine the value adjustment factor which is based on 14 general system characteristics

7) Calculate the adjusted function point (AFP) count.

Please log in to add an answer.