You can find tones of different definitions of agile. Each definition claims a number of aspects of agile as building blocks. I would agree that most definitions hold good, but it can just be overwhelming for some one new. In most scenarios organizations and teams over emphasize heavily on less important aspects of agile, and in worst cases miss out on the actual building blocks.
To implement Agile, let’s first understand its core definition.
What is Agile in its simplest form?
Agile like everything else has evolved over time, there are multiple process frameworks around Agile like Scrum or Kanban. But how do you really define the core values of Agile. The answer is the Agile Manifesto, this is the most basic and authentic form of agile. Agile came into existence when the Agile Manifesto was written and published by a team of 17 industry experts.
Here is what the Agile Manifesto says:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
You can also review the 12 Principles of Agile Software, which were laid down along with the Agile Manifesto.
So now that we have an idea of what Agile basically is, let’s look at how we can explain to a 9 year old kid.
Explaining Agile to a 7 year old
Here is my take – “When you have to complete a big exercise, say build a sand castle which your sister would really appreciate. You need to interact with her to understand what would interest her, then instead of planing details or calculating you need to try out making the castle. As you begin making it you show it your sister regularly to ensure if it is what she wants. In case she needs you change something in between, you change it for her, as ultimately you are making it for her.”
Initially I had opened this topic up for discussion and not as a post. I would love to gather more views on this. All feedbacks, experiences, suggestions are welcomed.