Never change a running system
That’s what they say. Well, we had our struggles and definitely needed to change something. That’s when the ‘elephant carpaccio’ workshop came in handy.
A short story
For months we had been running quite successfully by doing SCRUM and working with component teams. Each team took care of a specific platform and technology – one team for Android, one for iOS, one for Web, one for PHP and so on. The self-organization worked really well and we had a working release process.
But somehow we were not happy. From over-detailed feature concepts to the asynchrony while building features, from conception to live roll-out – there was always a thing that irritated. We often could not finish our features on time and in the end they never looked as they should. It was time for a change!
We started by building a transition team to plan the next steps. Maybe a cross-functional team instead of a component work style would be better? During the summer 2015 we switched to cross-functional teams – with a product owner, some concepter, designers, app developers, web devs, backend devs, business analysts and testers. We had a great kick-off event and created teams with Sci-Fi team names like Star Wars or Star Trek (they even wore Spock ears)! But even after aligning the teams mission to our company strategy something was still wrong.
We expected the teams to be more productive, but they still were caught in their old by-component ways. Even on the team boards we had rows named “Web”, “PHP”, “Android” or “iOS”. Moreover we aligned our company goals and defined specific goals for the old component teams. This made it even harder to get into a cross-functional working habit.
Small and vertical
To solve this problem, we were on the lookout for a new solution for a real cross-functional style. We thought about slicing the work into very small chunks and implementing requirements vertically instead of in layers.
You ask why? It’s simple: Instead of people just sitting together we could achieve real teamwork (yeah!) with better and faster feedback. Also we could release more often and deliver a more constant stream of value to our stakeholders.
Alistair Cockburn came up with the ‘Elephant Carpaccio’ workshop for teaching and exercising by cutting down stories into small vertical slices. This was then adapted by Henrik Kniberg and published as a very detailed worksheet.
Though we should use a different name for our next workshop as a number of colleagues asked if animals were killed and sliced during the session. No animal was harmed of course! What did we do exactly you might ask? We had a live coding part and all participants created a product backlog. Stories were split into slices and then coded in very tiny vertical increments to create a retail calculator.
Value curve for the retail calculator. From Elephant Carpaccio exercise by Henrik Kniberg & Alistair Cockburn, 2013
So the workshop was all about the following learnings:
- Splitting stories into very tiny slices
- Splitting vertically – with focus on the business value
- Involving non-developers to see how we develop software
- Do teambuilding & have fun
On a Friday we launched our first Elephant Carpaccio Workshop with 18 participants. Most of them were developers, but there were also some testers, designers and product owners amongst them. We formed the teams (this time named after specific fruit) by doing a lottery out of a cooking pot.
For the theory part we created A3-sized charts which we adapted from the original workshop sheet. For building up the product backlog we shortened the original handout and used an additional handout that explained the walking skeleton concept.
Drive for improvements
As it has been our very first time – of course some things went wrong. Our timeboxing for the Q&A parts and the debriefing was too extensive. Also, we found the assessment of code quality did not receive enough attention – so we did not get comprehensive results.
But all of us learned a lot. Even some days after the workshop participants still mentioned their learnings and tried to apply the “carpaccio” mindset into their daily work. Especially the teams that worked on the development of new services.
Regarding the agile workshop itself, we already identified a number of improvements we want to do the next time, for example:
- More time and breaks
- Split the Q&A sessions into groups sized to 8-10 people and collect the group results
- Do anonymous assessments of the code quality and the return on time invested (ROTI) for the workshop
- Print bigger charts (at least size A2) or draw them live
- Print the product value chart on the handout
- Leave out the details about the walking skeleton concept to save time
- Ensure that everybody takes away the knowledge how they can include vertical story splitting in their daily work
We had an awesome time and can’t wait to do the next Elephant Carpaccio workshop with all of the improvements soon.