effort estimation with full function points – practical ... cosmic functional size measurement is...

26
Effort Estimation with Full Function Points – Practical Experiences and Guidelines Christof Ebert, Vector Consulting Services Hassan Soubra, ESTACA, France

Upload: lediep

Post on 08-Jun-2018

225 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

Effort Estimation with Full Function Points –Practical Experiences and GuidelinesChristof Ebert, Vector Consulting ServicesHassan Soubra, ESTACA, France

Page 2: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

4/35

Agenda

Introduction

Estimation Principles

Functional Size Measurement and Function Points

Case Study

Summary and Conclusions

Page 3: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

5/35

Estimation – Daily Life

How much time does the blue car need to its final destination?

It depends on several parameters: distance to drive

(quantitative: Km, absolute scale)

average speed (quantitative, ratio scale)

weather conditions (qualitative: ordinal scale)

traffic jams (unpredictable: risk to be evaluated)

Page 4: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

6/35

Estimation – Daily Life (At Least Ours)

How much effort will the project need to complete

It depends on several parameters, such as: functional size

(quantitative: absolute scale) typical productivity

(quantitative, ratio scale) employee motivation

(qualitative: ordinal scale) supplier delays

(unpredictable: risk to be evaluated)

…Project size (FPs)

Person years

Effort

1

5

10

50

50 100 500

Page 5: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

7/35

Agenda

Introduction

Estimation Principles

Functional Size Measurement and Function Points

Case Study

Summary and Conclusions

Page 6: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

8/35

Goals, Estimates and Plans

Goals External Business needs Examples:

requirements, target cost

Estimates Internal Constrained by

dependencies, uncertainties

Examples:effort, duration

Plan Break-down of a goal to activities

and milestones in order to reach this goal

Relates goals and estimates to best possibly reach the goals

Approach: Win-win Needs clear commitments of all

impacted stakeholders

Understand,adapt,commit

Page 7: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

11/35

Use Predictions to Assess Risks, Feasibility and Progress

Assess supplier viability, contract reliability, cost and product quality – independent whether it is components or outsourcing

Standard estimation techniques and tools (e.g., COSMIC FP, QSM) for feasibility, health and cost

Risk assessments upfront and during the project

Predictions for progress related to your needs

External audits if you don’t trust process quality

Earned Value

100%

Pro-gress

0%

Planned value

Actual cost

0% Calendar time today 100%

Current value: -15% Schedule variance10% Cost varianceEarned value

Project start Calendar time

100%

Defects

0%

Expected defects Tolerance intervalQuality

Detected defects

Size (FPs)

Effort

50 100 5001

5

10

50 HistoryForecast

Current plan

Feasibility

Page 8: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

12/35

Agenda

Introduction

Estimation Principles

Functional Size Measurement and Function Points

Case Study

Summary and Conclusions

Page 9: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

13/35

Functional Change Requests Between Customer and Supplier

SW change request

Effort estimation

Bench-marking

Page 10: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

14/35

Functional Size Measurement and Function Points

Function Point method application

Requirements,change requests

Effort estimation,accuracy levels

Analysis and translation

Modeling and mapping

Unadjusted functional size

Adjusted functional size

Measure-mentcontext

Mapping rules

Estimation method

Proprietary para-meters

Note: COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional size measurement and COSMIC function points

Page 11: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

16/35

Need for Defined and Repeatable Development Process

Development process:

Defined process with known parameters

Configuration management:

Consistent documentation of

all changes

Qualitymanagement:

Consistent level of reviews, test,

regression, etc.

Project management:

Consistent tracking of all activity categories

SW moduletest

SW requirements analysis

SW moduledesign

SW moduleimplementation

SW validation before delivery

SW architecturedesign

SW integration andintegration test

Functional change request

Page 12: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

17/35

Need for Consistent Specification of Requirements and Design

SW moduletest

SW requirements analysis

SW moduledesign

SW moduleimplementation

SW validation before delivery

SW architecturedesign

SW integration andintegration test

Functional change request

Requirements and design

specification:Consistent level of

documentation

Modeling:Same method,

notation, semantics and

visibility

Change documentation:All changes are

covered and clearly marked

Page 13: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

21/35

Generic Rules for Measuring Functional Size

Ensure consistent application of a defined process during analysis of functional requirements and their mapping to a design proposal in the modeling language.

Ensure a consistent effort reporting. Focus on the changed part only. No mix of different variants. Always the same tasks are detailed.

Always determine functional size on same level of detail. Each data movement is rated with 1 function point. Data movements are counted once. For changes only changed data movements are counted.

There is no automatic standard for counting because each modeling approach and environment need specific “translations”.

Insufficient data quality and environmental constraints need experienced counting to avoid errors and weakening the method.

Page 14: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

22/35

Specific Rules for Functional Size of Embedded Systems

Data Flow All external data movements (e.g. external signals)which are variables (read/write) are

counted. Inputs that are used several times are counted only once. Do not count fixed external values (e.g., 0,1,2,..) that are changing (e.g., before: C=1,

after: C=2) or that are used for comparisons only (e.g., C>1). Data type conversion, unit changes etc. are not counted. Measurement points, which are not part of regular functionality, are not counted.

State Machine State machine automatically count 1R and 1W. Count 1X for the data (variable) leaving the state machine. Count 1E for the data (variable) coming from outside the state machine. Unique Data staying in the state-flow is not counted.

Hierarchy E and X data movements are only counted on the lowest abstraction level, not again on

the higher level. Reuse

Internal reuse: If the same pattern is used at different places in the same context, with exactly same structure (flow, labels, operations), it is only counted once.

External reuse: If a structure is reused from a different context as copy-paste without changes, it is counted with a fixed FP amount (typically 1-3 FPs) which depends on integration effort, complexity, availability of test cases.

Page 15: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

23/35

Agenda

Introduction

Estimation Principles

Functional Size Measurement and Function Points

Case Study

Summary and Conclusions

Page 16: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

24/35

Case Study: Focus on Functional Changes

in 1

&

x

Function 1

const 2

out 1=

+

const 1

in 2

in 3

false

out 2

in 4

in 5

Functional Change

Initial structure BEFORE the change

Page 17: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

25/35

Case Study: Levels of Hierarchy

in 1

&

x

Function 1

const 2

out 1=

+

const 1

in 2

in 3

false

out 2

in 4

in 5

Function 1

+

in 4

in 6

out 1&

in 7

2 Levels of Hierarchy are described in this sample

functional change request

Page 18: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

26/35

Case Study: Measuring Functional Size of Changes

in 1

&

x

Function 1

const 2

out 1=

+

const 1

in 2

in 3

false

out 2

in 4

in 5

Function 1

+

in 4

in 6

out 1&

in 7

1

1

1

1

1

1

1

SizeFP (Change) = size(added data) + size(modified data) + size(deleted data) = 7

1

Initial structure BEFORE the change. Not counted.

= 1 FP

(Function Point)

in 6

in 7

Page 19: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

27/35

Case Study: Mapping Functional Size to Effort

Unadjusted Functional Size

Effort

Model application(Filter criteria, environmental factors, mapping size to effort)

Project size (in FP)

Project effort

Page 20: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

28/35

FP Counting is the Beginning and not the End

Experience database (projects with the same context)Predicted project parametersCurrently planned project parameters

Project effort

Person years

Project size (FPs)

Note: Relationship of Function Points to duration and effort needs always to be tailored to environmental conditions.

Possible explanations for lower effort compared to predictive model:

Unrealistic estimation

Bad reporting

Better performance

Lower overhead cost

?

Page 21: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

29/35

Agenda

Introduction

Estimation Principles

Functional Size Measurement and Function Points

Case Study

Summary and Conclusions

Page 22: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

30/35

Benefits of Function Points

Agreed model for measuring functional size

Solid baseline for benchmarking

Transparent effort estimations on the basis of functional changes

Ad-hoc and fuzzy evaluations and negotiations for single SW changes are reduced

Significantly increased efficiency and trust for better collaboration between supplier and customer

SW change requests

Effort estimation

Bench-marking

Page 23: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

32/35

Recommendations – Method

Consider business impacts Clearly distinguish goals, estimates and plans Improve estimation accuracy in line with your business needs

Establish repeatability Immature processes invalidate your overall estimation and ruin trust Establish a robust process to report and store data

Use estimation to grow Continuously improve. Don’t stay with the same parameters for longer than one year. Challenge results and improve your efficiency each year

We achieved with many clients a preciseness of 10-20% within one year, which in most cases is sufficient.

Page 24: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

33/35

Recommendations – Tools

A fool with a tool remains a fool Garbage in, garage out Clarify the underlying data collection and estimation approach Never use a tool to camouflage insufficient process (“the tools says so”)

Data is the resource, measurement brings the value. Verify and validate data before storing in history databases Use standard measurements (e.g. what is a FP or a defect?) Always analyze data to add information for the decision-making process

Carefully introduce an estimation tool Consider Total Cost of Ownership (TCO) Provide adequate training and coaching on estimation principles

Do not rely on a tool, if there is no mature development process. Rather coach management and push for keeping commitments.

Page 25: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

© 2014 . Vector Consulting Services GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V 1.0. 2014-11-02.

34/35

More Information

Software MeasurementEstablish, Extract, Evaluate, Execute

by Christof Ebert and Reiner Dumke561 pages, Springer, 2007.

The book to support this keynote with backup data, case studies and industry experiences – for better performance.

“Few organizations have really institutionalized measurement of their products and processes. This book is bang up-to-date in both fields and packed with practical advice. For every software engineer." - Charles R. Symons

Page 26: Effort Estimation with Full Function Points – Practical ... COSMIC functional size measurement is based on the ISO 19761. We refer here to COSMIC and Function Points covering functional

Contact us – we would be happy to support you!Phone +49 711 80670-0 www.vector.com/consultingFax +49 711 80670-444 [email protected]