Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 4 Software Process and Project Metrics

Similar presentations

Presentation on theme: "Chapter 4 Software Process and Project Metrics"— Presentation transcript:

1 Chapter 4 Software Process and Project Metrics

2 Measure A measure is a mapping from a set of entities and attributes in the real word to a representation or model in the mathematical world. One can manipulate the numbers or symbols in the mathematical world to obtain more information and understanding about the real world.

3 Measurement process process metrics project metrics measurement
What do we use as a basis? • size? • function? project metrics process metrics process product product metrics

4 Measurement Advantage For software process For software project
For software engineer

5 Measures, Metrics & Indicators

6 Indicator Private indicator vs. Public indicator
Process and Project Indicator assess the quality of an ongoing project modify the technical approach to improve quality adjust work flow or tasks to avoid the delay track potential risks uncover problem areas evaluate the project team’s ability

7 Process Metrics Provide indicators – lead to long-term software process improvement Organization – gain insight into the efficacy of an existing process Managers and Practitioners -- assess what works and what doesn’t

8 Statistical Software Process Improvement (SSPI)
Failure analysis Categorize the defects Record the correcting cost Count and rank the defects Compute overall cost in each category Uncover the highest cost categories Develop the plan to modify the process

9 Statistical Software Process Improvement (SSPI)

10 Fishbone Diagram

11 Process Metrics Guidelines
Grady Use common sense and organizational sensitivity when interpreting metrics data. Provide regular feedback to the individuals and teams who have worked to collect measures and metrics. Don’t use metrics to appraise individuals. Work with practitioners and teams to set clear goals and metrics that will be used to achieve them. Never use metrics to threaten individuals or teams. Metrics data that indicate a problem area should not be considered “negative.” These data are merely an indicator for process improvement. Don’t obsess on a single metric to the exclusion of other important metrics.

12 Project Metrics Project Indicator Measure
Input -- sources required to do the work Output -- work products created during the process Results -- effectiveness of the deliverables Project Indicator Assess the Quality of an Ongoing Project Modify the Technical Approach to Improve Quality Adjust Work Flow or Tasks to Avoid the Delay Track Potential Risks Uncover Problem Areas Evaluate the project team’s ability Project metrics Errors uncovered per review hour Scheduled vs. actual milestone dates ….

13 Software Measurement Direct measures: Defects, LOC produced, execution speed, memory size… Indirect measures: quality, complexity, efficiency…

14 Typical Size-Oriented Metrics
Normalization value Metrics: errors per KLOC defects per KLOC $ per KLOC page of documentation per KLOC errors per person-month LOC per person-month $ per page of documentation

15 Typical Size-Oriented Metrics
Advantages easily counted Disadvantages programming language well-design late get data

16 Function-Oriented Metrics
Function Point countable (direct) measures of software’s information domain assessments of software complexity

17 Function Points (FP) Establish count for input domain and
Analyze information Establish count for input domain and domain of the application system interfaces and develop counts Weight each count by Assign level of complexity or weight assessing complexity to each count Assess influence of Grade significance of external factors, F i global factors that affect such as reuse, concurrency, OS, ... the application function points =C x (count x weight) Compute function points where: complexity multiplier: C = ( x N) degree of influence: N = F i

18 Function Points (FP)

19 Function Points (FP) Complexity adjustment values (Fi ; i = 1-14)
Does the system require reliable backup and recovery? Are data communications required? Are there distributed processing functions? : 14.

20 Function Points (Example)


22 Function-Oriented Metrics
errors per FP defects per FP $ per FP pages of documentation per FP FP per person-month )

23 Function-Oriented Metrics
Advantages programming language independent get data early Disadvantages subjective difficult to collect the data no direct physical meaning

24 Quality Metrics There are different answers for the characteristics of software that contribute to its overall quality. Users – external view Practitioners – internal view Build models to relate the user’s external view to the developer’s internal view of the software.

25 External quality Product quality

26 Metrics for Software Quality
Correctness — operate correctly (defects per KLOC) Maintainability — amenable to change (mean-time-to-change (MTTC)) Integrity — impervious to outside attack (integrity = Sum( 1- threat *(1-security))) Usability — easy to use (learning time, productivity, assessment of user…)

27 Defect Removal Efficiency (DRE)
For Project DRE = (errors) / (errors + defects) where errors = problems found before release defects = problems found after release DRE = (errors) / (errors + defects) For Process DRE i = (errors)i / (errors i + errors i+1)

28 Metrics Baseline Attributes of baseline data reasonably accurate
as many projects as possible consistent similar

29 Managing Variation (Control Chart Approach)
1 2 3 4 5 6 7 9 11 13 15 17 19 Project s E r , o f u n d / e v i w h FIGURE 4.8 Metrics data for errors uncovered per review hour

30 Moving Range Control Chart (stable)
UCL mR Mean of the moving Range (mR) = 1.71 Upper Control Limit (UCL) = mR * = 5.57

31 Individual Control Chart (control )
UNPL Am LNPL Upper Natural Process Limit (UNPL) = mR * Am = 8.55 Lower Natural Process Limit (LNPL) = mR * 2.66 – Am = 0.55 Standard deviation = (UNPL – Am) / 3 = 1.52

32 Individual Control Chart (control )
Out of control If any one of the following items is true A single metrics value lies outside the UNPL. Two out of three successive metrics values lie more than two standard deviations away from Am. Four out of five successive metrics values lie more than one standard deviation away from Am. Eight consecutive metrics values lie on one side of Am.

33 Metrics for Small Organizations
Keep the measurements simple. Tailor measurements to each organization. Ensure the measurements produces valuable information. The cost of collecting and computing metrics ranges from 3% to 8% of project budget during the learning face, then drops to less than 1%.

34 Software Metrics What is it?
A quantitative measure of the degree which a system, component, or process possesses an attribute. Why is it important? Objective evaluation, better estimates, true improvement… How does it? Collected  analyzedcomparedassessed Who does it? Collect Measures  software engineers Analyze and assess Metrics  software manager

35 Software Process and Project Metrics
What is it? Who does it? Why is it important? What are the steps? What is the work product? How to ensure it be done right?

Download ppt "Chapter 4 Software Process and Project Metrics"

Similar presentations

Ads by Google