The other day I was watching the classic movie Forest Gump with my 12 year old daughter. It was a first for her and we had fun watching it together. I particularly enjoyed the famous lines from the movie like when Forest says: “Life is like a box of chocolates. You never know what you’re going to get”. The quote says to me that life is an unknown. You have no idea what’s in a box of chocolates until you open it. Oftentimes, even when you do, you still don’t know what’s inside the individual chocolates!
When I lead an Agile “intervention” with a team new to the concepts, I always make sure to avoid skipping the beginning and bring everyone to a common understanding: Agile is like a box of chocolates! Agile is a mindset; it’s a way of life! The Agile box of chocolates provides you with a variety of products and flavours, but you do not know what’s in a box of chocolates until you open it (experience it).
Forrest uses this quote to exemplify the randomness of life. I like to use it to picture the randomness of a project’s or product’s results. You could invest significant money in predicting the optimal product, but you don’t know what’s going to happen until it actually happens. Your users may want something different, to change it, to use it in another way than what you planned for. This is why the iterative thinking is a pillar of agility foundations. Listening to what people have to say, in small increments of time and incorporating change along the way brings incredible value to what we deliver.
Agile may be completely different depending on the organizational context. Your focus might be on LEAN, DevOps, Scrum or Product Development but rarely one perspective to Agile is enough. The angle I use consists of mixing the chocolates in the box and finding the right flavours depending on the team’s context. Some flavours are usually appreciated like the Scrum framework for team organization.
Scrum is very trendy and is becoming mainstream. I once worked with a team applying uniquely Scrum by the book, but without understanding the Agile values and principles. It was a waste of time and money. To create quality products, you need good Product Development skills and techniques, and this starts with a well-crafted Product Backlog. You need to master the creation of READY User Stories into a development cycle.
Once in development, you need to control batch size, work in progress (WIP) and queues. In other terms, LEAN principles. In regards to Quality, a bunch of techniques are available. The key is to apply Quality while Features are in development by joining the efforts of Team Members. Continuous Integration and Deployment is key to a fast pace development cycle (DevOps principles).
In conclusion, when I explain the Agile world, I use the Subway map concept created by the Agile Alliance http://guide.agilealliance.org/subway.html. I use this to illustrate what it can mean to be Agile in terms of techniques and to identify which ones we’ll be focussing on. But again, you do not know what’s in a box of chocolates until you experience it!