The Real Benefits of Agile

cs summer interns

In one of my favorite books on Agile, “The Agile Samurai, ” Jonathan Rasmusson explains Three Simple Truths:

  1. It is impossible to know all requirements in the beginning of a project
  2. Requirements are guaranteed to change over time
  3. There will never be enough time or money to do everything you want

I have taken some editorial liberties and changed the wording a bit from how Rasmusson explains but the meaning and intent are the same.

During our Sprint Planning ritual, when we review User Stories, it is important to use a gross metric of Easy, Medium, or Hard and/or use Fibonacci Series to assign Story Points. We do this to know how many User Stories we can commit to during a sprint based on past Velocity. We also want to update our Burn Down Chart so we know if we are on track to finish the Sprint on time.

However, it is easy to forget how important it is to actually rank these User Stories in order of importance and business value. Otherwise, the temptation is to simply work on the easiest User Stories first in order to show results and give the perception of Getting Stuff Done (GSD). This would be a huge mistake.

It’s not just about getting stuff done, it’s about getting the most important stuff done first.

One of the most important benefits of Agile is that if and when we ever run out of time or money (Truth #3) we will have been assured that whatever stuff did get done got done first.

It takes team discipline to stay focused on the important stuff and the Product Owner must be highly engaged and proactive. Many products fail because of an Absentee Product Owner or Deadbeat Product Owner. A highly engaged Product Owner will be part of the Daily Stand-ups, monitor the Kanban Board, and ask why less important User Stories are being worked on ahead of more important User Stories.

It is important that anybody on the Scrum Team feel empowered to challenge the activities and be part of a self organizing team to stay true to the User Story priorities.