no estimates

64
No estimates

Upload: amir-barylko

Post on 08-Jan-2017

242 views

Category:

Technology


0 download

TRANSCRIPT

No estimates

Capturing Requirements

How do you capture requirements?

Reality always wins

Requirements will change

Cone of Uncertainty

Sizing Requirements

How do you choose a size?

Task Breakdown

Shirt Sizes(XXL, XL, L, M, S, XS, etc)

Throwing dice

FDDFrown Driven Development

Magic 8 ball

TwoMonths

One Month

User Story PointsUsing Fibonacci (1, 2, 3, 5, 8, 13 …)

Planning poker

Discovering complexity

Complexity is relative

Tends to average

Can we avoid estimation?

It will take what it takes?

Use Facts

Units of work per week

Let’s make each unit of work…

Around the same size

How?

Focus on…

What can we build in xxx days

that adds value?

NO ESTIMATES!

Acceptance Criteria

When are we done?

Writing ScenariosInput

Output

Step 1

Step 2

Step N

Multiple Scenarios

Gherkin DSLBusiness readable DSL Flush out requirements Automated testing Used by Cucumber, SpecFlow, jBehave

FeaturesFeature: Listing movies

As a User

I want to list movies

So I can see the contents of the library

ScenariosScenario: List all movies

Given I'm logged in

And I have (some data loaded)

When I (do some action)

Then I (should see expected results)

Writing reviewsScenario: Write a review for a movie

Given I'm logged in as a Critic

When I write a review for a movie

Then I should see the new review

in the reviews section

for the movie

Example IIScenario: See most recent movies first Given I'm logged in as a User When I order the list by release date

Then I should see the movies with the release date most recent first

Guidelines to write

scenarios

??????Scenario: Perfect world

Given the application is setup

When I want to use some projects

Then I should be able to load data

And have a great user experience

but no bugs should appear

?????Scenario: Redirect user

Given a User "dave" with pwd "secret"

And I am not logged in

When I navigate to the home page

And I fill in "Username" with "dave"

And I fill in "Password" with "secret"

And I press “Login"

Then I am redirected to the login form

Just rightScenario: List all projects

Given I'm logged in

And I have some projects stored

When I list the projects

Then I should see all of them

Estimating using scenarios

New FunctionalityWhen is the right time to write scenarios? During Inception? During Analysis? During Development? During QA?

Order Matters Not!Can every feature be independent?

Size Matters not!Can every feature be of the same size?

Value matters a lot!Otherwise why are we building it?

Complexity∝ amountHow many scenarios per feature?

Complexity ∝ amountScenarios

0

1

2

4

5

6

7

Complexity

Simple Medium Complex WTF?

Complexity ∝ ClarityToo many steps

Complexity∝ClarityIf scenarios are unclear

then is time to rethink the feature

Complexity ∝ ClarityTakes more than 10 minutes to write

Complexity ∝ ClarityYou read it the next day and have no clue what it means

RecipeFocus on what can be built in X days

RecipeOne or two scenarios at most

RecipeMake sure you can implement it in XX

amount of time(1 or 2 days)

RecipeFind the simplest scenario

that provides value

RecipeFind the FACTS (metrics/speed)

and use it to estimate

RecipeImprove and repeat

THANK YOU!

The Smartest tool for agile project management

http://smartview.io

[email protected]

@abarylko

http://bit.ly/abarylkoslides

http://orthocoders.com

http://westerndevs.com