Elephant Carpaccio exercise
Facilitation guide
Henrik Kniberg & Alistair Cockburn, 2013-07-11
![](https://lh7-us.googleusercontent.com/docsz/AD_4nXeNZm5aFAEVW33rxLEldq2bhbJFv52moGdUPZvsPGm3yZrgOHSjsCGOtB_GiGVV8WSQsLqUexX7WuhBvsNJ4UK6CvhdA3yGPmK2qwKJoVkdBsjN8F7821ihsArjn_pU95xhe2f4mFzakrx-G5c?key=6AvFUmclbCnAqgHKNclrVQ)
What is this?
The Elephant Carpaccio exercise is a great way for software people to practice & learn how to break stories into really thin vertical slices. It also leads to interesting discussions about quality and tech practices.
The exercise was invented by Alistair Cockburn. We’ve cofacilitated it a bunch of times and we encourage people to run it everywhere.
This is a detailed (shu-level) facilitation guide based on how Alistair runs it plus some minor adaptations from Henrik.
The exercise takes 90-120 minutes, and scales well. We normally do it with 10-20 people but have also done it with groups up to 30.
Timing
2 hours is best, 1.5 hour works but feels a bit rushed.
- 15-20m discussion about user stories
- 20-30m breaking down backlog
- 40m coding
- 15-20m debrief
It’s possible to skip the coding part & just practice creating the backlog. But it takes away much of the fun, and you also miss out on interesting code-quality discussion at the end.
Preparation
- Print this handout for everyone (or write the bottom half of it on a whiteboard/flipchart).
- Make sure half of the participants have a laptop with a working dev environment. Less is OK, but at the very least every third participant should have one.
- Make sure there are power strips in the room.
- Internet isn’t really needed for the workshop, but it is helpful to be able to look stuff up while programming.
Running the workshop
Intro
- Purpose of this workshop is to learn to split stories really small..
Why split stories (optional)
This part is only needed if you haven’t already discussed the value of splitting stories
- Story = vertical, testable, user-valuable. Cuts across multiple architectural layers.
![](data:image/png;base64,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)
- Story slicing = making thinner stories (but still vertical)
![](data:image/png;base64,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)
- How big are your stories? tasks? commits? (mark on size-line)
- Target: Story = a few days. Task = a few hours. Commit = several times per hour.
- Why split stories? Discuss in pairs. (ask each pair to report, ask what’s missing, add any of the below that are still missing).
- Learn faster. Deliver more often. Happier stakeholders. More in-sync with other people & teams. Better prioritizations. Better product earlier. More business options. Less risk (less time “underwater”). Sense of velocity. Easier planning.
- Draw value curves for waterfall, big stories, and small stories. Discuss. Why does the “small stories” curve end up with higher cumulative value?
![](data:image/png;base64,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)
- Decision of “how small” should not be limited by “we can’t split this story”. In this workshop we will practice by exaggerating. We will make stories so tiny that anything you do today seems big in comparison.
What we will do
- Build a simple application in 40 minutes, divided into 5 iterations x 8 minutes.
- Most people would build this app in 2-3 slices, we will do it in 15-20.
- Elephant carpaccio = very thin slices, each one still elephant-shaped. Together they form the whole elephant.
![](data:image/png;base64,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)
The product
- Close your laptops! (or people will be fiddling with their environment instead of listening)
- (refer people to the handout).
- We will build a retail calculator. It is a runnable application with user interface, three inputs and one output.
- Use any programming language. Interface could be console, command line, web, gui, whatever.
- How many items
- Price per item
- 2-letter state code
- Output: total price of the order. Give a discount based on the total price, then add state tax based on the state code and discounted price.
Priorities
- I will illustrate priorities on this value curve.
- Target is 5 discounts, 5 states.
![](data:image/png;base64,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)
- You will break this into 10-20 slices.
- A slice is only valid if it has a UI, input & output, and is visibly different from last slice.
- I want 5 states before doing anything with discounts. Why? (so we can deploy! State tax is a legal requirement, discount is not)
![](data:image/png;base64,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)
- Validation & fancy GUI comes after 5 states & 5 discounts. Don’t spend any time on that before!
![](data:image/png;base64,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)
- No embellishing! Practice on building the highest-value thing first, all the time. For example, before you have 5 states, don’t waste a single keystroke on discount-related code!
- I don’t care how far you get on this curve. The important thing is that you practice microslicing. If you get all the way to the end with only 3 slices, you’ve wasted your time and missed the point of this exercise.
Create the backlog
- Split into groups of 2 or 3 (2 is better). Each group should have at least one programmer with a working dev environment.
- 10 minutes: Write your backlog on paper (laptops still closed).
- Write 10-20 demo-able user stories (“slices”) that will take you from nothing to 5 states & 5 discounts.
- Valid slice guideline:
- Implementable (including user interface) in 2-6 minutes.
- Noticeable different from last slice
- More valuable to customer than last slice (exception: for first couple of slices, focusing on reduced risk is OK).
- No slice is just a mockup or UI, a data structure, or test case.
- What is your first slice?
- (anything bigger than hello-world or echo-input-to-output is too big)
- Discuss risk-reduction value of implementing & “delivering” hello world as first slice. Value = customer value + knowledge value
- Discuss value of quickly building a “walking skeleton” version of the application (all key architectural components are in place and connected, but there is no “meat”, so we have a walking skeleton).
- Somewhere along the way you should reach the “order value” milestone - where you have 2 inputs (“# of items” & “price per item”) and multiply them. No discounts/states.
![](data:image/png;base64,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)
- What is your next slice, after order value? (will probably be too big - challenge them to make it smaller!). Sample backlog:
- Order value. 2 inputs, 1 output. No state tax, no discounts.
- Hard-coded state tax. Still 2 inputs, 1 output. Utah state tax added automatically. (Now we can go live in Utah!).
- 3 inputs (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.
- 3 inputs (price per item, # of item, state tax), but only two states are supported. Any other gives error message.
- Add the other 3 states. (discuss why there is limited 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)
- Key point: Minimum key strokes per slice! We want maximum value with minimum effort (= Lean!)
- 5 minutes: make your slices smaller. Try for at least 15 slices.
How will you work? (optional)
This workshop is primarily about story slicing, but adding a tech practices aspect gives it extra spice.
- How will you write & test your code? Make a decision & stick with it. Hold yourselves accountable! I reserve the right to harass any group that doesn’t.
- Option 1: TDD. By-the-book TDD. Red Green Refactor. Start each slice by writing a test that runs but fails. Then make the test green. Then refactor the code and make it clean.
- Option 2: Red-green. Same as above, but refactoring is optional.
- Option 3: Some tests. Will write some tests, but not for all slices, and not necessarily test-first.
- Option 4: NFT (no f*ing tests).
- Will you pair-program (= switch frequently), or have one business person & one programmer (business person tests, gives feedback, and improves the backlog)? Either is fine.
Build it
- 40 minutes, 5 iterations, 8 minutes per iteration.
- At the end of each iteration, I will call out “demo time!”. That means stop coding, and demonstrate your app to another team. Then get back to coding.
- Time doesn’t stop between iterations! So don’t spend too much time on demo.
- Shout “slice” whenever you finish a slice.
- Go!
- (start 8 minute timer. Remember to restart it immediately after each sprint. Also keep careful track of which iteration we are on right now, it’s easy to forget).
Review
- How far did you get? (mark each team’s approximate position on the value curve)
- (typical result: some teams get past 5 states & 5 discounts. Most teams at least get to hard-coded state tax).
- How many slices did you have?
- Acceptance test:
- Start your application and enter these values: I am in Utah, I’m buying 978 items, each item costs $270.99. (or pick whatever values you want).
- Tell me the output! (write each team’s output on the whiteboard).
- No fiddling around, just run the app and enter the values and see what comes out.
- (compare the results. Often the results differ, which is funny. Discuss possible reason for this. Some teams don’t support decimal numbers for item price, discuss false assumptions & how to reveal them).
Debrief
- Non-programmers: What was it like?
- Programmers: What was it like?
- How is your code quality, how proud are you of your code? (each programmer hold up 1-5 fingers).
- TDD people should be 4 or 5, otherwise they have skipped or misunderstood the refactoring step in TDD.
- Most programmers will be 1-2. Discuss how this is a potential pitfall of short iterations & small stories. Discuss importance of sustainable pace & quality, and how developers are responsible for this (Basic agile principle: team chooses how much work to pull in). Discuss “perceived” pressure vs real pressure.
- Any other questions or reflections?
- Round-robin: What did you learn? What will you do? Name one take-away insight from today, and one thing you will do differently in the future.