software projects benchmarking & estimation: contributions of cosmic function points ·...

28
SOFTWARE PROJECTS BENCHMARKING & ESTIMATION: CONTRIBUTIONS OF COSMIC FUNCTION POINTS Alain Abran, Ph.D. with contributions from Charles Symons & Sylvie Trudel 5 th International Conference on IT Data collection, Analysis, Benchmarking and Cost Estimation, Beijing (China) Sept. 20, 2017.

Upload: phunghuong

Post on 17-May-2018

222 views

Category:

Documents


1 download

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!

1st Generation of Function Points

Function Points (FP)

3 FP 4 FP

6 FP

6

= ?

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

Print

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

COSMIC data from Industry 18

COSMIC method in Automotive embedded software By: Sophie Stern

Renault

Data from Renault - 2012 19

© Copyrights Renault 2012

Data from Renault – 2012 20

© Copyrights Renault 2012

Renault: Estimation & Negociations 21

© Copyrights Renault 2012

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