Upload
goforjessica
View
232
Download
0
Embed Size (px)
Citation preview
8/3/2019 Chapter_04 Software Process and Project Metrics
1/18
1
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Chapter 4Chapter 4
Software Process and Project MetricsSoftware Process and Project Metrics
8/3/2019 Chapter_04 Software Process and Project Metrics
2/18
8/3/2019 Chapter_04 Software Process and Project Metrics
3/18
3
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Why do we Measure?Why do we Measure?
To characterizeTo characterize
To evaluateTo evaluate
To predictTo predict
To improveTo improve
8/3/2019 Chapter_04 Software Process and Project Metrics
4/18
8/3/2019 Chapter_04 Software Process and Project Metrics
5/18
5
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Product MetricsProduct Metrics
focus on the quality of deliverablesfocus on the quality of deliverables
measures of analysis modelmeasures of analysis model
complexity of the designcomplexity of the design internal algorithmic complexityinternal algorithmic complexity architectural complexityarchitectural complexity data flow complexitydata flow complexity
code measures (e.g., Halstead)code measures (e.g., Halstead)
measures of process effectivenessmeasures of process effectiveness e.g., defect removal efficiencye.g., defect removal efficiency
8/3/2019 Chapter_04 Software Process and Project Metrics
6/18
6
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Process MetricsProcess Metrics -- strategicstrategic
majority focus on quality achieved as amajority focus on quality achieved as aconsequence of a repeatable or managedconsequence of a repeatable or managedprocessprocess
statistical SQA datastatistical SQA data error categorization & analysiserror categorization & analysis
defect removal efficiencydefect removal efficiency propagation from phase to phasepropagation from phase to phase
reuse datareuse data
8/3/2019 Chapter_04 Software Process and Project Metrics
7/18
7
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Project MetricsProject Metrics --
tacticaltactical Effort/time per SE taskEffort/time per SE task
Errors uncovered per review hourErrors uncovered per review hour
Scheduled vs. actual milestone datesScheduled vs. actual milestone dates Changes (number) and their characteristicsChanges (number) and their characteristics
Distribution of effort on SE tasksDistribution of effort on SE tasks
8/3/2019 Chapter_04 Software Process and Project Metrics
8/18
8
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Normalization for MetricsNormalization for Metrics
Normalized data are used to evaluate the processand the product (but never individual people)
size-oriented normalization the line of code approach
function-oriented normalization the function pointapproach
8/3/2019 Chapter_04 Software Process and Project Metrics
9/18
9
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Typical SizeTypical Size--Oriented MetricsOriented Metrics
errors per KLOC (thousand lines oferrors per KLOC (thousand lines ofcode)code)
defects per KLOCdefects per KLOC
$ per LOC$ per LOC page of documentation per KLOCpage of documentation per KLOC
errors / personerrors / person--monthmonth
LOC per personLOC per person--monthmonth
$ / page of documentation$ / page of documentation
8/3/2019 Chapter_04 Software Process and Project Metrics
10/18
8/3/2019 Chapter_04 Software Process and Project Metrics
11/18
11
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Computing Function PointsComputing Function PointsAnalyze information
domain of theapplicationand develop counts
Weight each count byassessing complexity
Assess influence ofglobal factors that affectthe application
Computefunction points
Establish count for input domain andsystem interfaces
Assign level of complexity or weight to each count
Grade significance of external factors, Fsuch as reuse, concurrency, OS, ...
degree of influence: N = Fi
complexity multiplier: C = (0.65 + 0.01 x N)
function points = (count x weight) x Cwhere:
i
8/3/2019 Chapter_04 Software Process and Project Metrics
12/18
12
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Analyzing the Information DomainAnalyzing the Information Domain
complexity multiplier
function points
number of user inputs
number of user outputs
number of user inquiries
number of files
number of ext.interfaces
measurement parameter
3
4
3
7
5
countweighting factor
simple avg. complex
4
5
4
10
7
6
7
6
15
10
=
=
=
=
=
count-total
X
X
X
X
X
8/3/2019 Chapter_04 Software Process and Project Metrics
13/18
13
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Taking Complexity into AccountTaking Complexity into Account
Factors are rated on a scale of 0 (not important)to 5 (very important):
data communications
distributed functionsheavily used configurationtransaction rateon-line data entryend user efficiency
on-line update
complex processinginstallation easeoperational easemultiple sitesfacilitate change
8/3/2019 Chapter_04 Software Process and Project Metrics
14/18
14
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
8/3/2019 Chapter_04 Software Process and Project Metrics
15/18
15
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Why Opt for FP Measures?Why Opt for FP Measures?
independent of programming language
uses readily countable characteristics of the"information domain" of the problem
does not "penalize" inventive implementations thatrequire fewer LOC than others
makes it easier to accommodate reuse and the
trend toward object-oriented approaches
8/3/2019 Chapter_04 Software Process and Project Metrics
16/18
16
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Measuring QualityMeasuring Quality
CorrectnessCorrectness the degree to which a programthe degree to which a programoperates according to specificationoperates according to specification
MaintainabilityMaintainabilitythe degree to which athe degree to which a
program is amenable to changeprogram is amenable to change IntegrityIntegritythe degree to which a program isthe degree to which a program is
impervious to outside attackimpervious to outside attack
UsabilityUsabilitythe degree to which a program isthe degree to which a program iseasy to useeasy to use
8/3/2019 Chapter_04 Software Process and Project Metrics
17/18
17
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Defect Removal EfficiencyDefect Removal Efficiency
DRE = (errors) / (errors + defects)
where
errors = problems found before release
defects = problems found after release
8/3/2019 Chapter_04 Software Process and Project Metrics
18/18
18
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 5/e and areprovided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001
Managing VariationManaging Variation
0
1
2
3
4
5
6
1 3 5 7 9 11 13 15 17 19
Projects
Er,Erro rs fo u nd /
re vie w
ho u r
The mR Control Chart