Using the ISBSG Database in an Agile Project Context · Agile Processes Project Estimations...

29
1 Customer Orientation Lean Six Sigma Agile Processes Project Estimations Transfer Functions 3°International Conference on IT Data collection, Analysis and Benchmarking Florence (Italy) - October 19, 2015 Using the ISBSG Database in an Agile Project Context Thomas M. Fehlmann, Zürich, Euro Project Office AG E: [email protected] – H: www.e-p-o.com

Transcript of Using the ISBSG Database in an Agile Project Context · Agile Processes Project Estimations...

1

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions 3°International Conference on

IT Data collection, Analysis and Benchmarking

Florence (Italy) - October 19, 2015

Using the ISBSG Database in an Agile Project Context

Thomas M. Fehlmann, Zürich, Euro Project Office AG

E: [email protected] – H: www.e-p-o.com

2

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Dr. Thomas Fehlmann

l 1981: Dr. Math. ETHZ

l 1991: Six Sigma for Software Black Belt

l 1999: Euro Project Office AG, Zürich

l 2001: Akao Price 2001 for original contributions to QFD

l 2003: SwissICT Expert for Software Metrics, ICTscope.ch

l 2004: Member of the Board QFD Institute Deutschland – QFD Architect

l 2007: CMMI for Software – Level 4 & 5

l 2011: Net Promoter® Certified Associate

l 2012: Member of the DASMA Board

l 2013: Vice-President ISBSG

l 1981: Dr. Math. ETHZ

l 1991: Six Sigma for Software Black Belt

l 1999: Euro Project Office AG, Zürich

l 2001: Akao Price 2001 for original contributions to QFD

l 2003: SwissICT Expert for Software Metrics, ICTscope.ch

l 2004: Member of the Board QFD Institute Deutschland – QFD Architect

l 2007: CMMI for Software – Level 4 & 5

l 2011: Net Promoter® Certified Associate

l 2012: Member of the DASMA Board

l 2013: Vice-President ISBSG

Dr. Thomas Fehlmann

3

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Predictive Projects = Waterfall?

l Traditional project development

has become the “enemy” called

Waterfall l The inspector stays on the bridge

crossing the waterfall and

assesses progress

l Who’s afraid from the

Big Bad Inspector???!?

Definition

Analysis

Design

Install

Operate

Implement

4

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

The Wonderful New World of Agile l Twelve Principles of Agile Software

1. Our highest priority is to satisfy the customer through early and

continuous delivery of valuable software.

2. Welcome changing requirements, even late in development. Agile

processes harness change for the customer's competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple

of months, with a preference to the shorter timescale.

4. Business people and developers must work together daily throughout

the project.

5. Build projects around motivated individuals. Give them the environment

and support they need, and trust them to get the job done.

6. The most efficient and effective method of conveying information to and

within a development team is face-to-face conversation.

7. Working software is the primary measure of progress.

8. Agile processes promote sustainable development. The sponsors,

developers, and users should be able to maintain a constant pace

indefinitely.

9. Continuous attention to technical excellence and good design

enhances agility.

10. Simplicity – the art of maximizing the amount of work not done – is

essential.

11. The best architectures, requirements, and designs emerge from self-

organizing teams.

12. At regular intervals, the team reflects on how to become more effective,

then tunes and adjusts its behavior accordingly.

5

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Scrum Development Cycle

Product Backlog “User Stories”

Sprint Backlog “Work Items”

Sprint Work Increment of finished software

10 day

24h

Independent Testing

pass fail

6

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

39 Entry (E) + 45 eXit (X) + 12 Read (R) + 14 Write (W) = 110 CFP

Traveler Get SIM Certificate Mobile Phone SIM Card SIM CertificatesTelecom User

Management User ID Payment Service

1.// Request Certificate

Get Certifcate

2.// SIM Certificate

3.// Identification

4.// Telecom Clearance

5.// No Valid Certificate

6.// Phone Connected?

7.// Device ID

8.// Ask for Subscriber ID

9.// Return Subscriber ID

10.// Read Subscriber ID

11.// Read Device ID

12.// Ask for PIN Code

13.// Enter PIN Code

14.// Ask for clearance

Why Predictive ≠ Waterfall

l What do you need to predict?

Functionality? No…, it’s evolving

Cost, Yes!

l How many Sprints are needed?

Product Backlog “User Stories”

Sprint Backlog “Work Items”

Sprint Work Increment of finished software

10 day

24h

Independent Testing

pass fail

7

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Predict Cost!

l You need to know

Velocity

Team Size

Sprints Needed

l Cost = Team Size * Sprints needed * Salaries

l Vision & Goals?

When are Goals Reached?

How do we know the

Project is Finished?

l In what units?

Functional Size per Sprint

Person Days per Sprint

Number of Sprints

8

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Definitions

l ISBSG = International Software Benchmarking Standards Group

l FSU = Functional Size Units (IFPUG, COSMIC, etc.)

CFP = COSMIC Function Points

IFP = IFPUG Function Points

l PDR = Project Delivery Rate in Hours per FSU

l StP = Story Points, as defined by the team (project-specific)

l sPDR = Story Point Delivery Rate: the number of story points per FSU

l PD = Person Days; 1 day = 8 hours

l PWE = Project Work Effort, measured in Sprints, or sometime still in PDs

Includes Definition, Analysis, Design, Implementation, Test and Installation as well as

project management and project administration loads

l Velocity = FSU delivered per Sprint

9

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

The ISBSG Data Portal – Entrance

10

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

The ISBSG Data Portal – Search for Projects

11

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

The ISBSG Data Portal – Search Results

12

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

The ISBSG Data Portal – Project Details

4.25

4.25

13

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Set Vision and Goals: Sample Helpdesk Project

l A Transportation Company asked customers what they expect from a helpdesk

Net Promoter Score analysis unveiled five major business drivers responsible for

attractiveness of using the helpdesk in case of any service interruption or difficulties

Improvements are dearly needed…

Involving Software as well as Services

Topics Attributes Priority

a) Helpdesk BD1 Responsiveness Fast Response Few Selections Known Issue 0.34

BD2 Be Compelling Able to resolve issue Committed to help Knowledgeable 0.44

BD3 Friendliness Keeps calm Unagitated Cool 0.41

b) Software BD4 Personalization Knows who's calling Knows travel plans Knows delays 0.64

BD5 Competence Can figure out solution According my preferences 0.33

Business Drivers

14

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Functional User Requirements – Vision Count

39 Entry (E) + 45 eXit (X) + 12 Read (R) + 14 Write (W) = 110 CFP

Traveler Get SIM Certificate Mobile Phone SIM Card SIM CertificatesTelecom User

Management User ID Payment Service

1.// Request Certificate

Get Certifcate

2.// SIM Certificate

3.// Identification

4.// Telecom Clearance

5.// No Valid Certificate

6.// Phone Connected?

7.// Device ID

8.// Ask for Subscriber ID

9.// Return Subscriber ID

10.// Read Subscriber ID

11.// Read Device ID

12.// Ask for PIN Code

13.// Enter PIN Code

14.// Ask for clearance

This extract shows how

Telecom provides Identity

Services for Travelers

110

CFP

15

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Is that the Whole Story?

l Functional Requirements (FUR)

Represented by initial sequence

diagram – or any other kind of Epics

Cost per Function Point known

FUR do not describe

business goals

in project

l Non-functional Requirements (NFR)

NFR describe Business Goals indeed

No Database available for Benchmarking

Most NFR become functional over time!

16

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Non-Functional Requirements become Functional over Time

l In Agile, the transformation of NFR to FUR happens within each Sprint

Functional

Size growths

during the

Project

NFR can

be assessed

before project

start

Initial FUR

count is the

project vision

Predictive

counts require

NFR!

Outline FUR

Outline NFR

Detailed FUR

True NFR

Design & Definition

Build, Test & Implement

Implemented

System

Software

Hardware

System

Project

Other deliverables Requirements

Analysis

Approx-imate FUR

Size by analogy or expert judgement

Approx. COSMIC size measurement

Precise COSMIC size measurement

Source: COSMIC Guideline on Non-Functional & Project Requirements and Charles Symons 2014

17

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Initial Buglione-Trudel Matrix

BD5: Competence

BD4: Personalization

Functional Effectiveness

(ISO/IEC 19761)

0.02

BusinessDrivers

Business Driver Goal Profile /Achieved Response Profile

Story Cards

Convergence Gap

0.23

FunctionalStory Cards

BD1: Responsiveness

BD2: Be Compelling

User Stories

User StoryPriorities

BD3: Friendliness

Q001

Customer Story

Q002

Helpdesk Story

Q003

Enrollment Story Q004

Social Story

Q005

Get SIM Certificate

18

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Story Card for Helpdesk Story Test isReady

Draft isReady

ReviewDone

Final-ized

Appro-ved

Func-tional

Q002-02F: Get Additional Information2

Name:3

#03 - Adagio

Business Impact:

Functional Size:

Story Points:

Contact traveler and ask for additional information about his or her travel

needs

Sprint:

Peter

As a Helpdesk staff, I want to identify a client without having to ask for the

name or get credentials, regardless whether calling by phone, sending e-

mail, or when chatting, such that I can charge service fees or ticket sold

according the clients’ preferred payment method, so that in case of urgency I

can help more customers faster and more effectively

Traveler Helpdesk Story

35.// Respond to Traveler

36.// Traveler explains Situation

Functional and Non-Functional Story Cards

Story Card for Helpdesk Story Test isReady

Draft isReady

ReviewDone

Final-ized

Appro-ved

Func-tional

Q002-09Q: Apologies0

Name:8

#04 - Rondo

Business Impact:

Functional Size:

Story Points:

Find a way to express apologies in a personal way

Sprint:

Heidi

BD4: 6BD2: 1

As a Helpdesk staff, I want to identify a client without having to ask for the

name or get credentials, regardless whether calling by phone, sending e-

mail, or when chatting, such that I can charge service fees or ticket sold

according the clients’ preferred payment method, so that in case of urgency I

can help more customers faster and more effectively

19

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Final Buglione-Trudel Matrix

BD5: Competence

BD4: Personalization

Functional Effectiveness

(ISO/IEC 19761)

0.02

BusinessDrivers

Business Driver Goal Profile /Achieved Response Profile

Story Cards

Convergence Gap

0.03

FunctionalStory Cards

BD1: Responsiveness

BD2: Be Compelling

User Stories

User StoryPriorities

BD3: Friendliness

Q001

Customer Story

Q002

Helpdesk Story

Q003

Enrollment Story Q004

Social Story

Q005

Get SIM Certificate

20

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Business Impact Cards become Functional

l The “Apologies” Story Card becomes functional after involving the Customer Experience and the Legal department

Adding 9 CFP to the 110 CFP already agreed for basic functionality

Happens within the sprint “#04 – Rondo”

Unplanned, additional functionality resulting from an NFR

Story Card for Helpdesk Story Test isReady

Draft isReady

ReviewDone

Final-ized

Appro-ved

Func-tional

Q002-09Q: Apologies0

Name:8

#04 - Rondo

Business Impact:

Functional Size:

Story Points:

Find a way to express apologies in a personal way

Sprint:

Heidi

BD4: 6BD2: 1

As a Helpdesk staff, I want to identify a client without having to ask for the

name or get credentials, regardless whether calling by phone, sending e-

mail, or when chatting, such that I can charge service fees or ticket sold

according the clients’ preferred payment method, so that in case of urgency I

can help more customers faster and more effectively

21

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Initial and Final Metrics for Goals Reached

l Initial Coverage of Business Drivers l Final Coverage of Business Drivers

User Stories

Go

al P

rofi

le

Cus

tom

er S

tory

Hel

pdes

k S

tory

Enr

ollm

ent

Sto

ry

Soc

ial S

tory

Get

SIM

Cer

tific

ate

Ach

ieve

d P

rofi

le

Q00

1

Q00

2

Q00

3

Q00

4

Q00

5

BD1 Responsiveness 0.34 3 4 0.29

BD2 Be Compelling 0.44 6 4 3 3 0.52

BD3 Friendliness 0.41 6 3 3 6 0.56

BD4 Personalization 0.64 6 6 0.51

BD5 Competence 0.33 3 6 0.28

Solution Profile for User Stories 0.74 0.53 0.10 0.33 0.22 Convergence Gap

0.75 0.56 0.09 0.31 0.17 0.23

0.10 Convergence Range

0.20 Convergence Limit

Business DriversDeployment Combinator

Business Drivers

User Stories

Go

al P

rofi

le

Cus

tom

er S

tory

Hel

pdes

k S

tory

Enr

ollm

ent

Sto

ry

Soc

ial S

tory

Get

SIM

Cer

tific

ate

Ach

ieve

d P

rofi

le

Q00

1

Q00

2

Q00

3

Q00

4

Q00

5

BD1 Responsiveness 0.34 7 4 0.33

BD2 Be Compelling 0.44 7 4 3 3 0.44

BD3 Friendliness 0.41 6 3 3 6 0.42

BD4 Personalization 0.64 6 9 6 6 1 0.66

BD5 Competence 0.33 3 6 6 0.30

Solution Profile for User Stories 0.65 0.52 0.27 0.42 0.25 Convergence Gap

0.65 0.51 0.26 0.42 0.26 0.03

0.10 Convergence Range

0.20 Convergence Limit

Business DriversDeployment Combinator

Business Drivers

22

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

How predicting Cost of “Non-Functional” Requirements?

l QFD Workshop

Find a QFD Moderator

Get the Business Driver’s Goal Profile

• Ideally by Net Promoter Score

Collect the Experts

• Business

• Developers

Agree on a value 1 – 3 – 9 for each cell

indicating how much the User Story

impacts the respective Business Driver

Make sure the Convergence Gap closes

User Stories

Go

al P

rofi

le

Cus

tom

er S

tory

Hel

pdes

k S

tory

Enr

ollm

ent

Sto

ry

Soc

ial S

tory

Get

SIM

Cer

tific

ate

Ach

ieve

d P

rofi

le

Q00

1

Q00

2

Q00

3

Q00

4

Q00

5

BD1 Responsiveness 0.34 9 1 0.35

BD2 Be Compelling 0.44 9 3 3 0.44

BD3 Friendliness 0.41 3 3 3 9 0.42

BD4 Personalization 0.64 3 9 3 9 1 0.65

BD5 Competence 0.33 3 1 3 3 3 0.30

Solution Profile for User Stories 0.63 0.51 0.23 0.45 0.30 Convergence Gap

0.6 0.5 0.2 0.4 0.3 0.03

0.10 Convergence Range Business Impact

0.20 Convergence Limit 81

User Stories Cost Prediction

Business Drivers

23

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

User Stories

Go

al P

rofi

le

Cus

tom

er S

tory

Hel

pdes

k S

tory

Enr

ollm

ent

Sto

ry

Soc

ial S

tory

Get

SIM

Cer

tific

ate

Ach

ieve

d P

rofi

le

Q00

1

Q00

2

Q00

3

Q00

4

Q00

5

BD1 Responsiveness 0.34 9 1 0.35

BD2 Be Compelling 0.44 9 3 3 0.44

BD3 Friendliness 0.41 3 3 3 9 0.42

BD4 Personalization 0.64 3 9 3 9 1 0.65

BD5 Competence 0.33 3 1 3 3 3 0.30

Solution Profile for User Stories 0.63 0.51 0.23 0.45 0.30 Convergence Gap

0.6 0.5 0.2 0.4 0.3 0.03

0.10 Convergence Range Business Impact

0.20 Convergence Limit 81

User Stories Cost Prediction

Business Drivers

Early Estimation by a QFD Workshop

l Result of QFD Workshop l Final Convergence Gap

after a few sprints

User Stories

Go

al P

rofi

le

Cus

tom

er S

tory

Hel

pdes

k S

tory

Enr

ollm

ent

Sto

ry

Soc

ial S

tory

Get

SIM

Cer

tific

ate

Ach

ieve

d P

rofi

le

Q00

1

Q00

2

Q00

3

Q00

4

Q00

5

BD1 Responsiveness 0.34 7 4 0.33

BD2 Be Compelling 0.44 7 4 3 3 0.44

BD3 Friendliness 0.41 6 3 3 6 0.42

BD4 Personalization 0.64 6 9 6 6 1 0.66

BD5 Competence 0.33 3 6 6 0.30

Solution Profile for User Stories 0.65 0.52 0.27 0.42 0.25 Convergence Gap

0.65 0.51 0.26 0.42 0.26 0.03

0.10 Convergence Range Business Impact

0.20 Convergence Limit 89

Business DriversDeployment Combinator

Business Drivers

24

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Predict Total Functionality Needed and thus Effort

l The Idea:

Do a QFD Workshop and count the total amount of correlation values in the matrix

l FUR count yields 110 CFP

Assume 4.25 PDR (h/CFP)

110 * 4.25 = 468 h

l 1 CFP = 2.0 Story Points

l 1 Story Point = 1 Impact

l NFR total for 81 Impacts

Therefore NFR add

81 * 2.0 = 162 CFP

This yields

4.25 * 162 689 h

l Total 468 h + 689 h = 1156 h

User Stories

Goal

Pro

file

Cust

omer

Sto

ry

Helpd

esk

Stor

y

Enro

llmen

t Sto

ry

Socia

l Sto

ry

Get S

IM C

ertif

icate

Achi

eved

Pro

file

Q001

Q002

Q003

Q004

Q005

BD1 Responsiveness 0.34 9 1 0.35

BD2 Be Compelling 0.44 9 3 3 0.44

BD3 Friendliness 0.41 3 3 3 9 0.42

BD4 Personalization 0.64 3 9 3 9 1 0.65

BD5 Competence 0.33 3 1 3 3 3 0.30

Solution Profile for User Stories 0.63 0.51 0.23 0.45 0.30 Convergence Gap

0.6 0.5 0.2 0.4 0.3 0.03

0.10 Convergence Range Business Impact

0.20 Convergence Limit 81

User Stories Cost Prediction

Business Drivers

Story Point

Delivery Rate

25

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Predict Total Functionality Needed and thus Cost

l The Idea:

Do a QFD Workshop and count the total amount of correlation values in the matrix

Somehow, they will correlate to the amount of functionality added by tasks imposed

by customer’s needs, to satisfy the business driver’s goal profile

Basic Functionality is counted the usual way using a standard

Functional Sizing Method

l The Problem:

How does work for business impact compare with PDR for functionality?

l The Solution:

Use the Team’s Story Points to “translate” Business Impact into FUR

Calibrate pure functional Story Cards with pure Impact Story Cards

39 Entry (E) + 45 eXit (X) + 12 Read (R) + 14 Write (W) = 110 CFP

Traveler Get SIM Certificate Mobile Phone SIM Card SIM CertificatesTelecom User

Management User ID Payment Service

1.// Request Certificate

Get Certifcate

2.// SIM Certificate

3.// Identification

4.// Telecom Clearance

5.// No Valid Certificate

6.// Phone Connected?

7.// Device ID

8.// Ask for Subscriber ID

9.// Return Subscriber ID

10.// Read Subscriber ID

11.// Read Device ID

12.// Ask for PIN Code

13.// Enter PIN Code

14.// Ask for clearance

User Stories

Goal

Pro

file

Cust

omer

Sto

ry

Helpd

esk

Stor

y

Enro

llmen

t Sto

ry

Socia

l Sto

ry

Get S

IM C

ertif

icate

Achi

eved

Pro

file

Q001

Q002

Q003

Q004

Q005

BD1 Responsiveness 0.34 9 1 0.35

BD2 Be Compelling 0.44 9 3 3 0.44

BD3 Friendliness 0.41 3 3 3 9 0.42

BD4 Personalization 0.64 3 9 3 9 1 0.65

BD5 Competence 0.33 3 1 3 3 3 0.30

Solution Profile for User Stories 0.63 0.51 0.23 0.45 0.30 Convergence Gap

0.6 0.5 0.2 0.4 0.3 0.03

0.10 Convergence Range Business Impact

0.20 Convergence Limit 81

User Stories Cost Prediction

Business Drivers

26

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Calibrating with Story Points

FUR

for Customer Needs

ISBSG Benchmark

Story Points by the Team

Business Impact

NFR

Total Estimate €

COSMIC Functional Size

27

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Conclusion

l Effort Estimation without knowing the

Customer’s Needs is only incidentally correct

Simply because all “Change Requests” originate from customer’s need and the

product’s business drivers

l Embracing Agile seriously allows predicting project cost much better and simpler

than traditional cost estimation techniques

By predicting the agile software development process

Not the product!

l It’s still benchmarking but at much better granularity, taking the team and the

environment into account

28

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Questions?

29

Customer

Orientation

Lean

Six Sigma

Agile

Processes

Project

Estimations

Transfer

Functions

Controlling Variations

FUR LT CN VoC

Voice of the Customer (VoC)

Competitive Analysis (LT)

User Stories (UC)

Functional User Requirement (FUR)

UC FUR

#Priority

#Market Share #NPS, #Kano

UC BD

Business Drivers (BD)

Non-Functional Functional