Nowadays, when explaining the concept of Agile values and techniques I always start by showing a short and brilliant video from Norstrom Inovation Lab.
The video shows how a team successfully delivers an iPad app withing a week. It all starts with an idea: “Our customers often use their phones to take pictures of themselves when trying sunglasses. Could we use an iPad app to make this more user-friendly?”. It is only about six minutes long, but under these six minutes you get to see a huge number of agile thinking and techniques in play. The thing is, it feels so natural, self-explaining and obvious that you almost don’t even realize it. That’s how important it is!
Here are some of the highlights for me:
- “We never work on anything that is not valued by the customer.”. Obvious agile principle that highlights the need for feedback.
- The team only starts with a rough idea about how to solve a concrete customer problem. There is nothing more: no details, specifications, list of requirements and features. Nothing. Just, the idea of a solution: “We do not know what the features are yet: we have no idea how it will look like!”.
So, the “Requirements” are time and resource constraints (1 week, 1 cross-functional team of X persons, 1 iPad app) and 1 idea (help customers choose the right sunglasses). All the rest are “specifications”, which are unknown at the start but will be discovered using direct, frequent and timely feedback from the customers. For more information about this topic check the writings of the Poppendiecks, or this essential video from LSSC12 where Marie discusses Fast Feedback.
- Direct, frequent and timely feedback from the customers: “We implement, 10 minutes later we get real feedback from a customer and it changes how we do the next step.”
- Day 1: use paper prototype to get feedback. When you have nothing to get feedback on: fake it!
- Day 2: already use a working prototype to get feedback.
- Cross-functional team. Everyone needed to produce the final product is in the team (developers, UX experts, specialist, managers, planners, etc.)
- Time-boxed to reach “good” enough level of quality: “When are you done? It depends on how much time you have!”.
- User Story Map based on “the sun-glass buying process” to design the product and deliver it incrementally.
Ok, the example is a bit of an utopia as there are few software development teams that can have access to their end-users in this way (I mean, they are setting-up their team in the middle of the shop/customers!). Nevertheless, we should all aspire and strive to setup our projects and initiative in this way.
You want to succeed? Create strong and fast feedback loops! Now!