SlideShare una empresa de Scribd logo
1 de 17
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?

Más contenido relacionado

La actualidad más candente

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
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user storiescpolc
 
Agile scrum fundamentals
Agile scrum fundamentalsAgile scrum fundamentals
Agile scrum fundamentalsDeniz Gungor
 
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessSplitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessStephen Tucker
 
"How to write better User Stories" por @jrhuerta
"How to write better User Stories" por @jrhuerta"How to write better User Stories" por @jrhuerta
"How to write better User Stories" por @jrhuertawebcat
 
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
 
Agile Scrum Presentation-Detailed
Agile Scrum Presentation-DetailedAgile Scrum Presentation-Detailed
Agile Scrum Presentation-DetailedPrashaanth T R
 
Agile Roles & responsibilities
Agile Roles & responsibilitiesAgile Roles & responsibilities
Agile Roles & responsibilitiesRavi Tadwalkar
 
User story and splitting workshop
User story and splitting workshopUser story and splitting workshop
User story and splitting workshopBrian Sjoberg
 
Backlog Refinement 101 & 202
Backlog Refinement 101 & 202Backlog Refinement 101 & 202
Backlog Refinement 101 & 202David Hanson
 
Agile Scrum Training Process
Agile Scrum Training ProcessAgile Scrum Training Process
Agile Scrum Training ProcessClarion Marketing
 
Agile Development
Agile DevelopmentAgile Development
Agile Developmentabdpse
 
Agile estimating 12112013 - Agile KC Dec 2013
Agile estimating 12112013 - Agile KC Dec 2013Agile estimating 12112013 - Agile KC Dec 2013
Agile estimating 12112013 - Agile KC Dec 2013molsonkc
 

La actualidad más candente (20)

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)
 
Scrum Process
Scrum ProcessScrum Process
Scrum Process
 
User Stories
User StoriesUser Stories
User Stories
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user stories
 
Agile scrum fundamentals
Agile scrum fundamentalsAgile scrum fundamentals
Agile scrum fundamentals
 
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessSplitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
 
"How to write better User Stories" por @jrhuerta
"How to write better User Stories" por @jrhuerta"How to write better User Stories" por @jrhuerta
"How to write better User Stories" por @jrhuerta
 
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
 
Agile Scrum Presentation-Detailed
Agile Scrum Presentation-DetailedAgile Scrum Presentation-Detailed
Agile Scrum Presentation-Detailed
 
Scrumban
ScrumbanScrumban
Scrumban
 
Sprint
SprintSprint
Sprint
 
Agile Roles & responsibilities
Agile Roles & responsibilitiesAgile Roles & responsibilities
Agile Roles & responsibilities
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
User story and splitting workshop
User story and splitting workshopUser story and splitting workshop
User story and splitting workshop
 
Backlog Refinement 101 & 202
Backlog Refinement 101 & 202Backlog Refinement 101 & 202
Backlog Refinement 101 & 202
 
Agile Scrum Training Process
Agile Scrum Training ProcessAgile Scrum Training Process
Agile Scrum Training Process
 
Agile Development
Agile DevelopmentAgile Development
Agile Development
 
Product Backlog Management
Product Backlog ManagementProduct Backlog Management
Product Backlog Management
 
Scrumban (r)Evolution
Scrumban (r)EvolutionScrumban (r)Evolution
Scrumban (r)Evolution
 
Agile estimating 12112013 - Agile KC Dec 2013
Agile estimating 12112013 - Agile KC Dec 2013Agile estimating 12112013 - Agile KC Dec 2013
Agile estimating 12112013 - Agile KC Dec 2013
 

Destacado

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
 

Destacado (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
 

Similar a 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
 
MVP Design Hacks
MVP Design HacksMVP Design Hacks
MVP Design HacksNaresh Jain
 
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
 
How to use your data to boost your email marketing ROI by Kelly Lorenz from A...
How to use your data to boost your email marketing ROI by Kelly Lorenz from A...How to use your data to boost your email marketing ROI by Kelly Lorenz from A...
How to use your data to boost your email marketing ROI by Kelly Lorenz from A...Markedu - Innovative Marketing Education
 
AWS APAC Webinar Series: How to Reduce Your Spend on AWS
AWS APAC Webinar Series: How to Reduce Your Spend on AWSAWS APAC Webinar Series: How to Reduce Your Spend on AWS
AWS APAC Webinar Series: How to Reduce Your Spend on AWSAmazon 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
 
How to Reduce your Spend on AWS
How to Reduce your Spend on AWSHow to Reduce your Spend on AWS
How to Reduce your Spend on AWSJoseph K. Ziegler
 
Inventory Management
Inventory ManagementInventory Management
Inventory ManagementiQmetrixCorp
 

Similar a 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
 
MVP Design Hacks
MVP Design HacksMVP Design Hacks
MVP Design Hacks
 
Workshop Cost of Delay In Action
Workshop Cost of Delay In ActionWorkshop Cost of Delay In Action
Workshop Cost of Delay In Action
 
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
 
How to use your data to boost your email marketing ROI by Kelly Lorenz from A...
How to use your data to boost your email marketing ROI by Kelly Lorenz from A...How to use your data to boost your email marketing ROI by Kelly Lorenz from A...
How to use your data to boost your email marketing ROI by Kelly Lorenz from A...
 
AWS APAC Webinar Series: How to Reduce Your Spend on AWS
AWS APAC Webinar Series: How to Reduce Your Spend on AWSAWS APAC Webinar Series: How to Reduce Your Spend on AWS
AWS APAC Webinar Series: How to Reduce Your Spend on AWS
 
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...
 
How to Reduce your Spend on AWS
How to Reduce your Spend on AWSHow to Reduce your Spend on AWS
How to Reduce your Spend on AWS
 
Inventory Management
Inventory ManagementInventory Management
Inventory Management
 

Más de 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
 

Más de 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
 

Último

What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 

Último (20)

What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 

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?

Notas del editor

  1. DISCUSS: Ways to split stories INVEST