Project Control using functional size - which method to use?

27
Project control based on functional size Which method to use? Harold van Heeringen UKSMA conference (London, November 8, 2012)

description

Project Control is one of the most difficult tasks of a project manager. To assess whether a project is still on track is very difficult because the team members often report overconfident status reports. Using functional size and specialized tooling, like QSM Control or SEER PPMC, helps the project manager to get a real good understanding of the status of the project. These tools produce accurate forecasts and offer the possibility to do what-if analysis in order to select the best way to get a project back on track. In this presentation, it is examined which method would produce the best results, NESMA or IFPUG FPA or COSMIC FPA.

Transcript of Project Control using functional size - which method to use?

Page 1: Project Control using functional size - which method to use?

Project control based on functional size

Which method to use?

Harold van Heeringen

UKSMA conference(London, November 8, 2012)

Page 2: Project Control using functional size - which method to use?

2

Harold van Heeringen

• Short intro:− Sogeti Nederland BV senior consultant software metrics

− ISBSG president

− NESMA board member

− NESMA working group chair COSMIC

− NESMA working group chair Benchmarking

− COSMIC IAC member

Harold van HeeringenSizing, Estimating & [email protected] @haroldveendam @Sogeti_SEC

Page 3: Project Control using functional size - which method to use?

3

Agenda

• Parametric project control

• Product size ready

• Differences IFPUG vs. COSMIC relevant for Project control

• Experiment: Project control with two methods

• Conclusions

Page 4: Project Control using functional size - which method to use?

4

Project Management

• Project Estimation− Parametric estimates based on (COSMIC) FP

− Effort hours, duration, staff, defects

− Galorath SEER-SEM / QSM SLIM Estimate / other tools

Productivity (PDR = hours/FP) that is expected

• Project Planning− Transform the estimate into the plan

• Project Control− Track the status based on FP

− Do we meet our expected PDR?

− Forecasting based on actuals

Staff & Effort Variance

FTE Staff

2 4 6 8 10 12 14 1629-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09

0

2

4

6

8

ppl

Date 14-8-2010 (11,57 weeks)

Avg Staff Life Cycle (ppl)Cum Effort Life Cycle (MHR)PIMBI

Plan5,2

1.787,820,8

5,3

Actual5,3

1.812,020,6

5,3

Diff0,1

24,2-0,20,0

Cum Effort Life Cycle

2 4 6 8 10 12 14 1629-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09

0

500

1.000

1.500

2.000

2.500

3.000

3.500

MH

R

Current Plan Actuals Green Control Bound Yellow Control Bound Project: Project XYZ

Page 5: Project Control using functional size - which method to use?

5

Project Control

• How do Project managers manage their software realization project?− Administration of effort hours (weekly)− Compare effort hours against planned hours (weekly)

• Project status− If more hours than planned have been spent, we must be

ahead of schedule, right?− If less hours than planned have been spent, the project is

easier than expected, right?

• To measure hours is easy, but what about 'product delivered'?

Page 6: Project Control using functional size - which method to use?

6

Inaccurate project status

•Most used:− How many hours do you need to finish ‘activity X’?

− Expert estimate/judgment is used to assess the status of the ‘work done’

− PM collects the status of all people and aggregates this info into a status report

• Problem: − experts are usually optimistic, underestimating the work

that still needs to be done

◦ Documenting, bug fixing, 2nd round of testing, etcetera

• Result:− Inaccurate status until very late in the project !

Page 7: Project Control using functional size - which method to use?

7

Parametric project control

• Control the project, using functional size for the 'product ready'

• Project status:− Effort hours spent vs. effort hours planned− Actual functional size ready vs. planned functional size

ready − Forecasting based on the actuals

• Galorath SEER-SEM− Parametric Project Monitoring & Control tool (PPMC)

• QSM SLIM Control− Part of the QSM SLIM toolsuite

Page 8: Project Control using functional size - which method to use?

8

How the tools work

1. Put in the baseline plan− Start and end date

− Milestone dates

− Effort hours planned

− Product size to be delivered in (C) FP

2. Record actuals (every week / 2 weeks)− Effort hours

− Dates

− Defects

− Product size ready in (C) FP

3. Forecast project results

4. Calculate corrective actions

Page 9: Project Control using functional size - which method to use?

9

Project control

• Putting in the baseline plan is easy (project plan of the PL)

• Collecting actual hours, milestone dates and defects is also fairly easy

•Measuring the ‘product size ready’ is more complicated− When is an EI ready? When is an EIF ready?

− How can we objectively assess a function point being ready?

•Function point ready – after the programmer reports it ready for systems testing

•Measuring the correct ‘product size ready’ is crucial for Project Control

Page 10: Project Control using functional size - which method to use?

10

Product size ready

•Multiple methods to measure ‘product size ready’

• Technical: SLOCs− Easy to measure actuals, but hard to predict/estimate total

− Baseline plan slocs is inaccurate, but actuals are accurate

• Functional: (COSMIC) Function Points− Harder to measure, based on quality of documentation

− Baseline plan and actuals can both be accurately measured

•Which functional size measurement method is most accurate?

Page 11: Project Control using functional size - which method to use?

11

NESMA/IFPUG vs. COSMIC

Characteristic NESMA/IFPUG FPA COSMIC

Applicable on domain Business software Business / Real-time / Infrastructure software

Data model required? Required Not required (but very handy)

Measurement of separate components

Not possible Possible

Size limit per function Yes Size is not limited

Benchmarking data ISBSG (aug 12), n= 4316 ISBSG (aug 12), n=446

Measurement of processing functionality

No No, but local extension is possible

Early sizing Based on data model Based on process model

Page 12: Project Control using functional size - which method to use?

12

Functional complexity

• IFPUG/NESMA does not really measure differences in functional complexity− EI: 3,4 or 6 FP (never less than 3, never more than 6)− EO: 4,5 or 7 FP (never less than 4, never more than 7)

• But: in real life functions can differ from very low complexity − e.g. drop down list ‘Client’ (EO: 1 FTR, 2 DET, 4 FP)

…to very complex− e.g. to make a new insurance contract perhaps clicking

through 5 screens: (EI: 8 FTR, 121 DET, 6 FP)

• Difference in FP does not reflect difference in effort needed.

Page 13: Project Control using functional size - which method to use?

13

COSMIC and Project control

• Theoretically, COSMIC should be the better method to use for Project Control

• The data model does not explicitly get points. − In project control, it’s difficult to assess status regarding the

realization of the data model (When is an EIF ready?).

• The functional processes are not restricted in size− E.g. drop down list Client: 3 CFP (EO: 4 FP)− Make a new insurance contract: 38 CFP (EI: 6 FP)

• Difference in size reflects the difference in effort needed more realistically

Page 14: Project Control using functional size - which method to use?

14

Some examples

User Function IFPUG type

IFPUG size

COSMIC type

COSMIC size

Add customer EI 3 FPFunctional Process

8 CFP

Change customer EI 4 FP

Functional Process

7 CFP

Delete customer EI 3 FP

Functional Process

4 CFP

Show revenue per customer and region EO 7 FP

Functional Process

12 CFP

Customer ILF 7 FP - 0

Page 15: Project Control using functional size - which method to use?

15

Case: Government agency

• Project name: XYZ

• Programming language: Java

• Development method: waterfall

• Functional size: − 371 FP (IFPUG)− 494 CFP (COSMIC)

• Effort hours planned: 2.505 hours

• Planned start date: 26-05-2010

• Planned end date: 12-09-2010CONST. &

TESTIFPUG

FPCOSMIC

FPHours

planned Start date End dateProject XYZ 371 494 2505 26-5-2010 12-09-2010

Page 16: Project Control using functional size - which method to use?

16

The IFPUG plan

SEI Core Metrics

Schedule

2 4 6 8 10 12 14 1629-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09

Construct & Test

Phases

Size

2 4 6 8 10 12 14 1629-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09

0

100

200

300

400

500

FP

Cum Effort Life Cycle

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1629-05

'1005-06 12-06 19-06 26-06 03-07 10-07 17-07 24-07 31-07 07-08 14-08 21-08 28-08 04-09 11-09 18-09

0

500

1.000

1.500

2.000

2.500

3.000

3.500

MH

R

Current Plan Actuals Current Forecast Green Control Bound Yellow Control Bound Project: Project XYZ

Page 17: Project Control using functional size - which method to use?

17

The COSMIC plan

SEI Core Metrics

Schedule

2 4 6 8 10 12 14 1629-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09

Construct & Test

Phases

Size

2 4 6 8 10 12 14 1629-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09

0

100

200

300

400

500

600

700

FP

Cum Effort Life Cycle

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1629-05

'1005-06 12-06 19-06 26-06 03-07 10-07 17-07 24-07 31-07 07-08 14-08 21-08 28-08 04-09 11-09 18-09

0

500

1.000

1.500

2.000

2.500

3.000

3.500

MH

R

Current Plan Actuals Current Forecast Green Control Bound Yellow Control Bound Project: Project XYZ

Page 18: Project Control using functional size - which method to use?

18

After 4 weeks: forecast IFPUG

• First ActualsMetric Plan Actual Difference Hours spent 238 294 +56

IFPUG FP ready 99 80 -19

COSMIC FP ready 132 130 -2 SEI Core Metrics

Schedule

2 4 6 8 10 12 14 16 1829-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09 02-10

Construct &...

Phases

Size

2 4 6 8 10 12 14 16 1829-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09 02-10

0

100

200

300

400

500

FP

Cum Effort Life Cycle

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1829-05

'1005-06 12-06 19-06 26-06 03-07 10-07 17-07 24-07 31-07 07-08 14-08 21-08 28-08 04-09 11-09 18-09 25-09 02-10

0

500

1.000

1.500

2.000

2.500

3.000

3.500

MH

R

Current Plan Actuals Current Forecast Green Control Bound Yellow Control Bound Project: Project XYZ

Page 19: Project Control using functional size - which method to use?

19

After 4 weeks: forecast COSMIC

• First ActualsMetric Plan Actual Difference Hours spent 238 294 +56

IFPUG FP ready 99 80 -19

COSMIC FP ready 132 130 -2 SEI Core Metrics

Schedule

2 4 6 8 10 12 14 1629-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09

Construct & Test

Phases

Size

2 4 6 8 10 12 14 1629-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09

0

100

200

300

400

500

600

700

FP

Cum Effort Life Cycle

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1629-05

'1005-06 12-06 19-06 26-06 03-07 10-07 17-07 24-07 31-07 07-08 14-08 21-08 28-08 04-09 11-09 18-09

0

500

1.000

1.500

2.000

2.500

3.000

3.500

MH

R

Current Plan Actuals Current Forecast Green Control Bound Yellow Control Bound Project: Project XYZ

Page 20: Project Control using functional size - which method to use?

20

Forecast after 4 weeks

• Project manager thinks everything is OK

• Team members agree

Metric Plan Forecast Overrun/underrun Based on IFPUG FP

Hours 2.505 2.933 +428 hours (+17%) Schedule 12-09-2010 26-09-2010 2 weeks

Based on COSMIC FP

Hours 2.505 2.601 +96 hours (+4%) Schedule 12-09-2010 14-09-2010 2 days

Page 21: Project Control using functional size - which method to use?

21

Actuals after week 8: Forecast IFPUG

Metric Plan Actual Difference Hours spent 941 982 +41

FP ready 279 252 -27

COSMIC FP ready 371 366 -5 SEI Core Metrics

Schedule

2 4 6 8 10 12 14 1629-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09

Construct & T...

Phases

Size

2 4 6 8 10 12 14 1629-05

'1012-06 26-06 10-07 24-07 07-08 21-08 04-09 18-09

0

100

200

300

400

500

FP

Cum Effort Life Cycle

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1729-05

'1005-06 12-06 19-06 26-06 03-07 10-07 17-07 24-07 31-07 07-08 14-08 21-08 28-08 04-09 11-09 18-09 25-09

0

500

1.000

1.500

2.000

2.500

3.000

3.500

MH

R

Current Plan Actuals Current Forecast Green Control Bound Yellow Control Bound Project: Project XYZ

Page 22: Project Control using functional size - which method to use?

22

Forecast after 8 weeks

• PM still thinks everything is on track, but is getting a little nervous

• Team members still agree

Metric Plan Forecast Overrun/underrun Based on IFPUG FP

Hours 2.505 2.991 +486 hours (+19%) Schedule 12-09-2010 24-09-2010 12 days

Based on COSMIC FP

Hours 2.505 2.690 +185 hours (+7%) Schedule 12-09-2010 15-09-2010 3 days

Page 23: Project Control using functional size - which method to use?

23

After 12 weeks

Metric Plan Actual Difference Hours spent 1.788 1.812 +24

FP ready 357 348 -9

COSMIC FP ready 471 470 -1

Metric Plan Forecast Overrun/under run Based on IFPUG FP

Hours 2.505 3.009 +504 hours (+20%) Schedule 12-09-2010 25-09-2010 13 days

Based on COSMIC FP

Hours 2.505 2.730 +225 hours (+9 %) Schedule 12-09-2010 16-09-2010 4 days

Page 24: Project Control using functional size - which method to use?

24

Final results

• Small overrun in time and effort

Metric Plan Actual Difference Hours spent 2.505 2.586 +81

Project end date 12 -09-2010 16-09-2010 +4 days

FP ready 371 371 0

COSMIC FP ready 494 494 0

Page 25: Project Control using functional size - which method to use?

25

The forecasts analyzed

• IFPUG forecasts show considerable overruns until late in the project

• COSMIC forecasts more conservative

• COSMIC forecasts more in line with the feeling of the team and the PM

Forecast IFPUG FP COSMIC FP

Hours overrun Schedule overrun Hours overrun Schedule overrun

4 weeks +428 + 2 weeks +96 +2 days

8 weeks +486 +12 days +185 +3 days

12 weeks +504 +13 days +225 + 4 days

Final +81 +4 days +81 +4 days

Page 26: Project Control using functional size - which method to use?

26

Conclusions

• In theory, COSMIC should be the better method to use in parametric project control− No size limit per function: more accurate product size ready− No explicit points for the data model: Easier to measure

‘project size ready’

• This experiment confirms this theory− COSMIC forecasts closer to reality than IFPUG forecasts

•More experiments are needed to support this conclusion

Page 27: Project Control using functional size - which method to use?

27

Sogeti Sizing, Estimating & Control

Sogeti Sizing, Estimating & ControlNESMA – board memberNESMA – chair working group COSMICNESMA – chair working group BenchmarkingNESMA – working group Sizing PackagesNESMA – working group Estimation maturityCOSMIC – International Advisory CounsilCOSMIC – Benchmarking CommitteeISBSG – President

Thanks for your attention !

Harold van HeeringenSizing, Estimating & [email protected] @haroldveendam @Sogeti_SEC