NEW
Font size
WorksheetsSoftware Measurement
Total questions: 25
Worksheet time: 13mins
business objectives <-> data
Cost(dollars, effort)
schedule(duration)
functionality(size)
quality(defects)
V.R. Basili and D.M. Weiss, "A Methodology for Collecting Valid Software Engineering Data, ” IEEE Transactions on Software Engineering, November 1984.
Robert E. Park, Wolfhart B. Goethert, and William A. Florac, “Goal-Driven Software Measurement – A Guidebook, ” CMU/SEI-96-HB-002, August 1996.
John McGarry, David Card, et al., Practical Software Measurement: Objective Information for Decision Makers, Addison-Wesley, Boston, MA, 2002.
Goal/Question/Metric (GQM) paradigm
Robert E. Park, Wolfhart B. Goethert, and William A. Florac, “Goal-Driven Software Measurement – A Guidebook, ” CMU/SEI-96-HB-002, August 1996.
V.R. Basili and D.M. Weiss, "A Methodology for Collecting Valid Software Engineering Data, ” IEEE Transactions on Software Engineering, November 1984.
John McGarry, David Card, et al., Practical Software Measurement: Objective Information for Decision Makers, Addison-Wesley, Boston, MA, 2002.
Austin's Measuring and Managing Performance in Organizations
motivational versus information measurements
measure system is "perfect"
or motivational use is impossible
Motivational versus information measurements
Dysfunctional Behavior resulting from organizational measurements is inevitable unless
Deming and many other measurement experts strongly oppose performance measurement, merit, rating, management by objectives, etc.
motivational versus information measurements
measure system is "perfect"
or motivational use is impossible
Chapter 7 in Henry R. Neave, The Deming Dimension
would others be able to repeat the measurements and get the same results?
will others know what has been measured and what has been included and excluded?
An operational definition [is one] which reasonable men can agree on and do business with. Shewhart believed his work on operational definitions to have been of greater importance than his development of the theory of variation and of the control chart. There is no true value of anything.
Operational Definitions
The rules and procedures used to capture and record data
comments? Blank lines?
compiler directives? #define? #include?
variable declarations?
new, modified, deleted, reused code?
severity, criticality, impact of defects?
hours vs minutes
imperial vs metric
Communication
will others know what has been measured and what has been included and excluded
would others be able to repeat the measurements and get the same results
comments? blank lines?
Repeatability
comments? blank lines? - compiler directives? #define? #include? - variable declarations? integer i, j;?
would others be able to repeat the measurements and get the same results
will others know what has been measured and what has been included and excluded?
new, modified, deleted, reused code? - severity, criticality, impact of defects?
What is included in a line of code
peer review before or after compile / unit test
hours vs minutes - imperial vs metric
new, modified, deleted, reused code? - severity, criticality, impact of defects?
comments? blank lines? - compiler directives? #define? #include? - variable declarations? integer i, j;?
Park 1996
Dovetails with SEI’s adaptation of goal-driven software measurement
Checklist-based approach with strong emphasis on operational definitions
size (SLOC) (Park 1992)
Carleton 1992
effort
size
Dovetails with SEI's adaptation of goal-driven software measurement
Checklist-based approach with strong emphasis on operational definitions
SLOC(Park 1992)
size
effort
schedule
quality
Goethert 1992
schedule
effort
size
quality
Goethert 1992) not person hours
size
effort
quality
schedule
Florac 1992
effort
schedule
quality
size
Size
amount of work expended in person-months
duration of the project in calendar months
functionality produced for the time and effort expended
quantity of function, usually in SLOC or function points
Productivity
defect rate (or mean time to defect)
- functionality produced for the time and effort expended
duration of the project in calendar months
amount of work expended in person-months
Time
duration of the project in calendar months
amount of work expended in person-months
defect rate (or mean time to defect)
quantity of function, usually in SLOC or function points
Effort
functionality produced for the time and effort expended
duration of the project in calendar months
defect rate (or mean time to defect)
amount of work expended in person-months
Reliability
defect rate
amount of work expended in person-months
duration of the project in calendar months
Lines of code(LOC)
• at estimation, at design, at coding, at unit testing, at integration, at test readiness review, at system test complete
physical lines of code - (logical) source lines of code (SLOC, KSLOC) - statements - delivered source instructions (KDSI)
COSMIC (ISO/IEC 19761) - FiSMA (ISO/IEC 29881) - IFPUG (ISO/IEC 20926) - Mk-II (ISO/IEC 20968) - NESMA (ISO/IEC 24570) - Feature points
executable and/or non-executable code statements • code produced by programming, copying without change, automatic generation, and/or translation • newly developed code and/or previously existing code • product-only statements or also include support code • counts of delivered and/or non-delivered code • counts of operative code or include dead code • replicated code
Function Points(FP)
COSMIC (ISO/IEC 19761) - FiSMA (ISO/IEC 29881) - IFPUG (ISO/IEC 20926) - Mk-II (ISO/IEC 20968) - NESMA (ISO/IEC 24570) - Feature points
executable and/or non-executable code statements • code produced by programming, copying without change, automatic generation, and/or translation • newly developed code and/or previously existing code • product-only statements or also include support code • counts of delivered and/or non-delivered code • counts of operative code or include dead code • replicated code
at estimation, at design, at coding, at unit testing, at integration, at test readiness review, at system test complete
Whether to include or exclude
inputs (Inp ) • outputs (Out) • inquiries (Inq ) • master files (Maf) • interfaces (Inf)
at estimation, at design, at coding, at unit testing, at integration, at test readiness review, at system test complete
executable and/or non-executable code statements • code produced by programming, copying without change, automatic generation, and/or translation • newly developed code and/or previously existing code • product-only statements or also include support code • counts of delivered and/or non-delivered code • counts of operative code or include dead code • replicated code
When the code gets counted
executable and/or non-executable code statements • code produced by programming, copying without change, automatic generation, and/or translation • newly developed code and/or previously existing code • product-only statements or also include support code • counts of delivered and/or non-delivered code • counts of operative code or include dead code • replicated code
at estimation, at design, at coding, at unit testing, at integration, at test readiness review, at system test complete
inputs (Inp ) • outputs (Out) • inquiries (Inq ) • master files (Maf) • interfaces (Inf)
Albrecht (1979) based function points on the number of
Start small Provide adequate training Demonstrate commitment Minimize costs Adopt an action orientation Communicate
• inputs (Inp ) • outputs (Out) • inquiries (Inq ) • master files (Maf) • interfaces (Inf)
