Friday, June 6, 2008

Agile: More Customer, More Better

This is it. I just got back from TechEd 2008 in Orlando, and I've got the itch to start blogging. I finally have something to say...

Customers, I want to hear from you. I want as much customer interaction as you can give me.

While at TechEd, I attended a Birds-of-a-Feather (BOF) discussion on Agile Development with .NET. The discussion was an open fishbowl style conversation with questions from the audience and a rotating group of people like me offering up answers from our project experiences with Agile.

Overall, it was an engaging discusssion among techies. Many came to learn about the Agile manifesto and the benefits of Agile so that they could try it with their teams. Some came to pontificate, which is fair game for BOF sessions. But a few, I dare say, were shopping for excuses. They were looking for justifications to avoid customer interaction so they could get back to their true passion - coding.

One attendee, let's call him Joe, personified the problem. During a short Q&A, Joe expressed concern that his customers were not engaged in his projects. They often skipped iteration review meetings, so his team had little opportunity to gather customer feedback. Ok, nothing strange there. We have all heard and felt that before.

The problem surfaced during a later discussion about Joe's project work habits. Joe was frustrated that his team couldn't hit its velocity because his customers continually "bothered" him with questions and ideas. He wished they would "leave him alone" so that he could... code. He felt that customers should save their comments for the iteration review meeting rather than "bother" him during his precious coding time. He didn't see the irony that he was complaining earlier that his customers were not engaged. The truth was that they were engaged when they had something to offer, but he wanted them to play by his rules.

Developers like Joe view Agile as an excuse to avoid customers rather than as a tool to engage them. Comments like Joe's give business executives pause when they hear about Agile. They fear that developers will interpret Agile as "ad hoc" and will isolate themselves from processes designed to encourage communication. In fact, Agile seeks to augment communication rather than isolate it. Joe is misguided.

Developers (and projects) cannot be successful without frequent customer interaction. Customers do not "get in the way" of progress. Instead, they are critical to project success because the feedback customers offer alters the shape and direction of each project. And, that's a great thing. Afterall... they are the customer. It's much more satisfying, personally and professionally, to have happy customers than disgruntled ones. Take time to listen when they come knocking. Make adjustments if you can, and prioritize the rest for later. We want to make our customers happy, right?

So, for any of my customers out there who are reading this... Please, keep "bothering" me. I want to hear from you.

0 comments: