FDD Overview

23
© 2005 Nebulon Pty. Ltd. Feature Driven Development overview 1

Transcript of FDD Overview

Page 1: FDD Overview

© 2005 Nebulon Pty. Ltd.

FeatureDrivenDevelopment

overview

1

Page 2: FDD Overview

© 2005 Nebulon Pty. Ltd. 2

No Silver Bullet

Page 3: FDD Overview

© 2005 Nebulon Pty. Ltd.

The system is the Project.Managers must first learn to see, hear, and think about human systems before

they can hope to control them. Software projects are human systems.

3

What is the systemI am building?

Page 4: FDD Overview

© 2005 Nebulon Pty. Ltd.

Why FDD?

4

To enable the reliable delivery of working software in a timely manner with highly accurate and meaningful information to all key roles inside and outside a project

Page 5: FDD Overview

© 2005 Nebulon Pty. Ltd.

Feature Naming Template<action> the <result> <by|for|of|to> a(n) <object>

Calculate the total amount of a Sale

Calculate the total quantity sold by a Retail Outlet for an Item Description

Determine the most recent Cash Register Assignment for a Cashier

5

Page 6: FDD Overview

© 2005 Nebulon Pty. Ltd.

Initial Processes

6

Developan Overall

Model

BuildFeatures

ListPlanning

Designby

Feature

Buildby

Feature

An Object Model

(more shape thancontent)

A categorizedFeatures List

A developmentplan

Page 7: FDD Overview

© 2005 Nebulon Pty. Ltd.

Reducing the Risk of Fixed-Price

7

MilestoneStartup Phase

Developan Overall

Model

BuildFeatures

ListPlanning

Construction Phase

Startup phase contains predictive metrics based on early available indicators

Initial project time estimate determines startup phase duration

Actual startup phase time taken calibrates project time estimate

Establish fixed-price construction after startup phase completed

Designby

Feature

Buildby

Feature

Page 8: FDD Overview

© 2005 Nebulon Pty. Ltd.

Class Owners

8

Inventory Management: Remove a quantity of content from a storage unit, honoring holds.

aStorageUnit aStorageUnitDetail aMatlResQtyDesc aQtyOnHold

8: 'getQtyOnHold'

IF content matches,calc qty availableELSE return zero

To identify the content you're looking for, pass in aMatlResQtyDesc as an argument

aSender

1: removeQtyOfContentHonoringHolds

FOR eachStorageUnitDetail

2: removeQtyOfContentHonoringHolds

4: matches

5: calcQtyAvailable

6: calcQtyInStock

7: calcQtyOnHold

9: removeQty

3: calcQtyOfContentAvailable

qty in stock minusqty on hold

Page 9: FDD Overview

© 2005 Nebulon Pty. Ltd.

Feature Teams

9

ApplicantBorrower

SecurityCommitmentProperty

LineOfCreditFinancingPackage

PartyIndividual

Organization

ApplicationApproval Request

ObligorGroupRelatedPartyGroup

PartyToPartyRelationship

LendingOfficerMarketingOfficer

CreditApprovalOfficer

LimitLineType

A pool of class owners. Features assigned to CPs. CP determines classes involved. Classes owned by programmers. Feature team dynamically forms.

Total the approved limits of an applicant

Applicant, Borrower, LineOfCredit, Limit

Total the unsecured facilities for a party

Party, Borrower, LineOfCredit, SecurityCommitment

Page 10: FDD Overview

© 2005 Nebulon Pty. Ltd.

Engine-Room Processes

10

Developan Overall

Model

BuildFeatures

ListPlanning

Designby

Feature

Buildby

Feature

An Object Model

(more shape thancontent)

A categorizedFeatures List

A developmentplan

A design package A client-valued function

(more contentthan shape)

Page 11: FDD Overview

© 2005 Nebulon Pty. Ltd.

Milestones

11

Milestones must be concrete, specific, measurable events defined with knife-edge sharpness

A programmer will rarely lie about milestone progress, if the milestone is so sharp he can’t deceive himself

Getting the status is hard since subordinate managers have every reason not to share it

Fred Brooks

Page 12: FDD Overview

© 2005 Nebulon Pty. Ltd.

Milestones

12

Page 13: FDD Overview

© 2005 Nebulon Pty. Ltd.

Milestones

13

Page 14: FDD Overview

© 2005 Nebulon Pty. Ltd.

Progress Summary Report

14

Actual Data

Page 15: FDD Overview

© 2005 Nebulon Pty. Ltd.

Graphical Summary Legend

15

Comply withCreditPolicy(19)

75%

Nov 05

Overall Status

Not Started

Work in Progress

Attention (e.g. behind schedule)

Completed

Completed

Target Completion Month

Progress Bar

Completion Percentage

Completion Status

MY

Page 16: FDD Overview
Page 17: FDD Overview

© 2005 Nebulon Pty. Ltd.

Trend Report

17

Actual Data

Weekended

TotalFeatures

% Completed FeaturesCompleted

Features NotStarted

Features InProgress

FeaturesBehind

Schedule

FeaturesInactive

27-May-98 823 26% 202 588 1 32 253-Jun-98 823 29% 234 574 4 11 574

10-Jun-98 823 29% 245 573 0 5 3017-Jun-98 824 30% 250 573 0 1 3024-Jun-98 824 30% 251 573 0 0 301-Jul-98 824 30% 251 573 0 0 308-Jul-98 824 34% 260 475 81 8 40

15-Jul-98 824 37% 276 457 72 19 4722-Jul-98 825 40% 290 450 85 0 4729-Jul-98 931 38% 305 534 72 20 555-Aug-98 932 41% 353 463 83 33 7312-Aug-98 1085 38% 353 578 117 37 7319-Aug-98 1085 44% 368 488 129 100 7326-Aug-98 1085 46% 406 478 23 178 732-Sep-98 1087 53% 558 447 48 34 799-Sep-98 1107 54% 560 420 51 76 8116-Sep-98 1107 57% 568 411 50 78 8123-Sep-98 1107 57% 579 411 50 67 8130-Sep-98 1119 57% 589 364 94 72 867-Oct-98 1122 62% 626 258 176 62 86

14-Oct-98 1122 65% 631 257 167 67 86

Page 18: FDD Overview

© 2005 Nebulon Pty. Ltd.

Trend Report

18

200

400

600

800

1,000

27/5 10/6 24/6 8/7 22/7 5/8 19/8 2/9 16/9 30/9 14/10 28/10 11/11 25/11 10/12 23/12 7/1 20/1 3/2

PD Completed Features

Actual Data

Page 19: FDD Overview

© 2005 Nebulon Pty. Ltd.

Plan View

19

Actual Data

Page 20: FDD Overview

© 2005 Nebulon Pty. Ltd.

Plan View On The Wall

20

Actual Data

Page 21: FDD Overview

© 2005 Nebulon Pty. Ltd.

Plan View - Example For Red

21

Actual Data

Page 22: FDD Overview

© 2005 Nebulon Pty. Ltd.

Engine-Room Processes

22

Developan Overall

Model

BuildFeatures

ListPlanning

Designby

Feature

Buildby

Feature

An Object Model

(more shape thancontent)

A categorizedFeatures List

A developmentplan

A design package A client-valued function

(more contentthan shape)

Page 23: FDD Overview

© 2005 Nebulon Pty. Ltd.

Resources

23

www.featuredrivendevelopment.com

discussions, articles, FDDI (FDD interchange) specification and XML schema, photos and artwork, ...