Wednesday, July 16, 2008

Agile Lessons from Google

Martin sent me this link to an excellent video of a retrospective on Google's Scrum implementation by Jeff Sutherland. I found it well worth an hour of my time to watch. It addressed several questions concerning agile technology that I have been asked:

Eryn asked me a few weeks ago: "Who is using agile?" Google for one! Other companies that were referenced in this presentation included: Nokia; Ford; Microsoft; Yahoo; BellSouth and Toyota. When asked if this scaled down, Jeff also mentioned he had worked with several start-ups and three people are enough to form a team and benefit from Scrum. By the way Eryn, I spoke to some of the vendors at Better Software and discovered that Kelley Blue Book and Edmunds are using agile (some partners and competitors of us here at Cars.com). Some other companies that I know you are familiar with include Salesforce.com and Endeca.

I have been asking myself, “How can I convince the executive management team to change to agile?” A great line from the video (minute 35) that I think will speak to the executives is how Toyota achieved 4-times the productivity and 12-times the quality than their competitors by shortening the cycle time. To go faster you have to run at higher quality. By shortening the cycle time, you force things to work. In agile software development, the lesson here was to bring QA into the iteration – touching on another question I am being asked about how QA fits with agile.

“When is agile not needed?” This is a question I have heard from multiple people and there is an assumption tied to this question that our waterfall approach is still useful for some of our projects. Well Jeff talks to this one (minute 49:30), he responds by asking another question, “Is there any reason for the organization to change?” and if the answer is “no” he will say agile is not needed. If this is the case and he senses that there is no motivation for change and says “as long as you have no competition you will be fine, call me when you have a need.” This reminded me of the two questions that Kent Beck asked potential clients “Do you have a problem?” and “Do you want to fix it?”, if either of the answers was no, he walks away. I am asking the change question here at Cars.com and a far larger percentage of people are seeing a need for change, than when I asked a year ago. The other point that resonates with me is that introducing agile approaches leads to organizational change, it is not just another software process that can co-exist with waterfall in an unchanging organization.

Kate asked last week: "Can I publish an interview with someone who has succeeded in introducing agile techniques to an organization?" I was going to share some notes from a great conversation I had with Matt from Endeca who in summary introduced agile to Endeca initially to a team of 50 developers, then to the organization and 2 year later no-one wants to go back. I think this interview is even more insightful, partly because you can watch it yourself! Here are some of the points from the video that resonated with me about how organizations transform to agile successfully.

Mark at Google started by asking the developers what their number one problem was, the answer: "Missing our dates." In response to addressing this problem (minute 22 on the video), and this problem only, burndown charts (this is the picture above) that some agile teams were using was introduced. The key point here is that the biggest problem was addressed, if something simple and easy is used to introduce agile you will not get the benefits. Mark knew this would not fix all the problems but would surface other problems, which it did and this naturally led to other agile practices being introduced when needed.

At Yahoo a single engineer went to Scrum training, started using some agile techniques on the Avatar project he was working on, the word spread which led to a 45 minute pitch to the whole management team and Yahoo went agile. The message here is that it can be a ground up initiative, the practices have a viral quality and unless it is squashed by management it can transform whole organizations, which is actually required before the true benefits can be realized.

1 comment:

DIAD 2009 said...

Thanks Paul for getting back to me. I am very interested in learning about agile development. So keep me informed on what else you learn.