Wednesday, February 4, 2015

AGILE process – An Inspiration from Mother

Many time I wonder my mother way of working and how she manages my variable expectations. I keep comparing that to AGILE.

Mother works without fluctuation:

In order to prepare us for school, she completes activities such as cooking food for us etc. She does these activities almost every day and she has limited time. If any day she gets delayed in any of these activities, I might be delayed in getting to school.

This equated to Agile Principle:

“Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.”

The Scrum teams should be inspired by mothers to deliver working software at the end of every sprint by continuously managing their work effectively and with the expected quality. For this, they need to work collaboratively, with good planning, having a proper Definition of Done in place. Their objective should be to achieve the sprint goal always by managing unpredictability through collaboration and teamwork.

Mother handles changes with proactiveness

Many times I ask my mom to change the food menu. Most of the time she will not get upset but will negotiate with me about the change and how it can fit within the available time frame.

This equated to Agile Principle:
Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

Similarly, Scrum teams also have to change their mind-set and understand that the product owner has flexibility in managing the scope as per the product vision and ROI of the product. This will increase product success. Of course, they need to remember what the Scrum framework recommends about the changes, and accordingly they need to respond. So the changes have to be discussed with an intention of how they can be adapted without deviating too much from the sprint goal. This is possible through face-to-face conversation with the product owner.

Mother executes task effectively:

If I observe the way my Mother plans and executes the work, it's amazing. She knows the priorities well, she knows which task takes more time and which tasks take less time, and she allots time to them accordingly. Even though she does similar work every day, she does not take it lightly and aims for continuous improvement.

She cares about the work that is required to meet the timeboxed duration by pushing the "less priority" work back. 

This equates to Agile Principle: Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
and simplicity -- the art of maximizing the amount of work not done -- is essential.

Scrum teams also should know which is the highest-value story and which is of lowest value, and accordingly they need to deliver them to make sure working software is delivered at the end of the sprint. They also have to give equal importance to engineering practices such as continuous integration and test-driven development, collective code ownership, refactoring, etc. They always have to strive to deliver rapid value in terms of working software with technical excellence.

Scrum teams also have to understand what is required and what is not, and accordingly they need to push back the things that are not required. They need to know the requirements that deliver the majority of the revenue from the product (80-20 rule, or Pareto principle). This needs constant communication and collaboration among the product owner, team, and the stakeholders.

Mother takes regular feedback

My mother asks for feedback about the food whether I liked it or not. This helps her improve wherever required.

This highlights the Agile principle: At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

So it is essential for Scrum teams to have regular retrospective meetings to check where they are good and what needs to be improved so that they can become high-performance teams over a period of time. It should not be just like any other meeting; they have to gather the sprint data, generate insights from the data, and then come up with action items and prioritize those actions for implementation in upcoming sprints.

Mother don't get slary

Whatever great work she does, she does not get paid for it. However, she takes care of the family.

Although it is hard to digest, In Gita Krishan told, “Do the duty, but don't look for result”.

This is true. If one person do their duty perfectly money will follow automatically.