I Don’t Do Agile!

Really? You Are Probably More Agile Than You Think!

One of the most interesting aspects of the whole agile “thing” is how difficult it can be to understand what it is and why it works – this is reflected in the statement that I hear often “Agile is different, I have never done it before,” when in truth you are doing it everyday without even realizing it. For most folks, while working on a project whether at home or at work with a small group of people, just do it without thinking about it  – they quickly define the project (planning), write down a to-do list (backlog), figure out what the work looks like (estimating), who should do it (tasking), what their deadline is (release planning) and what it means to be finished (definition of done or acceptance criteria). For a quick overview of how this cycle works see “What is Scrum?”

In order to get over this initial perception that “agile stuff” is “so new,” I ask you to think about your weekend now, or maybe when you were a kid, and you needed to get chores done by a deadline. Be warned, you might have an “agile aha!”when you are done reading this.

It’s Saturday morning, the family wants to go to a carnival with friends at 4:00PM  but there is a bunch of stuff on the chore list that needs to get done.The family gets together to talk about what they need to get done (backlog), how long each chore might take (estimating), the best people (tasking/commitment) to get it done and what each item means to be done (acceptance criteria). The family is made up of Dad, Mom, Joey (who is 10) and Suzie (who is 4). Each person has their own skills and aptitudes as well as weaknesses, so they use that in considering who best can do the work so in the course of figuring out what needs to get done they also determine who best should do it.

The to-do List (AKA Sprint Backlog of User Stories)

  • Mow the lawn
  • Grocery shopping
  • Clean kids’ rooms
  • Weed the garden
  • Vacuum
  • Wash the car
  • Dad needs a hair cut
  • Make spaghetti sauce

As the meeting happens (sprint planning and tasking) this is what comes out of it:

  • Dad needs to get his car washed and his haircut and since he will be away from the house, Mom gives him the shopping list because it makes the most sense with the limited time for Dad to take care of that while he is already out doing other things and to put the groceries away when he gets home.
  • Mom and Dad need to make spaghetti sauce for a potluck on Sunday so Dad will get it started before he leaves and Mom will keep an eye on it while she is home then make sure it is in the fridge before they leave.
  • Mom takes on mowing the lawn which includes putting the lawnmower away and cleaning up any clippings and weeding the garden with all weeds going into the compost pile. Mom also makes note of the fact that she will need to get done a bit earlier because she will need to take a shower after working in the yard.
  • Joey and Suzie will clean their rooms so that nothing is on the floor and all dirty clothes are in the hamper and assist Suzie to make sure her room is clean too.
  •  Joey will vacuum and put the vacuum away.
  • If Joey and Suzie have time, they will help Mom weed the garden.
  • The family agrees to get together at lunch time to see how they are doing and tweak the plan if needed.

By working through the list together they maximize their ability to get everything done in time while taking into account a potential limit to a resource (Mom needs to save time to take a shower), the help Dad needs from Mom with the spaghetti sauce (a dependency), and the understanding that Suzie is less likely to get her room done correctly because she is young and the family adds extra help  (Joey) to ensure the task is completed (acceptance criteria). At lunch the family gets together (a stand-up) to see how things are going and what might be getting in the way of being done (blocking issues) by their deadline (end of iteration) and make any adjustments needed (removing impediments). This family is agile just by working together to get things done… not at as new as you would think, eh?

So why did this simple process seemingly get so complex along the way? We now have Scrum, Kanban, Lean, retrospectives, stand-ups, user stories, velocity, planning poker, estimating, etc.? Well in truth, it allows the simple process above to be used for larger to-do lists with more people and more complex projects while providing ways to communicate how things are going (scale).

Staying with the family connection, let’s say the family gets back from the carnival having had a great time and Dad suggests that they plan a block party for the neighborhood for 4th of July later that summer. The family loves the idea so on Sunday, Mom and Dad present the ideas to the neighbors at the potluck and they all agree. The planning starts!

The process begins again on a larger scale because more people are involved, a much longer to-d0 list, external dependencies, more details to track and to be honest, more things that can (and will) go wrong. Dad becomes the Product Owner and Mom becomes the Scrum Master, these two working together to organize the neighborhood families to break out the to-do list include all of the things needed from who should bring the hamburgers, to who is organizing tables and chair, to even figuring out the best person to go to the city and find out if they have to have a permit to block off the street for safety. Having processes in places allows Mom and Dad as Scrum Master and PO  to quickly make adjustments to the to-do list when the Smiths, who were bringing all the condiments, have to back out due to a family emergency, allowing them to review the list and split the items between a few other families so the condiments are still there for the block party with minimal disruption to the team and the plan.

The process of agile is not new, it is just a different way of communicating how things are going to get done across a larger group of people on a more complex project.

For another great way to look at agile, there is a terrific video that has been making the rounds that says a lot about the core of what agile is and how including a few agile elements can make even your family’s morning that much easier.  Check out: Bruce Feiler: Agile programming — for your family.

Updated: May 23. 2013

Leave a Reply

%d bloggers like this: