How Can You Control Project Change Effectively?

By far the best way to manage change, is to not have any… but we all know that even with the best planning and the simplest task there are bound to be a few holes. 

Sometimes it may not even be you that causes the change- it could be your freelancer. So we need a way to keep it organised, and reduce the risk that the project will spin out of control.

In this article I’ve included a few examples of how things can break, and at the bottom is my current system for managing change in *any* small or medium project.

Your Project is SET IN STONE when it is accepted and scheduled…

First thing to remember when using a freelancer or external service provider is that once your proposal is accepted, it’s pretty much locked in. What you’ve asked for is what your going to get… or more correctly, your freelancer’s interpretation of what you’ve asked for is what you’ll get!

So, that thing you were going to change later but never got around to, or the task that you weren’t sure of but forgot to revisit are all locked in. This means you’re now paying someone to work out the details, who despite being an expert in their field has far less understanding of your business. This makes it hard for them to work it out, and potentially frustrating or expensive for you. To limit this risk, it’s important that you do as much planning as possible to clearly define your requirements before the work is underway.

Change isn’t free. Don’t forget!

Any changes from this point forward are NOT FREE. Someone is going to bear the cost, either you or your freelancer. As a side note, another way to consider it is that any change is a ‘risk’- it causes work effort or time to be contributed to an uncertain outcome. It’s not like adding an extra box of Weeties to your shopping cart.

For example, how the freelancer can bear the cost:

You decide that you want a video catalogue on your blog. You forgot to put this in the initial requirements, however your freelancer graciously accepts the request and puts in the catalogue. But now the catalogue doesn’t look right… at least not the way we imagined. So we ask for a few little changes to make it look right. Now the freelancer is having to support and work on something they didn’t sign on for in the first place. After a bit more stuffing around, it’s still not right and you’re getting frustrated. The freelancer is annoyed too, and telling you that more changes are going to cost you $$$. No more freebies. We’re on a tight budget, and it seems like too much trouble, so we tell the freelancer to remove it.

For example, how you can bear the cost:

Your well planned and considered requirements form the baseline for the project. If you subsequently require changes away from this baseline; it is reasonable for your freelancer to push back and expect you to bear the cost! Early on, I didn’t understand how important change management was on any project, and I made many mistakes. This is one example that cost me a lot:

On one project, there was supposed to be a community function, that allowed users to attach them selves to different ‘communities’ based on their location. It needed to do 3 things, or it wasn’t worth having at all. They were:

  • Location awareness (system knew where you were)
  • Dynamic content (articles based on location)
  • Dynamic creation of locations

Several months into the project, the freelancer decided that what I wanted and what they interpreted (in my requirements) were two very different things. After extended argument, I agreed to give up the ‘community’ function in exchange for some other concessions (mainly to just get the damn thing finished!).

This decision impacted very badly a number of other functions on the site which I didn’t realise at the time. I was under pressure, there was a lot riding on the on-time completion of the site (marketing plans, business relationships..). I hadn’t properly considered the implications of the change, I just needed it finished.

I lived to deeply regret that decision. Months later some previously built functions didn’t work because they were supposed to integrate with the community thing that now didn’t exist. The freelancer also insisted that the work to make these fixes was out of scope (not their responsibility). They weren’t in the original requirements, because the original requirements presumed that the community function would exist. What!?! I have to pay to clean up their mess? It wasn’t pretty.

By improperly managing change I paid MORE for LESS.

To add insult to injury, the freelancer spent many hours developing a way to relate locations to people… totally forgetting that the community function had been stripped because they couldn’t get it working. This resulted in many hours of wasted effort, and further delayed a project that was already badly behind schedule.

Now I use a formal change management process, and you can too!

This approach can work with just about any outsourced work, and need not only apply to IT projects. It is an important method of communicating and managing expectations for you and the outsourcer, and it keeps change fair and controlled.

Create a Change Request Log (or whatever you want to call it)

To help with this, record all proposed changes in a spreadsheet. Capture:

  • who requested the change;
  • when it was requested;
  • if/when it was approved;
  • description of the change;
  • reason for the change;
  • what other functions or dependencies it will likely impact on;
  • Is the change part of a regular schedule or a one off occurrence;
  • what cost/impact was quoted to support the change (remember nothing is free).

Put this document in a shared location, but make sure it has an audit function if someone other then you will be using it. I’ve found Google Spreadsheets to be fantastic for this. Over time, it will become an invaluable resource particularly on larger projects (for tracking change, but also dispute resolution).

How it works

Any change to the original plan must be formally approved by you, meaning flippant or offhand comments in discussion no longer qualify. Everything is properly communicated, everyone is accountable. To initiate a change, one party must formally request it, and the other must approve it. A formal request may just be in an email, but it would be better if it is done only via an auditable medium (like the project message boards on rentacoder.com or elance.com). All costs and impacts associated must be agreed too, and made finite. No on the spot approvals either. 12 hr turnaround as a minimum so that no one gets caught off guard or pressured.

You’ve created a communication channel just for change

With such an approach, your outsourcer will make formal requests for change too. It separates change from the many other issues you’ll be dealing with, and ensures that this vital function is clearly defined. If you can nail this process, you’ll have a lot more success in outsourcing, and save yourself money and aggravation!

Even though it seems very simple, it forces you and your freelancer to seriously think about change, and make conscious decisions. The main goal of this activity is not to stop change (it’s inevitable) but to control it.

As always I’d love your feedback!

Tags: , , , , , , , , , , , , , , , ,
Posted in Change Management, Outsourcing How To's, project management

Leave a Reply