SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
Slicing user stories really SMALL 
peter.antman@crisp.se 
Peter Antman 
Based on Henrik Knibergs facilitation guide: 
http://blog.crisp.se/2013/07/25/henrikkniberg/elephant-carpaccio-facilitation-guide
A (User) Story 
Independent 
Negotiable 
Valuable 
Estimable 
Small 
Testable 
Acronym courtesy of Bill Wake – www.xp123.com 
Vertical 
Testable 
User-valuable 
Kniberg 
Gui 
Client 
Backend 
Story 
Henrik Kniberg
How can a User Story look
Grooming EPICS  User Stories 
Story Time 
Session 
Story Time 
Session 
Story Time 
Session 
Henrik Kniberg
Story slicing – making thinner but vertical 
Smaller Bigger 
Minutes Hours Days Weeks Month 
Henrik Kniberg
How big are your user stories? 
Target 
Story = A few days 
Task = a few hours 
Commit = several a 
day 
Smaller Bigger 
Minutes Hours Days Weeks Month 
Henrik Kniberg
Why split user stories? 
Discuss in pairs 
Learn faster 
Deliver more 
often 
Happier 
stakeholders 
More in-sync with 
other people & 
teams 
Better 
prioritizations 
Sense of 
velocity 
Better product 
earlier 
More business 
options 
Less risk (less 
time 
“underwater”). 
Easier 
planning 
Henrik Kniberg
Value curve 
Big stories 
Time 
Value 
Delivered 
(comulative) 
Waterfall 
Small stories 
Henrik Kniberg
We will build 
 A a simple retail calculator 
 Using any programming language 
 It takes input, and omit result. 
– Any interface is OK (command, web, gui) 
 40 minutes in 5 iterations x 8 minutes 
 We will do it by slicing the story in 15 – 20 pieces 
 Elephant carpaccio = very thin slices, each one still elephant-shaped. 
Together they form the whole elephant. 
Henrik Kniberg
Elephant Carpaccio 
Background 
Your sales department has asked you for a 
quoting application. They wrote this user story 
“As a sales person, I want 
to quickly get the final 
price of an order” 
Usage 
Our sales support system should accept three 
inputs 
number of items 
a price per item 
a 2-letter state code 
Compute the price of the order, given the discount 
and state tax. 
Mattis Skarin
Priorities 
5 states 
5 discounts 
5 states 
Validation, fancy gui, etc 
Hello world 
Order 
value 
Henrik Kniberg
Create backlog 
What is your first slice? 
When have you an order value? 
Whats next slice after order value? 
• In pairs 
• 10 + 5 minutes 
• Write 10 – 20 demoable user stories 
• Each should be implementable in 2 – 6 minutes 
• Real input and output and different from last 
Henrik Kniberg
One way of slicing it 
1. Echo input 
2. Walking skeleton 
3. Order value 
2 inputs, 1 output. No state tax, no discounts. 
4. Hard-coded state tax 
Still 2 inputs, 1 output. Utah state tax added automatically. 
(Now we can go live in Utah!). 
5. Manual tax (3 input: price per item, # of items, state tax %). 
Output is order value with state tax added. 
User inputs actual tax rate rather than state code. 
This gives simpler code (no internal data structure to map state code to 
tax rate), so we get faster delivery. 
6. State ID (3 input: price per item, # of item, state tax) 
but only two states are supported. Any other gives error message. 
7. Add the other 3 states 
(Llimited value in adding 1 state at a time at this point - there is no 
risk reduction value, and it takes literally just a few seconds more to all 3 states at once) 
8. Once discount 
9. 2 discounts 
10. All discounts 
Verify we can read input 
Order total 
Enable tax in one state 
Enable manual tax 
Enable tax. Ship all states 
Discount for core customers 
Discounts for all levels 
Henrik Kniberg & Mattias Skarin
Build it 
• 5 iterations, 8 minutes per iteration 
• I will shout “demo time” after each iteration 
– Do a fast demo to another team 
– Next iteration starts emediately 
– Shout slice for each slice you have done 
Henrik Kniberg
Review 
• How far did you get on the value curve? 
• How many slices do you have? 
• Acceptance test 
– Start the application 
– I am in Utha 
– Buying 978 items 
– Each cost $270.99 
• Compare result 
Order Value: $ 265 028.22 
Tax: $ 283 182.65 
Tax & Rebate $240 705.26 
Henrik Kniberg
Debfrief 
• What whas it like? 
• Round robin 
– What did you learn? 
– What will you do?

Weitere ähnliche Inhalte

Was ist angesagt?

How to Break the Requirements into User Stories
How to Break the Requirements into User StoriesHow to Break the Requirements into User Stories
How to Break the Requirements into User StoriesShriKant Vashishtha
 
21 Story Splitting Patterns
21 Story Splitting Patterns21 Story Splitting Patterns
21 Story Splitting PatternsKent McDonald
 
User story slicing exercise
User story slicing exerciseUser story slicing exercise
User story slicing exercisePaulo Clavijo
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user storiescpolc
 
Cheat Sheet: 8 ways to split your user stories
Cheat Sheet:  8 ways to split your user storiesCheat Sheet:  8 ways to split your user stories
Cheat Sheet: 8 ways to split your user storiesPayton Consulting
 
STATIK (Systems Thinking Approach to Introduce Kanban) Workshop Meetup
STATIK (Systems Thinking Approach to Introduce Kanban) Workshop MeetupSTATIK (Systems Thinking Approach to Introduce Kanban) Workshop Meetup
STATIK (Systems Thinking Approach to Introduce Kanban) Workshop MeetupH. Javier Castillo Suazo
 
Certified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photosCertified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photosAlexey Krivitsky
 
2018-11-13 Don Reinertsen: An Introduction to Second Generation Lean Product ...
2018-11-13 Don Reinertsen: An Introduction to Second Generation Lean Product ...2018-11-13 Don Reinertsen: An Introduction to Second Generation Lean Product ...
2018-11-13 Don Reinertsen: An Introduction to Second Generation Lean Product ...Niels Harre
 
User Story Maps: Secrets for Better Backlogs and Planning
 User Story Maps: Secrets for Better Backlogs and Planning User Story Maps: Secrets for Better Backlogs and Planning
User Story Maps: Secrets for Better Backlogs and PlanningAaron Sanders
 
Kanban Basics for Beginners
Kanban Basics for BeginnersKanban Basics for Beginners
Kanban Basics for BeginnersZsolt Fabok
 
Agile Performance Metrics
Agile Performance MetricsAgile Performance Metrics
Agile Performance MetricsACM
 
Creating Agile Product Roadmaps Everyone Understands
Creating Agile Product Roadmaps Everyone UnderstandsCreating Agile Product Roadmaps Everyone Understands
Creating Agile Product Roadmaps Everyone Understandsuxpin
 
Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)one80
 

Was ist angesagt? (20)

How to Break the Requirements into User Stories
How to Break the Requirements into User StoriesHow to Break the Requirements into User Stories
How to Break the Requirements into User Stories
 
How to write good user stories
How to write good user storiesHow to write good user stories
How to write good user stories
 
21 Story Splitting Patterns
21 Story Splitting Patterns21 Story Splitting Patterns
21 Story Splitting Patterns
 
User story slicing exercise
User story slicing exerciseUser story slicing exercise
User story slicing exercise
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user stories
 
Effective user stories for your agile or Scrum team
Effective user stories for your agile or Scrum teamEffective user stories for your agile or Scrum team
Effective user stories for your agile or Scrum team
 
Cheat Sheet: 8 ways to split your user stories
Cheat Sheet:  8 ways to split your user storiesCheat Sheet:  8 ways to split your user stories
Cheat Sheet: 8 ways to split your user stories
 
Story of user story
Story of user storyStory of user story
Story of user story
 
STATIK (Systems Thinking Approach to Introduce Kanban) Workshop Meetup
STATIK (Systems Thinking Approach to Introduce Kanban) Workshop MeetupSTATIK (Systems Thinking Approach to Introduce Kanban) Workshop Meetup
STATIK (Systems Thinking Approach to Introduce Kanban) Workshop Meetup
 
Certified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photosCertified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photos
 
Cost of delay and prioritization techniques
Cost of delay and prioritization techniquesCost of delay and prioritization techniques
Cost of delay and prioritization techniques
 
Agile Planning and Estimation
Agile Planning and EstimationAgile Planning and Estimation
Agile Planning and Estimation
 
2018-11-13 Don Reinertsen: An Introduction to Second Generation Lean Product ...
2018-11-13 Don Reinertsen: An Introduction to Second Generation Lean Product ...2018-11-13 Don Reinertsen: An Introduction to Second Generation Lean Product ...
2018-11-13 Don Reinertsen: An Introduction to Second Generation Lean Product ...
 
User Story Maps: Secrets for Better Backlogs and Planning
 User Story Maps: Secrets for Better Backlogs and Planning User Story Maps: Secrets for Better Backlogs and Planning
User Story Maps: Secrets for Better Backlogs and Planning
 
Kanban Basics for Beginners
Kanban Basics for BeginnersKanban Basics for Beginners
Kanban Basics for Beginners
 
Agile Performance Metrics
Agile Performance MetricsAgile Performance Metrics
Agile Performance Metrics
 
WTF is a Product Roadmap?
WTF is a Product Roadmap?WTF is a Product Roadmap?
WTF is a Product Roadmap?
 
Creating Agile Product Roadmaps Everyone Understands
Creating Agile Product Roadmaps Everyone UnderstandsCreating Agile Product Roadmaps Everyone Understands
Creating Agile Product Roadmaps Everyone Understands
 
Agile (Scrum)
Agile (Scrum)Agile (Scrum)
Agile (Scrum)
 
Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)
 

Andere mochten auch

Pirateship - growing a great crew: workshop facilitation guide
Pirateship - growing a great crew: workshop facilitation guidePirateship - growing a great crew: workshop facilitation guide
Pirateship - growing a great crew: workshop facilitation guidePeter Antman
 
Dealing with combinatorial explosions and boring tests
Dealing with combinatorial explosions and boring testsDealing with combinatorial explosions and boring tests
Dealing with combinatorial explosions and boring testsAlexander Tarlinder
 
Testing a 2D Platformer with Spock
Testing a 2D Platformer with SpockTesting a 2D Platformer with Spock
Testing a 2D Platformer with SpockAlexander Tarlinder
 
Agila kontrakt - Frukostföreläsning för IT-chefer
Agila kontrakt - Frukostföreläsning för IT-cheferAgila kontrakt - Frukostföreläsning för IT-chefer
Agila kontrakt - Frukostföreläsning för IT-cheferMia Kolmodin
 
Fluent at agile - agile sverige 2014
Fluent at agile - agile sverige 2014Fluent at agile - agile sverige 2014
Fluent at agile - agile sverige 2014Peter Antman
 
Growing up with agile - how the Spotify 'model' has evolved
Growing up with agile - how the Spotify 'model' has evolved Growing up with agile - how the Spotify 'model' has evolved
Growing up with agile - how the Spotify 'model' has evolved Peter Antman
 

Andere mochten auch (6)

Pirateship - growing a great crew: workshop facilitation guide
Pirateship - growing a great crew: workshop facilitation guidePirateship - growing a great crew: workshop facilitation guide
Pirateship - growing a great crew: workshop facilitation guide
 
Dealing with combinatorial explosions and boring tests
Dealing with combinatorial explosions and boring testsDealing with combinatorial explosions and boring tests
Dealing with combinatorial explosions and boring tests
 
Testing a 2D Platformer with Spock
Testing a 2D Platformer with SpockTesting a 2D Platformer with Spock
Testing a 2D Platformer with Spock
 
Agila kontrakt - Frukostföreläsning för IT-chefer
Agila kontrakt - Frukostföreläsning för IT-cheferAgila kontrakt - Frukostföreläsning för IT-chefer
Agila kontrakt - Frukostföreläsning för IT-chefer
 
Fluent at agile - agile sverige 2014
Fluent at agile - agile sverige 2014Fluent at agile - agile sverige 2014
Fluent at agile - agile sverige 2014
 
Growing up with agile - how the Spotify 'model' has evolved
Growing up with agile - how the Spotify 'model' has evolved Growing up with agile - how the Spotify 'model' has evolved
Growing up with agile - how the Spotify 'model' has evolved
 

Ähnlich wie Facilitating the Elephant carpaccio exercise

'What is an Agile tester': Henrik Kniberg @ Colombo Agile Conference 2014
'What is an Agile tester': Henrik Kniberg @ Colombo Agile Conference 2014'What is an Agile tester': Henrik Kniberg @ Colombo Agile Conference 2014
'What is an Agile tester': Henrik Kniberg @ Colombo Agile Conference 2014ColomboCampsCommunity
 
Developer Day Tech Session at QuickBooks Connect Sydney 2017
Developer Day Tech Session at QuickBooks Connect Sydney 2017Developer Day Tech Session at QuickBooks Connect Sydney 2017
Developer Day Tech Session at QuickBooks Connect Sydney 2017Intuit Developer
 
RQ Retail Management: Connecting the Inventory Dots
RQ Retail Management: Connecting the Inventory DotsRQ Retail Management: Connecting the Inventory Dots
RQ Retail Management: Connecting the Inventory DotsiQmetrixCorp
 
Acceptance Test-driven Development: Mastering Agile Testing
Acceptance Test-driven Development: Mastering Agile TestingAcceptance Test-driven Development: Mastering Agile Testing
Acceptance Test-driven Development: Mastering Agile TestingTechWell
 
Franchise presentation
Franchise presentationFranchise presentation
Franchise presentationBrent Crysell
 
Falconide Triggered/Transactional Emails Product Presentation
Falconide Triggered/Transactional Emails Product PresentationFalconide Triggered/Transactional Emails Product Presentation
Falconide Triggered/Transactional Emails Product PresentationNetcore Solutions
 
Optimizing Your AWS Applications and Usage to Reduce Costs
Optimizing Your AWS Applications and Usage to Reduce CostsOptimizing Your AWS Applications and Usage to Reduce Costs
Optimizing Your AWS Applications and Usage to Reduce CostsAmazon Web Services
 
Maximizing Your ML Success with Innovative Feature Engineering
Maximizing Your ML Success with Innovative Feature EngineeringMaximizing Your ML Success with Innovative Feature Engineering
Maximizing Your ML Success with Innovative Feature EngineeringFeatureByte
 
AWS Sydney Summit 2013 - Optimizing AWS Applications and Usage to Reduce Costs
AWS Sydney Summit 2013 - Optimizing AWS Applications and Usage to Reduce CostsAWS Sydney Summit 2013 - Optimizing AWS Applications and Usage to Reduce Costs
AWS Sydney Summit 2013 - Optimizing AWS Applications and Usage to Reduce CostsAmazon Web Services
 
AWS Cloud Kata | Bangkok - Getting to Profitability
AWS Cloud Kata | Bangkok - Getting to ProfitabilityAWS Cloud Kata | Bangkok - Getting to Profitability
AWS Cloud Kata | Bangkok - Getting to ProfitabilityAmazon Web Services
 
Creating a Single Source of Truth: Leverage all of your data with powerful an...
Creating a Single Source of Truth: Leverage all of your data with powerful an...Creating a Single Source of Truth: Leverage all of your data with powerful an...
Creating a Single Source of Truth: Leverage all of your data with powerful an...Looker
 
Kanban Intro: Learning by doing
Kanban Intro: Learning by doingKanban Intro: Learning by doing
Kanban Intro: Learning by doingRobert Simmons
 
AWS Summit 2013 | Auckland - Optimizing Your AWS Applications and Usage to Re...
AWS Summit 2013 | Auckland - Optimizing Your AWS Applications and Usage to Re...AWS Summit 2013 | Auckland - Optimizing Your AWS Applications and Usage to Re...
AWS Summit 2013 | Auckland - Optimizing Your AWS Applications and Usage to Re...Amazon Web Services
 
Inventory Management
Inventory ManagementInventory Management
Inventory ManagementiQmetrixCorp
 
Business Presentation
Business PresentationBusiness Presentation
Business PresentationLotteRandall
 
Real Time Analytics On AWS: Optimized Architectures
Real Time Analytics On AWS: Optimized ArchitecturesReal Time Analytics On AWS: Optimized Architectures
Real Time Analytics On AWS: Optimized ArchitecturesAmazon Web Services
 
Stop Flying Blind! Quantifying Risk with Monte Carlo Simulation
Stop Flying Blind! Quantifying Risk with Monte Carlo SimulationStop Flying Blind! Quantifying Risk with Monte Carlo Simulation
Stop Flying Blind! Quantifying Risk with Monte Carlo SimulationSam McAfee
 
Why all software teams move towards zero innovation speed - And what to do ab...
Why all software teams move towards zero innovation speed - And what to do ab...Why all software teams move towards zero innovation speed - And what to do ab...
Why all software teams move towards zero innovation speed - And what to do ab...Dirk Jan Swagerman
 

Ähnlich wie Facilitating the Elephant carpaccio exercise (20)

'What is an Agile tester': Henrik Kniberg @ Colombo Agile Conference 2014
'What is an Agile tester': Henrik Kniberg @ Colombo Agile Conference 2014'What is an Agile tester': Henrik Kniberg @ Colombo Agile Conference 2014
'What is an Agile tester': Henrik Kniberg @ Colombo Agile Conference 2014
 
Developer Day Tech Session at QuickBooks Connect Sydney 2017
Developer Day Tech Session at QuickBooks Connect Sydney 2017Developer Day Tech Session at QuickBooks Connect Sydney 2017
Developer Day Tech Session at QuickBooks Connect Sydney 2017
 
RQ Retail Management: Connecting the Inventory Dots
RQ Retail Management: Connecting the Inventory DotsRQ Retail Management: Connecting the Inventory Dots
RQ Retail Management: Connecting the Inventory Dots
 
Acceptance Test-driven Development: Mastering Agile Testing
Acceptance Test-driven Development: Mastering Agile TestingAcceptance Test-driven Development: Mastering Agile Testing
Acceptance Test-driven Development: Mastering Agile Testing
 
Franchise presentation
Franchise presentationFranchise presentation
Franchise presentation
 
Falconide Triggered/Transactional Emails Product Presentation
Falconide Triggered/Transactional Emails Product PresentationFalconide Triggered/Transactional Emails Product Presentation
Falconide Triggered/Transactional Emails Product Presentation
 
Optimizing Your AWS Applications and Usage to Reduce Costs
Optimizing Your AWS Applications and Usage to Reduce CostsOptimizing Your AWS Applications and Usage to Reduce Costs
Optimizing Your AWS Applications and Usage to Reduce Costs
 
1030 track2 komp
1030 track2 komp1030 track2 komp
1030 track2 komp
 
Maximizing Your ML Success with Innovative Feature Engineering
Maximizing Your ML Success with Innovative Feature EngineeringMaximizing Your ML Success with Innovative Feature Engineering
Maximizing Your ML Success with Innovative Feature Engineering
 
AWS Sydney Summit 2013 - Optimizing AWS Applications and Usage to Reduce Costs
AWS Sydney Summit 2013 - Optimizing AWS Applications and Usage to Reduce CostsAWS Sydney Summit 2013 - Optimizing AWS Applications and Usage to Reduce Costs
AWS Sydney Summit 2013 - Optimizing AWS Applications and Usage to Reduce Costs
 
AWS Cloud Kata | Bangkok - Getting to Profitability
AWS Cloud Kata | Bangkok - Getting to ProfitabilityAWS Cloud Kata | Bangkok - Getting to Profitability
AWS Cloud Kata | Bangkok - Getting to Profitability
 
Creating a Single Source of Truth: Leverage all of your data with powerful an...
Creating a Single Source of Truth: Leverage all of your data with powerful an...Creating a Single Source of Truth: Leverage all of your data with powerful an...
Creating a Single Source of Truth: Leverage all of your data with powerful an...
 
Kanban Intro: Learning by doing
Kanban Intro: Learning by doingKanban Intro: Learning by doing
Kanban Intro: Learning by doing
 
AWS Summit 2013 | Auckland - Optimizing Your AWS Applications and Usage to Re...
AWS Summit 2013 | Auckland - Optimizing Your AWS Applications and Usage to Re...AWS Summit 2013 | Auckland - Optimizing Your AWS Applications and Usage to Re...
AWS Summit 2013 | Auckland - Optimizing Your AWS Applications and Usage to Re...
 
Inventory Management
Inventory ManagementInventory Management
Inventory Management
 
Value analysis
Value analysisValue analysis
Value analysis
 
Business Presentation
Business PresentationBusiness Presentation
Business Presentation
 
Real Time Analytics On AWS: Optimized Architectures
Real Time Analytics On AWS: Optimized ArchitecturesReal Time Analytics On AWS: Optimized Architectures
Real Time Analytics On AWS: Optimized Architectures
 
Stop Flying Blind! Quantifying Risk with Monte Carlo Simulation
Stop Flying Blind! Quantifying Risk with Monte Carlo SimulationStop Flying Blind! Quantifying Risk with Monte Carlo Simulation
Stop Flying Blind! Quantifying Risk with Monte Carlo Simulation
 
Why all software teams move towards zero innovation speed - And what to do ab...
Why all software teams move towards zero innovation speed - And what to do ab...Why all software teams move towards zero innovation speed - And what to do ab...
Why all software teams move towards zero innovation speed - And what to do ab...
 

Mehr von Peter Antman

Core Protocols - A workshop
Core Protocols - A workshopCore Protocols - A workshop
Core Protocols - A workshopPeter Antman
 
Lean Canvas - a hypotheses board
Lean Canvas - a hypotheses boardLean Canvas - a hypotheses board
Lean Canvas - a hypotheses boardPeter Antman
 
Strong decisions with consensus, Agila Sverige 2014
Strong decisions with consensus, Agila Sverige 2014Strong decisions with consensus, Agila Sverige 2014
Strong decisions with consensus, Agila Sverige 2014Peter Antman
 
Stop the line @spotify
Stop the line @spotifyStop the line @spotify
Stop the line @spotifyPeter Antman
 
Tear Down the Pyramid Again - Agile Management from the trenches
Tear Down the Pyramid Again - Agile Management from the trenchesTear Down the Pyramid Again - Agile Management from the trenches
Tear Down the Pyramid Again - Agile Management from the trenchesPeter Antman
 
The Bespoke Software Product Factory (2007)
The Bespoke Software Product Factory (2007)The Bespoke Software Product Factory (2007)
The Bespoke Software Product Factory (2007)Peter Antman
 
Java 1.5 - whats new and modern patterns (2007)
Java 1.5 - whats new and modern patterns (2007)Java 1.5 - whats new and modern patterns (2007)
Java 1.5 - whats new and modern patterns (2007)Peter Antman
 
Java Server Faces 1.2 presented (2007)
Java Server Faces 1.2 presented (2007)Java Server Faces 1.2 presented (2007)
Java Server Faces 1.2 presented (2007)Peter Antman
 
EJB 3.0 Walkthrough (2006)
EJB 3.0 Walkthrough (2006)EJB 3.0 Walkthrough (2006)
EJB 3.0 Walkthrough (2006)Peter Antman
 
Så funkar det (del 3) - webben
Så funkar det (del 3) -  webbenSå funkar det (del 3) -  webben
Så funkar det (del 3) - webbenPeter Antman
 
Så funkar det (del 2) - mail
Så funkar det (del 2) - mailSå funkar det (del 2) - mail
Så funkar det (del 2) - mailPeter Antman
 
Så funkar det (del 1) - word
Så funkar det (del 1) - wordSå funkar det (del 1) - word
Så funkar det (del 1) - wordPeter Antman
 
eXtreme Programming
eXtreme Programming eXtreme Programming
eXtreme Programming Peter Antman
 
SCRUM at Polopoly - or building a lean culture
SCRUM at Polopoly - or building a lean cultureSCRUM at Polopoly - or building a lean culture
SCRUM at Polopoly - or building a lean culturePeter Antman
 
Threads and concurrency in Java 1.5
Threads and concurrency in Java 1.5Threads and concurrency in Java 1.5
Threads and concurrency in Java 1.5Peter Antman
 
Lägg ner utvecklingssamtalen!
Lägg ner utvecklingssamtalen!Lägg ner utvecklingssamtalen!
Lägg ner utvecklingssamtalen!Peter Antman
 
Kanban at Polopoly
Kanban at PolopolyKanban at Polopoly
Kanban at PolopolyPeter Antman
 

Mehr von Peter Antman (19)

Core Protocols - A workshop
Core Protocols - A workshopCore Protocols - A workshop
Core Protocols - A workshop
 
Lean Canvas - a hypotheses board
Lean Canvas - a hypotheses boardLean Canvas - a hypotheses board
Lean Canvas - a hypotheses board
 
Strong decisions with consensus, Agila Sverige 2014
Strong decisions with consensus, Agila Sverige 2014Strong decisions with consensus, Agila Sverige 2014
Strong decisions with consensus, Agila Sverige 2014
 
Lean Dot Game
Lean Dot Game Lean Dot Game
Lean Dot Game
 
Stop the line @spotify
Stop the line @spotifyStop the line @spotify
Stop the line @spotify
 
Tear Down the Pyramid Again - Agile Management from the trenches
Tear Down the Pyramid Again - Agile Management from the trenchesTear Down the Pyramid Again - Agile Management from the trenches
Tear Down the Pyramid Again - Agile Management from the trenches
 
Piemonte vin
Piemonte vinPiemonte vin
Piemonte vin
 
The Bespoke Software Product Factory (2007)
The Bespoke Software Product Factory (2007)The Bespoke Software Product Factory (2007)
The Bespoke Software Product Factory (2007)
 
Java 1.5 - whats new and modern patterns (2007)
Java 1.5 - whats new and modern patterns (2007)Java 1.5 - whats new and modern patterns (2007)
Java 1.5 - whats new and modern patterns (2007)
 
Java Server Faces 1.2 presented (2007)
Java Server Faces 1.2 presented (2007)Java Server Faces 1.2 presented (2007)
Java Server Faces 1.2 presented (2007)
 
EJB 3.0 Walkthrough (2006)
EJB 3.0 Walkthrough (2006)EJB 3.0 Walkthrough (2006)
EJB 3.0 Walkthrough (2006)
 
Så funkar det (del 3) - webben
Så funkar det (del 3) -  webbenSå funkar det (del 3) -  webben
Så funkar det (del 3) - webben
 
Så funkar det (del 2) - mail
Så funkar det (del 2) - mailSå funkar det (del 2) - mail
Så funkar det (del 2) - mail
 
Så funkar det (del 1) - word
Så funkar det (del 1) - wordSå funkar det (del 1) - word
Så funkar det (del 1) - word
 
eXtreme Programming
eXtreme Programming eXtreme Programming
eXtreme Programming
 
SCRUM at Polopoly - or building a lean culture
SCRUM at Polopoly - or building a lean cultureSCRUM at Polopoly - or building a lean culture
SCRUM at Polopoly - or building a lean culture
 
Threads and concurrency in Java 1.5
Threads and concurrency in Java 1.5Threads and concurrency in Java 1.5
Threads and concurrency in Java 1.5
 
Lägg ner utvecklingssamtalen!
Lägg ner utvecklingssamtalen!Lägg ner utvecklingssamtalen!
Lägg ner utvecklingssamtalen!
 
Kanban at Polopoly
Kanban at PolopolyKanban at Polopoly
Kanban at Polopoly
 

Kürzlich hochgeladen

Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxRTS corp
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptxVinzoCenzo
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdfAndrey Devyatkin
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesVictoriaMetrics
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITmanoharjgpsolutions
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesKrzysztofKkol1
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 

Kürzlich hochgeladen (20)

Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptx
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 Updates
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh IT
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 

Facilitating the Elephant carpaccio exercise

  • 1. Slicing user stories really SMALL peter.antman@crisp.se Peter Antman Based on Henrik Knibergs facilitation guide: http://blog.crisp.se/2013/07/25/henrikkniberg/elephant-carpaccio-facilitation-guide
  • 2. A (User) Story Independent Negotiable Valuable Estimable Small Testable Acronym courtesy of Bill Wake – www.xp123.com Vertical Testable User-valuable Kniberg Gui Client Backend Story Henrik Kniberg
  • 3. How can a User Story look
  • 4. Grooming EPICS  User Stories Story Time Session Story Time Session Story Time Session Henrik Kniberg
  • 5. Story slicing – making thinner but vertical Smaller Bigger Minutes Hours Days Weeks Month Henrik Kniberg
  • 6. How big are your user stories? Target Story = A few days Task = a few hours Commit = several a day Smaller Bigger Minutes Hours Days Weeks Month Henrik Kniberg
  • 7. Why split user stories? Discuss in pairs Learn faster Deliver more often Happier stakeholders More in-sync with other people & teams Better prioritizations Sense of velocity Better product earlier More business options Less risk (less time “underwater”). Easier planning Henrik Kniberg
  • 8. Value curve Big stories Time Value Delivered (comulative) Waterfall Small stories Henrik Kniberg
  • 9.
  • 10. We will build  A a simple retail calculator  Using any programming language  It takes input, and omit result. – Any interface is OK (command, web, gui)  40 minutes in 5 iterations x 8 minutes  We will do it by slicing the story in 15 – 20 pieces  Elephant carpaccio = very thin slices, each one still elephant-shaped. Together they form the whole elephant. Henrik Kniberg
  • 11. Elephant Carpaccio Background Your sales department has asked you for a quoting application. They wrote this user story “As a sales person, I want to quickly get the final price of an order” Usage Our sales support system should accept three inputs number of items a price per item a 2-letter state code Compute the price of the order, given the discount and state tax. Mattis Skarin
  • 12. Priorities 5 states 5 discounts 5 states Validation, fancy gui, etc Hello world Order value Henrik Kniberg
  • 13. Create backlog What is your first slice? When have you an order value? Whats next slice after order value? • In pairs • 10 + 5 minutes • Write 10 – 20 demoable user stories • Each should be implementable in 2 – 6 minutes • Real input and output and different from last Henrik Kniberg
  • 14. One way of slicing it 1. Echo input 2. Walking skeleton 3. Order value 2 inputs, 1 output. No state tax, no discounts. 4. Hard-coded state tax Still 2 inputs, 1 output. Utah state tax added automatically. (Now we can go live in Utah!). 5. Manual tax (3 input: price per item, # of items, state tax %). Output is order value with state tax added. User inputs actual tax rate rather than state code. This gives simpler code (no internal data structure to map state code to tax rate), so we get faster delivery. 6. State ID (3 input: price per item, # of item, state tax) but only two states are supported. Any other gives error message. 7. Add the other 3 states (Llimited value in adding 1 state at a time at this point - there is no risk reduction value, and it takes literally just a few seconds more to all 3 states at once) 8. Once discount 9. 2 discounts 10. All discounts Verify we can read input Order total Enable tax in one state Enable manual tax Enable tax. Ship all states Discount for core customers Discounts for all levels Henrik Kniberg & Mattias Skarin
  • 15. Build it • 5 iterations, 8 minutes per iteration • I will shout “demo time” after each iteration – Do a fast demo to another team – Next iteration starts emediately – Shout slice for each slice you have done Henrik Kniberg
  • 16. Review • How far did you get on the value curve? • How many slices do you have? • Acceptance test – Start the application – I am in Utha – Buying 978 items – Each cost $270.99 • Compare result Order Value: $ 265 028.22 Tax: $ 283 182.65 Tax & Rebate $240 705.26 Henrik Kniberg
  • 17. Debfrief • What whas it like? • Round robin – What did you learn? – What will you do?

Hinweis der Redaktion

  1. DISCUSS: Ways to split stories INVEST