Software Quality Measurement

By
Advertisement
Measurements in the physical world can be categorized in two ways: direct measures and indirect measures.
  • Direct process measures include lines of code (LOC), execution speed, memory size, defects reported over some time period.
  • Indirect product measures examine the quality of the software product itself (e.g. functionality, complexity, efficiency, reliability, maintainability).
A) Size-Oriented Metrics:
  1. These are derived by normalizing (dividing) any direct measure (e.g. defects or human effort) associated with the product or project by LOC.
  2. Size oriented metrics are widely used but their validity and applicability is widely debated.

  1.     Software organization can maintains simple records as shown in fig.
  2.     The table lists each software development project that has been completed over the past few years and corresponding measures for that project.
  3. In order to develop metrics that can be understood with similar metrics from other projects, we choose lines of code as our normalization value.
  4. Errors per KLOC (thousand lines of code)
  5. Defects per KLOC
  6. $ per LOC
  7. Pages of documentation per KLOC
  8. Size-oriented metrics are widely used, but debate about their validity and applicability continues.
  9. LOC measures are programming language dependent.
  10. Their use in estimation requires a level of detail that may be difficult to achieve
 Advantages
  1. Artifacts of software development which is easily counted
  2. Many existing methods use LOC as a key input
  3. A large body of literature and data based on LOC already exists.
Disadvantages
  1. This measure is dependent upon the programming language.
  2. This method is well designed but shorter program many get suffered.
  3. It does not accommodate non procedural languages.
  4. In early stage of development it is difficult to estimate LOC.
B) Function-Oriented Metrics:
  1. Function points are computed from direct measures of the information domain of a business software application and assessment of its complexity.
  2. Once computed function points are used like LOC to normalize measures for software productivity, quality, and other attributes.
  3. The relationship of LOC and function points depends on the language used to implement the software.
  4. It uses a measure of functionality delivered by the application as a normalization value.
  5. Since ‘functionality cannot be measured directly, it must be derived indirectly using other direct measures
  6. Function Point (FP) is widely used as function oriented metrics.
  7. FP is based on characteristic of Software information domain.
  8. FP is programming language independent.
FP- Five information domain characteristics


Measurement parameter
Weighting factor

Simple
Average
Complex
Number of user inputs
3 x _

4 x _

6 x _

Number of user outputs
4 x _

5 x _

7 x _

Number of user inquiries
3 x _

4 x _

6 x _

Number of files
7 x _

10 x _

15 x _

Number of external interfaces
5 x _

7 x _

10 x _


Simple Total

Average Total

Complex total

Count Total


  1. Number of user inputs - Each user input that provides distinct data to the software is counted
  2. Number of user outputs - Each user output that provides information to the user is counted. Output refers to reports, screens, error messages, etc
  3. Number of user inquiries - An inquiry is defined as an on-line input that results in the generation of some immediate software response in the form of an on-line output. Each distinct inquiry is counted.
  4. Number of files -Each logical master file (i.e. large database or separate file) is counted.
  5. Numbers of external interfaces - All machine readable interfaces (e.g., data files on storage media) that are used to transmit information to another system are counted.
Advantages
  1. This method is independent of programming languages.
  2. It is based on the data which can be obtained in early stage of project.
Disadvantages
  1. This method is more suitable for business systems and can be developed for that domain.
  2. Many aspects point of this method are not validated.
  3. This functional point has no significant meaning. It is just numerical value.

0 comments:

Post a Comment