Why Do We Measure? assess the status of an ongoing project track potential risks uncover problem areas before they go “critical,” adjust work flow or tasks, evaluate the project team’s ability to control quality of software work products. California State University, cs437, Fall 2007
Typical Project Metrics Effort/time per software engineering task Errors uncovered per review hour Scheduled vs. actual milestone dates Changes (number) and their characteristics Distribution of effort on software engineering tasks California State University, cs437, Fall 2007
Typical Size-Oriented Metrics errors per KLOC (thousand lines of code) defects per KLOC $ per LOC pages of documentation per KLOC errors per person-month Errors per review hour LOC per person-month $ per page of documentation California State University, cs437, Fall 2007
Typical Function-Oriented Metrics errors per FP (Function Point) defects per FP $ per FP pages of documentation per FP FP per person-month California State University, cs437, Fall 2007
Why Opt for FP? Programming language independent Used readily countable characteristics that are determined early in the software process Does not “penalize” inventive (short) implementations that use fewer LOC that other more clumsy versions Makes it easier to measure the impact of reusable components California State University, cs437, Fall 2007
Comparing LOC and FP Representative values developed by QSM (Quantitative Software Management) California State University, cs437, Fall 2007
Conventional Methods: LOC/FP Approach compute LOC/FP using estimates of information domain values use historical data to build estimates for the project California State University, cs437, Fall 2007
Example: LOC Approach Average productivity for systems of this type = 620 LOC/pm. Burdened labor rate =$8000 per month, the cost per line of code is approximately $13. Based on the LOC estimate and the historical productivity data, the total estimated project cost is $431,000 and the estimated effort is 54 person-months. California State University, cs437, Fall 2007
Example: FP Approach The estimated number of FP is derived: FPestimated = count-total 3 [0.65 + 0.01 3 S (Fi)] FPestimated = 375 organizational average productivity = 6.5 FP/pm. burdened labor rate = $8000 per month, the cost per FP is approximately $1230. Based on the FP estimate and the historical productivity data, the total estimated project cost is $461,000 and the estimated effort is 58 person-months. California State University, cs437, Fall 2007