Showing posts from March, 2009

You've Got Mail (Like it or Not)

One major difference between "pure Agile" (the idealized process with its roots in small software companies) and Agile for the Enterprise is the necessity of managing distributed teams. In a multinational company with thousands of employees, it's nearly impossible to get an entire project team -- not to mention that ubiquitous cloud of stakeholders -- to work in one place. In this environment, asynchronous communication (through email, wikis, discussion forums, etc.) is critical to project success. To be a truly effective force for good in your projects, you need to be able to use these tools – and the short written message – to clearly communicate, coordinate, and collaborate with your project team.

So what’s the big deal about email? We’ve all used it for years and some of us can barely remember a time when it didn’t exist. Can’t we just send email at work just like we do everywhere else? Well, that’s the problem: some people do write emails at work just like the ones t…

Go forth and be Agile!

As Thomas Hobbes observed in the 17th century, “Life under mob rule is solitary,
poor, nasty, brutish, and short.” Life on a poorly run software project is
solitary, poor, nasty, brutish, and hardly ever short enough.
- Steve C
McConnell, Software Project Survival GuideEveryone who has worked in software for more than a few years can probably relate to this observation. Software projects seem to lend themselves especially well to two things: fantasy-based planning and painful and repeated collisions with reality. Smart development organizations, tired of hitting their heads against the same wall over and over again, are looking at a new way of building software: Agile development. But life on an Agile project is different, and people need new skills to succeed when the easy stages of the waterfall are stripped away and they dive into the Agile whirlpool. Here are the five Agile commandments that every team member should know (we had ten, but we broke them into two releases):

I. Thou s…

Brother, Can You Spare Some Change?

Jumping off the waterfall and moving to an Agile approach is an exercise in organizational change, and let's face it: human beings hate change. From the earliest caveman to his modern equivalent in the ratty "Evolve or Die" T-shirt, the whole of human history is a long, losing battle against change. Empires rise and fall, civilizations are built up and ground into the dust of the ages, but one constant remains: there's always someone at the top trying to get everyone to knock it off and be satisfied with the way things are.

Of course, few people will admit this dirty little secret, even to themselves. We like to think of ourselves as dynamic go-getters, innovators -- dare we say it? -- change agents! No one wants to be accused of perpetuating the status quo, making the same old mistakes in the same boring ways. The truth, though is that we like things in their places: this always goes there, my project dashboard is always green, and I always do that on Tuesdays a…

Jumping off the Waterfall - An Intro to Agile Development

This is the first in a series of articles I plan to write on Agile development, software development in general, and generally getting things done in the workplace. Hope you enjoy.

For decades, the waterfall project model has been the accepted way to build software in large companies. In this traditional approach, every phase of a project follows logically after the previous one, building upon the work that has gone before in a nice orderly flow. At the end of every phase, the entire extended project team gathers together to review the results of that phase, nod together in agreement that the deliverables are satisfactory, and sign off on those deliverables before moving on to the next phase. It is a calm, rational approach that appeals to project managers, CIOs, and accountants. And if everything goes as planned, it truly is the most efficient, predictable, and repeatable way to work.

Of course, if everything were that predictable, you could hire a precisely calculated number of monkey…