SlideShare a Scribd company logo
1 of 19
NANO INCREMENTAL
DEVELOPMENT
AKA ELEPHANT CARPACCIO
WHAT HAVE WE GOTTEN
OURSELVES INTO?
• Elephant Carpaccio
is an exercise
invented by Alistair
Cockburn to help
people practice
breaking user
stories and their
related tasks into
really thin vertical
slices.
WHAT’S A STORY
ANYWAY?
• As a <type of user, "Actor">, I want <some
action> so that <some goal/achievement>.
• As Alex, I want to be able to filter my dash
dashboard by list so that I can isolate data to a
specific list.
• As a Developer I can select from configuration
options, press a button and have a VM in less
than 10 minutes.
“INVEST”
• Independent, demo-able,
potentially release-able
• Negotiable
• Valuable (Customer,
knowledge)
• Estimatable
• Sized Right
• Testable (Has i/o)
User
GUI
Client
Back
End
HOW BIG CAN STORIES
BE?
Months Weeks Days Hours Minutes
WHAT WE WILL DO TODAY
• Build a simple application
• 5 iterations of 10 minutes
each
• Instead of 3-5 slices,
we’re aiming for 15-20
WHY SMALLER STORIES?
• Learn faster w less risk
• Better product earlier
• More business options
• Less time “underwater”
• Deliver value more
often
• Happier stakeholders
• Happier users
CumulativeValueDelivered
Time
Small stories
Medium stories
Big stories
THE PRODUCT:
DISCOUNT CALCULATOR
Three Inputs:
• Quantity
• Unit price
• 2-letter state code
One Output:
• Total price (discounted
price plus sales tax)
SPRINT 0:
CREATE THE BACKLOG
• Demo-able
• Implementable within
sprint time box
• Noticeably different from
other “slices”
• Adds value
HOW WILL YOU BUILD?
• What is your first
slice?
• Can you slice things
even thinner?
• Risk reduction
• Value = customer
value + knowledge
value
• Walking skeleton….
SPRINT 1…
• Write code
• Tests (TDD, red/green, NFT?)
• Pair?
• Shout “slice” whenever you finish
one
• Go!
• Demo / Acceptance test…
SPRINT 2…
• Shout “slice” whenever
you finish one
• Demo / Acceptance
test…
SPRINT 3…
• Shout “slice” whenever
you finish one
• Demo / Acceptance
test…
SPRINT 4…
• Shout “slice” whenever
you finish one
• Demo / Acceptance
test…
SPRINT 5…
• Shout “slice” whenever
you finish one
• Demo / Acceptance
test…
COMMON SPLITTING
TECHNIQUES
• Defer complexity
• Zero, then one, then
many (e.g, states
codes)
• Hard coding values
• Defer validation
• Simple interface (GUI
last)
RETROSPECTIVE
• How far did you get?
• How was your code
quality?
• How many and what kind
of slices?
• What did you learn?
BUT WE CAN’T SHIP
THAT STORY…
• Independent: demo-able, potentially release-able
• A Minimal Viable Product or Minimal Viable
Feature consists of one or more stories that have
been put together to provide enough value to
warrant it being put into production.
• The Product Owner decides when enough value
has accrued to meet the “let’s ship it” threshold
www.andycleff.com
“Type a quote here.”

More Related Content

What's hot

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
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user storiescpolc
 
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
 
Forecasting with Less Effort and More Accuracy (Agile Camp NY 2018)
Forecasting with Less Effort and More Accuracy (Agile Camp NY 2018)Forecasting with Less Effort and More Accuracy (Agile Camp NY 2018)
Forecasting with Less Effort and More Accuracy (Agile Camp NY 2018)Matthew Philip
 
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 Requirements with User Story Mapping
Agile Requirements with User Story MappingAgile Requirements with User Story Mapping
Agile Requirements with User Story MappingAndreas Hägglund
 
Comic Agile Volume One_ When ag - Luxshan Ratnaravi.pdf
Comic Agile Volume One_ When ag - Luxshan Ratnaravi.pdfComic Agile Volume One_ When ag - Luxshan Ratnaravi.pdf
Comic Agile Volume One_ When ag - Luxshan Ratnaravi.pdfTunde Renner
 
User story splitting techniques
User story splitting techniquesUser story splitting techniques
User story splitting techniquesAshutosh Rai
 
User Story Splitting
User Story SplittingUser Story Splitting
User Story Splittingtrishly
 
Writing Effective User Stories
Writing Effective User StoriesWriting Effective User Stories
Writing Effective User StoriesJaneve George
 
User Story Mapping in Practice
User Story Mapping in PracticeUser Story Mapping in Practice
User Story Mapping in PracticeSteve Rogalsky
 
User Story Smells & Anti-patterns
User Story Smells & Anti-patternsUser Story Smells & Anti-patterns
User Story Smells & Anti-patternsFadi Stephan
 
Eric Ries - The Lean Startup - Google Tech Talk
Eric Ries - The Lean Startup - Google Tech TalkEric Ries - The Lean Startup - Google Tech Talk
Eric Ries - The Lean Startup - Google Tech TalkEric Ries
 
Agile Roles & responsibilities
Agile Roles & responsibilitiesAgile Roles & responsibilities
Agile Roles & responsibilitiesRavi Tadwalkar
 

What's hot (20)

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
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user stories
 
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
 
Forecasting with Less Effort and More Accuracy (Agile Camp NY 2018)
Forecasting with Less Effort and More Accuracy (Agile Camp NY 2018)Forecasting with Less Effort and More Accuracy (Agile Camp NY 2018)
Forecasting with Less Effort and More Accuracy (Agile Camp NY 2018)
 
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 Requirements with User Story Mapping
Agile Requirements with User Story MappingAgile Requirements with User Story Mapping
Agile Requirements with User Story Mapping
 
Comic Agile Volume One_ When ag - Luxshan Ratnaravi.pdf
Comic Agile Volume One_ When ag - Luxshan Ratnaravi.pdfComic Agile Volume One_ When ag - Luxshan Ratnaravi.pdf
Comic Agile Volume One_ When ag - Luxshan Ratnaravi.pdf
 
User story splitting techniques
User story splitting techniquesUser story splitting techniques
User story splitting techniques
 
Story of user story
Story of user storyStory of user story
Story of user story
 
Splitting User Stories
Splitting User StoriesSplitting User Stories
Splitting User Stories
 
User Story Splitting
User Story SplittingUser Story Splitting
User Story Splitting
 
Agile Planning and Estimation
Agile Planning and EstimationAgile Planning and Estimation
Agile Planning and Estimation
 
Writing Effective User Stories
Writing Effective User StoriesWriting Effective User Stories
Writing Effective User Stories
 
Building an MVP
Building an MVPBuilding an MVP
Building an MVP
 
User Story Mapping in Practice
User Story Mapping in PracticeUser Story Mapping in Practice
User Story Mapping in Practice
 
User Story Smells & Anti-patterns
User Story Smells & Anti-patternsUser Story Smells & Anti-patterns
User Story Smells & Anti-patterns
 
Eric Ries - The Lean Startup - Google Tech Talk
Eric Ries - The Lean Startup - Google Tech TalkEric Ries - The Lean Startup - Google Tech Talk
Eric Ries - The Lean Startup - Google Tech Talk
 
User Stories Training
User Stories TrainingUser Stories Training
User Stories Training
 
Agile Roles & responsibilities
Agile Roles & responsibilitiesAgile Roles & responsibilities
Agile Roles & responsibilities
 

Similar to Scrum Learning Game: Elephant Carpaccio

Agile Development Overview (with a bit about builds)
Agile Development Overview (with a bit about builds)Agile Development Overview (with a bit about builds)
Agile Development Overview (with a bit about builds)David Benjamin
 
Morph your mindset for Continuous Delivery, Agile Roots 2014
Morph your mindset for Continuous Delivery,  Agile Roots 2014Morph your mindset for Continuous Delivery,  Agile Roots 2014
Morph your mindset for Continuous Delivery, Agile Roots 2014lisacrispin
 
DevDay 2013 - Building Startups and Minimum Viable Products
DevDay 2013 - Building Startups and Minimum Viable ProductsDevDay 2013 - Building Startups and Minimum Viable Products
DevDay 2013 - Building Startups and Minimum Viable ProductsBen Hall
 
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...DevConFu
 
Lotuscript for large systems
Lotuscript for large systemsLotuscript for large systems
Lotuscript for large systemsBill Buchan
 
What we talk about when we talk about DevOps
What we talk about when we talk about DevOpsWhat we talk about when we talk about DevOps
What we talk about when we talk about DevOpsRicard Clau
 
Lean canvas validation_board_21_nov
Lean canvas validation_board_21_novLean canvas validation_board_21_nov
Lean canvas validation_board_21_novTeepakorn Siriwan
 
Software testing and quality assurance
Software testing and quality assuranceSoftware testing and quality assurance
Software testing and quality assuranceBenjamin Baumann
 
Xp 2016 superchargeyourproductbacklogwithuserstories-suzannelaz
Xp 2016 superchargeyourproductbacklogwithuserstories-suzannelazXp 2016 superchargeyourproductbacklogwithuserstories-suzannelaz
Xp 2016 superchargeyourproductbacklogwithuserstories-suzannelazLaz Allen
 
Effectively Using UI Automation
Effectively Using UI AutomationEffectively Using UI Automation
Effectively Using UI AutomationAlexander Repty
 
Low Cost Assistive Technology Solutions
Low Cost Assistive Technology SolutionsLow Cost Assistive Technology Solutions
Low Cost Assistive Technology Solutionswill wade
 
Inside Wordnik's Architecture
Inside Wordnik's ArchitectureInside Wordnik's Architecture
Inside Wordnik's ArchitectureTony Tam
 
Icinga Camp San Diego 2016 - Icinga Director
Icinga Camp San Diego 2016 - Icinga DirectorIcinga Camp San Diego 2016 - Icinga Director
Icinga Camp San Diego 2016 - Icinga DirectorIcinga
 
How I Learned to Stop Worrying and Love Legacy Code.....
How I Learned to Stop Worrying and Love Legacy Code.....How I Learned to Stop Worrying and Love Legacy Code.....
How I Learned to Stop Worrying and Love Legacy Code.....Mike Harris
 
Distributed teams - it takes two to tango
Distributed teams - it takes two to tangoDistributed teams - it takes two to tango
Distributed teams - it takes two to tangoMille Bessö
 
Emperors new clothes - digitalbarn2012
Emperors new clothes - digitalbarn2012Emperors new clothes - digitalbarn2012
Emperors new clothes - digitalbarn2012kevinjohngallagher
 

Similar to Scrum Learning Game: Elephant Carpaccio (20)

Agile Development Overview (with a bit about builds)
Agile Development Overview (with a bit about builds)Agile Development Overview (with a bit about builds)
Agile Development Overview (with a bit about builds)
 
Morph your mindset for Continuous Delivery, Agile Roots 2014
Morph your mindset for Continuous Delivery,  Agile Roots 2014Morph your mindset for Continuous Delivery,  Agile Roots 2014
Morph your mindset for Continuous Delivery, Agile Roots 2014
 
Scaling
ScalingScaling
Scaling
 
DevDay 2013 - Building Startups and Minimum Viable Products
DevDay 2013 - Building Startups and Minimum Viable ProductsDevDay 2013 - Building Startups and Minimum Viable Products
DevDay 2013 - Building Startups and Minimum Viable Products
 
AgileCamp 2014 Track 5: The Seven Wastes - Can You Get Leaner
AgileCamp 2014 Track 5: The Seven Wastes - Can You Get LeanerAgileCamp 2014 Track 5: The Seven Wastes - Can You Get Leaner
AgileCamp 2014 Track 5: The Seven Wastes - Can You Get Leaner
 
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
 
Bug Hunting Safari
Bug Hunting SafariBug Hunting Safari
Bug Hunting Safari
 
Lotuscript for large systems
Lotuscript for large systemsLotuscript for large systems
Lotuscript for large systems
 
What we talk about when we talk about DevOps
What we talk about when we talk about DevOpsWhat we talk about when we talk about DevOps
What we talk about when we talk about DevOps
 
Stackato v6
Stackato v6Stackato v6
Stackato v6
 
Lean canvas validation_board_21_nov
Lean canvas validation_board_21_novLean canvas validation_board_21_nov
Lean canvas validation_board_21_nov
 
Software testing and quality assurance
Software testing and quality assuranceSoftware testing and quality assurance
Software testing and quality assurance
 
Xp 2016 superchargeyourproductbacklogwithuserstories-suzannelaz
Xp 2016 superchargeyourproductbacklogwithuserstories-suzannelazXp 2016 superchargeyourproductbacklogwithuserstories-suzannelaz
Xp 2016 superchargeyourproductbacklogwithuserstories-suzannelaz
 
Effectively Using UI Automation
Effectively Using UI AutomationEffectively Using UI Automation
Effectively Using UI Automation
 
Low Cost Assistive Technology Solutions
Low Cost Assistive Technology SolutionsLow Cost Assistive Technology Solutions
Low Cost Assistive Technology Solutions
 
Inside Wordnik's Architecture
Inside Wordnik's ArchitectureInside Wordnik's Architecture
Inside Wordnik's Architecture
 
Icinga Camp San Diego 2016 - Icinga Director
Icinga Camp San Diego 2016 - Icinga DirectorIcinga Camp San Diego 2016 - Icinga Director
Icinga Camp San Diego 2016 - Icinga Director
 
How I Learned to Stop Worrying and Love Legacy Code.....
How I Learned to Stop Worrying and Love Legacy Code.....How I Learned to Stop Worrying and Love Legacy Code.....
How I Learned to Stop Worrying and Love Legacy Code.....
 
Distributed teams - it takes two to tango
Distributed teams - it takes two to tangoDistributed teams - it takes two to tango
Distributed teams - it takes two to tango
 
Emperors new clothes - digitalbarn2012
Emperors new clothes - digitalbarn2012Emperors new clothes - digitalbarn2012
Emperors new clothes - digitalbarn2012
 

Recently uploaded

Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating SystemRashmi Bhat
 
Engineering Drawing section of solid
Engineering Drawing     section of solidEngineering Drawing     section of solid
Engineering Drawing section of solidnamansinghjarodiya
 
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Sumanth A
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdfAkritiPradhan2
 
home automation using Arduino by Aditya Prasad
home automation using Arduino by Aditya Prasadhome automation using Arduino by Aditya Prasad
home automation using Arduino by Aditya Prasadaditya806802
 
Indian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptIndian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptMadan Karki
 
Internet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxInternet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxVelmuruganTECE
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionMebane Rash
 
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmComputer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmDeepika Walanjkar
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleAlluxio, Inc.
 
Research Methodology for Engineering pdf
Research Methodology for Engineering pdfResearch Methodology for Engineering pdf
Research Methodology for Engineering pdfCaalaaAbdulkerim
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxsiddharthjain2303
 
Python Programming for basic beginners.pptx
Python Programming for basic beginners.pptxPython Programming for basic beginners.pptx
Python Programming for basic beginners.pptxmohitesoham12
 
GSK & SEAMANSHIP-IV LIFE SAVING APPLIANCES .pptx
GSK & SEAMANSHIP-IV LIFE SAVING APPLIANCES .pptxGSK & SEAMANSHIP-IV LIFE SAVING APPLIANCES .pptx
GSK & SEAMANSHIP-IV LIFE SAVING APPLIANCES .pptxshuklamittt0077
 
Malware Detection By Machine Learning Presentation.pptx
Malware Detection By Machine Learning  Presentation.pptxMalware Detection By Machine Learning  Presentation.pptx
Malware Detection By Machine Learning Presentation.pptxalishapatidar2021
 
Module-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdfModule-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdfManish Kumar
 
Comprehensive energy systems.pdf Comprehensive energy systems.pdf
Comprehensive energy systems.pdf Comprehensive energy systems.pdfComprehensive energy systems.pdf Comprehensive energy systems.pdf
Comprehensive energy systems.pdf Comprehensive energy systems.pdfalene1
 
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catcherssdickerson1
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSsandhya757531
 

Recently uploaded (20)

Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating System
 
Engineering Drawing section of solid
Engineering Drawing     section of solidEngineering Drawing     section of solid
Engineering Drawing section of solid
 
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
 
home automation using Arduino by Aditya Prasad
home automation using Arduino by Aditya Prasadhome automation using Arduino by Aditya Prasad
home automation using Arduino by Aditya Prasad
 
Indian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptIndian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.ppt
 
Internet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxInternet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptx
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of Action
 
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmComputer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
 
Designing pile caps according to ACI 318-19.pptx
Designing pile caps according to ACI 318-19.pptxDesigning pile caps according to ACI 318-19.pptx
Designing pile caps according to ACI 318-19.pptx
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at Scale
 
Research Methodology for Engineering pdf
Research Methodology for Engineering pdfResearch Methodology for Engineering pdf
Research Methodology for Engineering pdf
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptx
 
Python Programming for basic beginners.pptx
Python Programming for basic beginners.pptxPython Programming for basic beginners.pptx
Python Programming for basic beginners.pptx
 
GSK & SEAMANSHIP-IV LIFE SAVING APPLIANCES .pptx
GSK & SEAMANSHIP-IV LIFE SAVING APPLIANCES .pptxGSK & SEAMANSHIP-IV LIFE SAVING APPLIANCES .pptx
GSK & SEAMANSHIP-IV LIFE SAVING APPLIANCES .pptx
 
Malware Detection By Machine Learning Presentation.pptx
Malware Detection By Machine Learning  Presentation.pptxMalware Detection By Machine Learning  Presentation.pptx
Malware Detection By Machine Learning Presentation.pptx
 
Module-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdfModule-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdf
 
Comprehensive energy systems.pdf Comprehensive energy systems.pdf
Comprehensive energy systems.pdf Comprehensive energy systems.pdfComprehensive energy systems.pdf Comprehensive energy systems.pdf
Comprehensive energy systems.pdf Comprehensive energy systems.pdf
 
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
 

Scrum Learning Game: Elephant Carpaccio

  • 2. WHAT HAVE WE GOTTEN OURSELVES INTO? • Elephant Carpaccio is an exercise invented by Alistair Cockburn to help people practice breaking user stories and their related tasks into really thin vertical slices.
  • 3. WHAT’S A STORY ANYWAY? • As a <type of user, "Actor">, I want <some action> so that <some goal/achievement>. • As Alex, I want to be able to filter my dash dashboard by list so that I can isolate data to a specific list. • As a Developer I can select from configuration options, press a button and have a VM in less than 10 minutes.
  • 4. “INVEST” • Independent, demo-able, potentially release-able • Negotiable • Valuable (Customer, knowledge) • Estimatable • Sized Right • Testable (Has i/o) User GUI Client Back End
  • 5. HOW BIG CAN STORIES BE? Months Weeks Days Hours Minutes
  • 6. WHAT WE WILL DO TODAY • Build a simple application • 5 iterations of 10 minutes each • Instead of 3-5 slices, we’re aiming for 15-20
  • 7. WHY SMALLER STORIES? • Learn faster w less risk • Better product earlier • More business options • Less time “underwater” • Deliver value more often • Happier stakeholders • Happier users CumulativeValueDelivered Time Small stories Medium stories Big stories
  • 8. THE PRODUCT: DISCOUNT CALCULATOR Three Inputs: • Quantity • Unit price • 2-letter state code One Output: • Total price (discounted price plus sales tax)
  • 9. SPRINT 0: CREATE THE BACKLOG • Demo-able • Implementable within sprint time box • Noticeably different from other “slices” • Adds value
  • 10. HOW WILL YOU BUILD? • What is your first slice? • Can you slice things even thinner? • Risk reduction • Value = customer value + knowledge value • Walking skeleton….
  • 11. SPRINT 1… • Write code • Tests (TDD, red/green, NFT?) • Pair? • Shout “slice” whenever you finish one • Go! • Demo / Acceptance test…
  • 12. SPRINT 2… • Shout “slice” whenever you finish one • Demo / Acceptance test…
  • 13. SPRINT 3… • Shout “slice” whenever you finish one • Demo / Acceptance test…
  • 14. SPRINT 4… • Shout “slice” whenever you finish one • Demo / Acceptance test…
  • 15. SPRINT 5… • Shout “slice” whenever you finish one • Demo / Acceptance test…
  • 16. COMMON SPLITTING TECHNIQUES • Defer complexity • Zero, then one, then many (e.g, states codes) • Hard coding values • Defer validation • Simple interface (GUI last)
  • 17. RETROSPECTIVE • How far did you get? • How was your code quality? • How many and what kind of slices? • What did you learn?
  • 18. BUT WE CAN’T SHIP THAT STORY… • Independent: demo-able, potentially release-able • A Minimal Viable Product or Minimal Viable Feature consists of one or more stories that have been put together to provide enough value to warrant it being put into production. • The Product Owner decides when enough value has accrued to meet the “let’s ship it” threshold

Editor's Notes

  1. (Text on slide) After he named the exercise, he later realized that he got the language is backwards; we are not starting with an elephant and deconstructing it into slices. Having a pile of elephant slices does not produce an elephant. We are actually going in the other direction: starting from nothing and constructing the elephant. First an armature, then a walking skeleton, then a semblance of a moving elephant, and so on. So maybe Elephant lamination… not slicing - but Elephant Carpaccio is so much more catchy a name…
  2. So what’s a story? A Story typically follow a familiar format: As a <type of user, "Actor">, I want <some action> so that <some goal/achievement>.
  3. There’s quite a lot tucked into the simplicity of user/action/goal, and this mnemonic “Invest” helps breaks things out: Independent: story should be self-contained, w no dependency on another user story. It is demo-able for feedback and potentially releasable Negotiable: User stories, up until they are part of a sprint, can always be changed, refined, split and rewritten. Valuable: A user story must deliver value to the end user. (Where the actor is an external customer they can do something; for an internal user the value in a story might be knowledge). Value should be noticeably different from any other story. Estimatable: Clear DoD: so the team will be able to estimate the effort to complete it Sized right: typically this means that it can be completed within a single iteration with some level of certainty; Testable: Usually some sort of input/output and it has clear acceptance criteria. Also, typically spans multiple architectural layers: UI, client, and a backend. Nobody has figured out how to work that into the mnemonic though…
  4. How big can stories be? The “sized right” criteria is a little fuzzy. “Fits into an iteration” - which could be anywhere from a week to a month. Really big stories are typically called epics - which might then span more than one iteration. Anyway we keep our stories down in size to prob days. Today, we’re gonna play a bit and see what happens when we go to minutes… while we still keep them vertical
  5. Plan on use any programming language you want. Interface could be console, command line, mobile, web, gui, whatever.
  6. Why? Conceptually there are a lot of benefits to thin slicing Allows for quicker feedback cycles Makes it easier to verify things since there’s just a small increment of functionality Provides much more flexibility - for example dropping a story without the burden of the sunk cost Helps prevent assumptions which can lead to bloated stories Over time the area under the value curve - the cumulative value delivered is greater - which leads to much higher customer satisfaction And we’ll see what comes out of today’s experiment
  7. We will build a retail discount calculator: a runnable application with a UI taking 3 inputs and producing 1 output. (Write discount levels and sales tax on a whiteboard) Start w the first 3 Discount Levels  (change mid project to 5) • 1,000 3% • 3,000 5% • 5,000 7% • 10,000 10% <- add mid project • 50,000 15% <- add mid project 5 states sales tax (any other produces error message) • UT 4.7% • CA 7.5% • NV 6.85% • PA 6% • NJ 7% Set let’s break up into teams…. grabs some post its, and then we’ll talk about sprint 0…
  8. Plan on use any programming language you want. Interface could be console, command line, web, gui, whatever. Decide how will you write & test your code? Make a decision & stick with it. TDD. By-the-book TDD. Red Green Refactor. Red-green. Same as above, but refactoring is optional. Some tests. For some but not for all slices, and not necessarily test-first. NFT (no f*ing tests). Close laps tops. Grab post-its and pens. Create your backlogs
  9. Anybody need another sprint 0????
  10. Oh, legal just called. They said we can’t ship this thing unless we compute sales tax…
  11. Sales just called, they have a couple of whales on the hook, and we need two more discount levels * 10,000 10% * 50,000 15%
  12. How did you sprint? First - just a simple hello-world / echo-input-to-output Order value. 2 inputs (quantity and price), hard coded state? or enter sales tax, and 1 output. How did you handle sales tax? Sales tax directly? Simpler code, no data structure to map state to tax rate? State look ups, discount look ups GUI, etc…
  13. Name some take-away insights from today, Anything you might do differently in the future.
  14. Why would you want to build a story that isn't shippable? The answer is that some aspects of a feature might not be production worthy if you look at them in isolation.  An feature can consists of 1 or more stories, and an MVP of one or more features. The Product Owner then decides when there’s enough accrued value in individual stories to ship something.
  15. You can find me at http://www.andycleff.com