written 5.3 years ago by |
The software metrics can be classified as follows:
1. Product Vs Process Metrics
Software metrics may be broadly classified as either product metrics or process metrics. Product metrics are measures of the software product any stage of its development, from requirements to installed system. Product metrics may measure the complexity of the software design, the size of the final program, or the number of pages of documentation produced.
Process metrics, on the other hand, are measures of the software development process, such as the overall development time, type of methodology used, or the average level of experience of the programming staff.
2. Objective Vs Subjective Metrics
Objective measures should always result in identical values for a given metric as measured by two of more qualified observers. For subjective measures, even qualified observers may measure different values for a given metric. For example, for product metrics, the size of product measured in line of code (LOC) is an objective measure. In process metrics, the development time example of objective measure, whereas the level of a programmer's experience is likely to be a subjective measure.
3. Primitive Vs Computed Metrics
Primitive metrics are those metrics that can be directly observed, such as the program size in LOC, the number of defects observed in unit testing, or the total development time for the project. Computed metrics are those that cannot be directly observed but are computed in some way from other metrics For example, productivity metrics like LOC produced per person-month or product quality like defects per thousand lines of code.
4. Private Vs Public Metrics
This classification is based on the use of different types to process data. It is natural that individual software engineers might be sensitive to the use of metrics collected on an individual basis, and therefore these data should be private to individuals and serve as an indicator for individuals only. Examples of private metrics include defect rates (by individual and by module) and errors found during development.
Public metrics assimilate information that originally was private to individuals and teams. Project level defect rates, effort, calendar times, and related data are collected and evaluated in an attempt to uncover indicators that can improve organizational process performance.