Have you ever tried to find a good “how to” article or a good strategy overview written for professional website managers?

I did. And I could find plenty of good stuff aimed at the “I love thinking about the Internet” set or the “I love cutting edge web technology” set. But very little at the “I am running a website group at a real company” set.

Although techie articles and pie-in-the-sky articles have their place, when you need real answers for real problems they just don’t give you what you need. You want actionable answers not down-in-the-dirt details or information about macro trends on the Internet.

So I set out to make a website that provides actionable answers to the questions that website managers ask on the topics that matter. Topics like:

  • Project Management finding big problems, coming up with solutions and mobilizing the teams to get the problem solved
  • Content Management slicing and dicing through requests for new web pages, getting the pieces together and getting it live without hiring a legion of web producers
  • Internet Marketing getting the folks to the site, getting them on the list, and then getting them through the funnel to sales or a shopping cart
  • Web Development developing the technology that makes it all possible

And while those are pretty big topics, they are the topics you deal with every day when you run a big-ish website. And if you hang with me, I am going to spill the good stuff I learned from doing this stuff myself.

The next question you are thinking is… who is this guy?

The Larry, Moe, and Curly of Agile Website Project Management

The Three Stooges. The Three Tenors. ZZ Top.

All of these trios are memorable and for good reason. Each member is an outstanding individual contributor. Each trio has found a unique synergy. And they have all created masterpieces in their respective fields.

And let me add one more memorable trio: Time boxing, MoSCoW prioritization and iterative development.

Although not people these three practices are just like other memorable trios. Is each member an outstanding individual contributor? Check. Unique synergy? Check. Create masterpieces? Check. Yep, Time boxing, MoSCoW prioritization and iterative development are a great trio too.

So, do other folks think these practices are a great trio? Well, creators of the DSDM agile project methodology think they belong together and call them “key principles.” And they are all individually recognized as sound practices as more of these practices are in every single agile project methodology.

So why bother with implementing all three of these practices? Couldn’t you do less and be ok? Yep, you could do less and implement just one of these practices and it is going to help improve your projects.

But when implemented as a trio these three magical processes are so powerful that they can literally transform how your projects work.

And Time boxing, MoSCoW prioritization and iterative development will do these major transformations for any content, design and functionality website project that comes along.

And what is even more amazing after some serious thought is that it’s clear to me that time boxing, MoSCoW prioritization and iterative development are a lot like The Three Stooges individually and as a trio. Wacky, huh?

Time boxing is a lot like Moe. Moe was the leader and set the tone for The Three Stooges, just as time boxing does for our agile trio. But, time boxing seems a bit smarter than Moe.

A bit smarter because the time boxing technique acknowledges that almost every web project arrives with fixed end dates and limited staffing flexibility. Instead of trying to fight for more time and resources, the fixed end date and limited staff are considered a “time box” that can’t be modified.

Then your job is to fill the time box with the most important features that will fit inside. This approach turns your typical project startup discussion from “I need more time and more people for this project” into “ok, I can accept the dates and not hiring anyone. But, we need to talk about limiting the features that can be delivered.” I find talking about which features to deliver instead of time and resources a refreshing change. And, I bet you will, too.

MoSCoW prioritization is a lot like Larry. Larry gets most of the slaps and without him the trio just doesn’t work. Just like Larry, without MoSCoW prioritization, iterative development and time boxing just don’t work either.

MoSCoW prioritization sorts the features in your project by business value and then groups them into four buckets: “Must have” features must be present and complete for the release to deliver any value at all. Your project should be considered a success if you can deliver all the “Must have” features.

“Should have” features are important but have a workaround if they don’t make it into the final release. “Could have” features are “nice to haves” but do help increase customer satisfaction. “Won’t have” features are considered deferred until a later project.

Although this prioritization isn’t anything magic, it gives you critical information needed to fill your time box and assure successful delivery of the “must have” features. Then it helps you maximize the use of any project time left to complete “Should have” features and finally, the “Could have” features.

There are lots of ways that Curly reminds me of iterative development. Curly was the breakout character of The Three Stooges; he was the guy that made them famous. Just like Curly, iterative development is the breakout practice of Agile project management. Still today, most folks think of iterative development when they think of agile project management.

And Curly made sure every scene was success for The Three Stooges by on screen improvision. Iterative development makes sure your project will be a success by making it more likely that all the “must have” features will get delivered and as many of the “Should have” and “Could have” features as you can fit in.

Iterative development makes projects better by slicing the time available for a release into a series of smaller time boxed projects called iterations. Then each iteration is scheduled to deliver as many features as possible, which are completely finished and ready for deployment.

Planning iterations completely relies on the MoSCoW feature prioritization. First, we want to schedule the “must have” features into iterations that occur early in the project. This substantially increases the chance of getting ALL the “Must have” features done.

Once the “Must have” features are scheduled into the early iterations we want to schedule the “Should have” and “Could have” features into later iterations. Because features are added in order of priority, as established during the MoSCoW prioritization, all of the iterations are filled with features the business folks really want. And they get really happy when you give them what they want, don’t they?

So there you have it, using our agile trio you have a whole new way to make your business folks happy. Time boxing, MoSCoW prioritization and iterative development are proven techniques that increase your chances of successful project delivery. And they work together to maximize the amount of value your project can deliver in a way that actually decreases the chances of project failure. Good stuff.

But how do we apply these practices? Let’s talk through each using an example project and get the details on Larry, Moe and Curly time boxing, MoSCoW and Iterative development.

Time box, MoSCoW prioritization and Iterative Development Resources

The DSDM consortium creates the Dynamic System Development Method. The new version of DSDM is called Atern. If you are up for something brief and about Atern check out the e-book. Easy to read and high level enough for anyone.

Wikipedia has some good information on DSDM, time boxing, MoSCoW prioritization and iterative development.

Because DSDM gives their methodology to folks that join the DSDM consortium (which seems a lot like selling it really) there aren’t a ton of books about it. The best I have found is DSDM: Business Focused Development, Second Edition.