Professional Documents
Culture Documents
Metrics PDF
Metrics PDF
1.
2.
�
Software Metrics
Software Metrics (2) .
Code
Static
Dynamic
Programmer productivity
Design
Testing
Maintainability
Management
Cost
Duration, time
Staffing
Code Metrics
Static Analysis of Code
Program Length: N = N1 + N2
Program volume: V = N log 2 (n1 + n2)
(represents the volume of information (in bits) necessary
to specify a program.)
McCabe’s Cyclomatic Complexity
R1 R2
R3
R5 R4
Static Analysis of Code (Problems)
Static Analysis of Code (Problems con’t)
Bug Counting using Dynamic Measurement
Assumptions:
Seeded faults equivalent to inherent faults in
difficulty of detection.
Bug Counting using Dynamic Measurement (2)
�
Estimating Failure Rates
� �
Reliability Growth Models
�
Software Uncertainty
Input space I
IF
Program p
OF
Output space O
�
Sample Interfailure Times Data
�
Using the Models
2400 JM
2200
2000
1800
1600
1400
1200
1000
800 LV
600
400
200
40 50 60 70 80 90 100 110 120 130
�
Problems with Software Reliability Modeling
�
Software Requirements Metrics
Function Points
Count number of inputs and output, user interactions, external
interfaces, files used.
Assess each for complexity and multiply by a weighting factor.
�
Programmer Productivity Metrics
Common measures:
�
Programmer Productivity Metrics (2)
More objective.
�
Programmer Productivity Metrics (3)
Software Design Metrics
Number of parameters
Number of modules.
�
Software Design Metrics (2)
Data Bindings
Triplet (p,x,q) where p and q are modules and X is variable
within scope of both p and q
Software Design Metrics (3)
Cohesion metric
- Highest cohesion is when all the independent paths use all the
variables in the module.
Management Metrics
2. Expert judgement
Management Metrics (2)
Algorithmic Cost Modeling
Evaluation of Management Metrics
Function points:
- Heavily biased toward a data processing environment
- Assessment of complexity factors leads to wide variations
in estimates.
Evaluation of Management Metrics (2)
No controlled experiments.
Evaluation of Management Metrics (3)