Saturday, June 20, 2009

As a Scrum Master I get a lot of questions from my friends and associates in IT asking how they can get started with Scrum and/or Agile on their projects. I’ve been asked and answered the question enough lately that I have decided to add it to my personal FAQ (Frequently Asked Questions). Lately I have been treating my blog as an FAQ for my professional life, a concept eluded to by Jeff Jarvis in his book, "What Would Google Do?" which I just finished reading recently. The following advice is based on the answers that I have been giving, but has been improved and refined with each additional conversation that I have. It is my hope that we (you and I) can continue to refine this through the discussion that I hope this post generates. So please provide me with your feedback and criticism via the "Comments" section of the site.

How to Get Started with Scrum

The first thing you must do is assess your role on the team. More specifically you need to assess your ability to influence others and to make changes on the team. Every member of a development team (and any team for that matter) has the ability to influence others on the team. If you need advice on how to use your influence or on how to assess your ability to influence others I recommend http://www.influencewithoutauthority.com/, many years ago I read the book with the same name and found the information and advice in this book very valuable.

Now that you are aware of your influential abilities you are ready to get started with Scrum. Unfortunately you can’t just wave a magic wand and instantly convert the project from "Waterfall" to Scrum, the barriers to such a wholesale change are too painful and expensive to overcome. What you can do is start small. I have found that the best way to introduce a group to Scrum is via the daily stand up meeting. The daily stand up meeting or "Daily Scrum", as it is known, is a good first step because it has the lowest risk to the project and the least adoption barriers to overcome. After all, who could stop you and the other developers from taking 15 minutes in the morning to stand up and discuss what you plan to accomplish for the day. I can’t imagine anyone even wanting to stop you.

The Daily Scrum is the best place to start because it costs nothing, you don’t need anyone’s permission to start doing it and it is one of the most "value-added" activities performed as part of the Scrum Methodology.

How to Start Conducting the Daily Scum

  1. If you have any doubt in your mind about a member or members of the team and their openness to adopting the Daily Scrum leave them out initially. You only want to invite people, initially, that will be supportive of the change.
  2. Speak with each person that you are going to invite ahead of time to let them know 1) what the meeting is for; 2) how the meeting will be conducted and; 3) what you hope to accomplish with the meeting. This is your moment to "Sell" each person on the concept so I suggest that you spend some time coming up with a few talking points before heading into the first person’s cube.
  3. Schedule the meeting. Be sure to select a time that works well for everyone that you are inviting. The last thing you want is for people to have a valid reason to skip the Daily Scrum.
  4. Execute. Have the meeting every day. Never cancel the meeting and try to avoid changing the time and meeting location. If someone misses a meeting, get on them about it. Tell them how important it is for them to be at the meeting. Make them feel wanted and important and they won’t miss again.

How to Run the Daily Scrum

The Daily Scrum is very easy to run. Every one stands during the Daily Scrum, it helps keep the meeting short and keeps the formality of the meeting to a minimum. It is important to stress the fact that the meeting is not just another status reporting meeting. The most valuable part of the Daily Scrum is derived from each member of the team committing, in front of peers, to accomplish a finite list of tasks over the course of the day. These commitments enable the team to plan and react to the activities planned for the day and enables the team to adjust course if the planned activities do not align with the current project priorities.

The following image is a slide created by Mike Cohn of Mountain Goat Software. It is a very good "one-pager" that you can hand to the participants at your first Daily Scrum to help guide the participants in their preparation for future Daily Scrums.

Next Steps

Ok, you are ready. What are you waiting for? Go make it happen. I would love to hear your feedback on this approach. If you use it on your project I would love to hear about the results. If you need more help feel free to send me an email at john at 9principles dot net.

My next blog post on this topic will address taking the next step to continue on a course towards implementing Scrum on your project.
Categories: , , ,

2 comments:

Anonymous said...

Thank you. The article is well written and practical, I found it useful.

Anonymous said...

Time management of daily scrum could be tricky as sometime team members take this opportunity to discuss when they talk about issue they faced and it is very hard to cut their chain of thoughts and asked them to arranged another time to discuss further outside of daily scrum time-box.

Subscribe to RSS Feed Follow me on Twitter!