software projects benchmarking & estimation: contributions of cosmic function points ·...
TRANSCRIPT
SOFTWARE PROJECTS BENCHMARKING
& ESTIMATION: CONTRIBUTIONS OF
COSMIC FUNCTION POINTS
Alain Abran, Ph.D.
with contributions from Charles Symons & Sylvie Trudel
5th International Conference on IT Data collection, Analysis, Benchmarking and Cost Estimation, Beijing (China) Sept. 20, 2017.
Presenter background - Alain Abran 2
20 years 25 years
Development Maintenance Process Improvement
ISO: 19761,
9126, 25000, 15939, 14143, 19759
+ 40 PhD
Agenda 3
Software Sizing options for Benchmarking &
Estimation
Versatility of COSMIC Function Points
Contributions of COSMIC to Benchmarking &
Estimation
Copyright: COSMIC & Authors 2017
Software Sizing Options for Benchmarking
& Estimation 4
Lines of code: X Can’t estimate until software designed X Technology-dependent, no standards
Functional size (Function Points):
International standard methods Technology-independent
Usecase Points, Object Points, ..
X Technology dependent, no standards X Mathematical validity?
Story Points X Entirely subjective
1st Generation of Function Points
5
Tables of weights:
Inputs - Matrix Output & Enquiries –
Shared Matrix
Transactions: weights in
FP (Function Points)
3 FP 4 FP
6 FP
3-step size range
Key limitations: - Only 3 values - Limited ranges (min,max) - No single measurement unit of 1 FP!
2nd Generation of Function Points:
COSMIC measurement scale 7
7
COSMIC Function Points - CFP
1 CFP 2
3 4
5 6
7 8
9 10
11 …
No arbitrary max
A single CFP exists and is well defined
Copyright: COSMIC & Authors 2017
2nd Generation of Function Points
All software does this:
Software being
measured
Boundary
Functional Users types: 1. Humans 2. Hardware devices 3. Other software
Entries
Exits
Reads Writes
Persistent storage
The ‘Data Movement of 1 data group’ is the unit of measurement: 1 CFP (1 CFP = 1 COSMIC Function Point)
8
COSMIC view of software
Functional process: example with a
sequence diagram
9
W
R (for validation)
Size = 9 CFP
FP of App X being measured
FP of Software Functional User of App Y
X Message to the other software E
E Reply from the other software X
Human Functional
User
Boundary Boundary
E Triggering
E Another
Error msg. X
Total X
Item detail X
Copyright: COSMIC & Authors 2017
Agenda 10
Software Sizing options for Benchmarking &
Estimation
Versatility of COSMIC Function Points
Contributions of COSMIC to Benchmarking &
Estimation
Copyright: COSMIC & Authors 2017
Versatility - at any level of software requirements
Middleware Layer (Utilities, etc)
Operating System Layer
Keyboard
Driver
Screen
Driver
VDU
Screen Keyboard Hardware
Disk
Driver
Hard Disk
Drive
Driver
Printer Central
Processor
Database Management
System Layer DBMS 1 DBMS 2
App 1 Application Layer App 2 App ‘n’
11
COSMIC supporting documentation
Copyright: COSMIC & Authors 2017
19761
COSMIC ISO Standard
COSMIC Measurement
Manual 4.0.1
TThhee CCOOSSMMIICC FFuunnccttiioonnaall SSiizzee MMeeaassuurreemmeenntt MMeetthhoodd
VVeerrssiioonn 44..00..11
GGuuiiddeelliinnee ffoorr SSiizziinngg
BBuussiinneessss AApppplliiccaattiioonn SSooffttwwaarree
VERSION 1.3a
Febuary 2016
Guidelines per application
type & development
approach
Business applications
Real-time/embedded
Data Warehouse
SOA
Mobile apps
Web
Agile Development
Case studies
Certification
Available in 11 languages, including Chinese
at www.cosmic-sizing.org
COSMIC Case Studies at www.cosmic-sizing.org
13
Real-time: Rice cooker
Automatic line switching
Valve control
Business: Course registration (distributed)
Restaurant management (web & mobile phone)
Banking web advice module
Car hire (existing legacy app.)
Agile: sizes can be measured at all levels &
aggregated up to the system size
14
COSMIC size measurement is usable for: • Early Total software sizing & effort
estimation • US, Sprint, …. sizing & estimation • Progress control at any level
Sprint
Release
System
User Story (new &/or re-work)
Copyright: COSMIC & Authors 2017
Functional
User
Requirements
Data
Movement
s
Function
al
Process
es
Function
al User Even
t
Early or Rapid Sizing with COSMIC 15
When requirements are not yet written in details:
A Guideline describing a range of
Approximate Sizing methods
• 8 Approaches defined
The COSMIC Functional Size Measurement Method
Version 4.0.1
GGuuiiddeelliinnee ffoorr EEaarrllyy oorr RRaappiidd
CCOOSSMMIICC FFuunnccttiioonnaall SSiizzee
MMeeaassuurreemmeenntt bbyy uussiinngg aapppprrooxxiimmaattiioonn aapppprrooaacchheess
July 2015 Copyright: COSMIC & Authors 2017
16
You do estimation upfront with a lot of uncertainty
Organization Data Repository
The COSMIC Functional Size Measurement Method
Version 4.0.1
GGuuiiddeelliinnee ffoorr EEaarrllyy oorr RRaappiidd
CCOOSSMMIICC FFuunnccttiioonnaall SSiizzee
MMeeaassuurreemmeenntt bbyy uussiinngg aapppprrooxxiimmaattiioonn aapppprrooaacchheess
July 2015
Estimation with COSMIC Function Points
Agenda 17
Software Sizing options for Benchmarking &
Estimation
Versatility of COSMIC Function Points
Contributions of COSMIC to Benchmarking &
Estimation
Copyright: COSMIC & Authors 2017
Renault - Remarkable cost estimation accuracy
from its ECU software specifications
Cost vs size (CFP)
Memory size vs software size (CFP)
22
Canada: Security & Surveillance Software [5]
23
Supplier used Scrum - 3 weeks iterations
Customer requests for new or changed functions
‘Poker planning’ to estimate backlog items in Story Points (& converted directly in work-hours)
24 tasks from 9 iterations with estimated & actual effort
Re-measured in COSMIC Function Points
Security & Surveillance Software
0
20
40
60
80
100
120
140
160
180
200
0 20 40 60 80 100 120 140 160 180 200
Act
ual
Eff
ort
(hou
rs)
Estimated Effort (Hours)
Effort = 0.47 x Story Points + 17.6 hours and R2 = 0.33)
Story Points
24
Security & Surveillance software with COSMIC
Function Points
0
20
40
60
80
100
120
140
160
180
200
0 10 20 30 40 50 60 70 80
Act
ual
Eff
or
(Ho
urs
)
Functional Size in CFP
Y = 2.35 x CFP - 0.08hrs and R2 = 0.977)
25
0
20
40
60
80
100
120
140
160
180
200
0 20 40 60 80 100 120 140 160 180 200
Act
ual
Eff
ort
(hou
rs)
Estimated Effort (Hours)
Effort = 0.47 x Story Points + 17.6 hours and R2 = 0.33)
Story Points COSMIC
Other sources of COSMIC examples with industry
data
26
COSMIC web site at: www.cosmic-sizing.org
Conclusion 27
COSMIC Function Points correlate very well with effort & code size
Used in a number of countries:
Business, real-time & infrastructure software
‘Measurement Manual’ available for FREE in 11 languages
50% of known users are software houses
> 30,000 downloads of research & conference papers
ISO 19761 standard endorsed by:
Governments (China, Japan, Mexico, Poland)
GAO – USA Government Accountability Office
NIST – USA National Institute of Standard and Technology
Copyright: COSMIC & Authors 2017
Thank you for your attention
(www.cosmic-sizing.org)
Alain Abran, Ph.D.
28