Monday, May 31, 2010

Agile is a Great Answer to an Important Question Never Asked

Sometimes I think agile software development is a really good answer to a question that has never been asked.

There are plenty of good reasons for bottom-up agile initiatives in companies. If implemented correctly, agile is great for software developers. If software development is a company bottleneck, a bottom up agile initiative can be great for the company too.

You may feel there is a "but" coming, and there is:

But in the long run, agile initiatives are unlikely to succeed unless managers at all levels buy into it. That is unlikely to happen with a bottom-up initiative, because agile methods are practical implementations of a management paradigm that is very different from what most companies have. Bottom up agile initiatives have to fight the system. In most cases the system will win.

Agile has a much better chance of succeeding when going agile is the response to a management initiative. Top-down initiatives make agile a natural part of a new system. It is still difficult to win, but the agile effort can have support from many other similar initiatives all over the organization.

What are the questions from management that could prompt software developers to reply "we could use [insert favorite agile method]."

Let's begin by listing a few problems management might have, that an agile method might help solve:

  • Software development takes too long
  • Software maintenance costs too much
  • There are too many defects in the software
  • The software we build does not excite the users.
  • We do not see any revenue until at the end of the projects
  • Staff turnover is too high
  • Departmental silos make it difficult to work together
  • Our business strategy and what the IT department delivers don't match
  • Our budget planning is killing us. We want to switch to a budgetless financial system. (You may have to think about that one a bit.)
  • We want to democratize the company (Like Gore & Associates, or Semco)
  • We want to redesign the company into a network structure (Like Gore & Associates, Semco, BNI, VISA or Virgin.)
  • We need to reduce strategic cycle time and need to shorten software development cycles to match
  • We need to improve the quality of strategic and tactical decision making throughout the company

All are valid objectives. (Technically, they are intermediate objectives, not end goals. I'll let you reverse engineer suitable end goals yourself.) The last four are the real winners, and of course they are linked together with each other, and with the other questions. I haven't heard about  a company where management has asked one of those questions though. (If you have, please tell me about it.)

The problem with agile is that agile offers excellent solutions to problems that managers should ask, but don't. Today there is plenty of hard evidence that:

  • Democratized companies are more innovative than others. Companies like Gore and Semco have a history of leaving their competitors their wake.
  • Network organizations are faster, more innovative and more resilient than hierarchical organizations.
  • Cycle time is a key differentiator in strategic planning. Having the same strategic cycle time as your competitors because nobody thought about it is downright embarrassing.
  • Decentralized organizations can make better decisions faster than hierarchical command & control organizations.
If you use Systems Thinking (in one form or another) to design a company that does software development, agile (in one form or another) will almost inevitably pop out as the solution to several common problems, except perhaps the most common problem of all: Lack of interest in solving systemic problems.

Winners Never Quit

My son, Tim, is four years old. We sometimes play a little game where we try to spot cars of certain colors: blue, red and yellow. (Trains and buses also count, and there is a special rule about large green cranes.)

Tim is very observant, and pretty fast. When he rides on my shoulders he is a difficult opponent to beat. He is not above twisting my head the wrong way or putting his hands over my eyes. A budding master strategist, I am sure. (It is not quite as dangerous as it sounds. We play when walking on sidewalks. Where we live these are well separated from the road. Nevertheless, I am trying to teach him less dangerous stratagems.)

Recently I managed to get the upper hand, 6-3. "Ha," I told him,"I'm leading for the first time. This time I'll win."

Tim was unruffled. "No daddy," he said, "You are leading for the last time."

A few moments later we got within view of a parking lot and he trounced me thoroughly.

The morale of the story is of course that you should never quit just because you happen to be behind on points. This applies to business and life in general.

Friday, May 28, 2010

The Process - Wish I was this funny (YouTube video)

This video illustrates how design processes go awry. It is pretty funny.

I have seen real life projects like this, for example a project with three different product design groups, working with three different methods. What really boggles my mind is that in some organizations this is considered "the way we do things here", and no one finds it the least bit strange.

The YouTube page is here. I got the link from a blog post by Bob Sutton.

Wednesday, May 19, 2010

Dan Pink on Human Motivation (Videocast)

This is a great video. Worth watching for anyone who is a boss, or has a boss. Here is a link to the original page on YouTube.

Thanks to Julian Harris and Bob Marshall  on Twitter for tweeting about this.