A discussion about convincing clients to agile is old already. I believe clients don’t care if you’re agile but to get most of your own agile adoption you usually need to change your client’s approach and that’s exactly where difficulties begin.
Agile is not a key selling-point; often it even makes selling a project harder. But you still want your client to accept the way you’re going to run the project. Why? That’s simple: at the very least you want to avoid BDUF and in the best case you need strong and frequent client’s involvement in the development process. And when we are at it – usually you want an agreement which reflect this kind of cooperation too. An agreement which uses more time and material basis than fixed fee for fixed work approach.
So yes, you need to convince your client to agile. How? Now, that’s a good question. There are a lot of answers, some good, some not-so-good, but I want to focus on one specific which is completely flawed. It goes like that:
“You, as a client, have a freedom to terminate this contract after each iteration, so if the whole thing doesn’t work for you it won’t cost you much.”
Sounds nice. But when I think about projects bigger than very small I hardly imagine a situation when I can see some features in their final versions during early iterations. I mean I can get some GUI doing things which I requested but it will be a mockup. On the other hand I can get the whole feature or two but they will be useless alone. Either way I can’t really say whether you do a good job or just a good show off. So I read it like that:
“You, as a client, have a freedom to terminate this contract after each iteration, but we’ll be halfway through until you’ll be able to say if you’re happy with the cooperation.”
It is still cheaper than it could have been, isn’t it? Well, it isn’t. I’ve already invested some money and, even more important, time. If I change a vendor now I’m losing twice and I have to start over. Odds are I’m already at the point where it’s easier to finish and fix instead of trash the project and start over. Thus I see it more like:
“You, as a client, have freedom to terminate this contract after each iteration, but when you know you want to do that most likely it won’t be cost-effective anyway.”
But I have a choice at least. Not that I would have much use of it but still, it’s my call. Sort of actually. This kind of rules is usually symmetrical. What does it mean? It means in most contracts both sides will have equal right to break it in specific situation. If I, as a vendor, can end cooperation in any given moment, so does my vendor. And we get to the point where:
“We, as a vendor, have freedom to terminate this contract after each iteration, i.e. when we hate your guts or we get a better deal somewhere else, and then you, as a client, are left out in the cold.”
You know what? I screw this kind of freedom. It looks nice on paper but I, as a client, have very limited use of it. At the same time I lose the stick I could use against a vendor which is a new risk for my project. Maybe the risk probability isn’t very high, but its potential impact is devastating. And yes, I’ve seen more cases of vendor abandoning the client than the other way around. And yes, it was a surprise to me at first. And yes, then I got used to it because it isn’t very uncommon.
OK, I admit there are projects which don’t look like that – you can either quickly verify quality of work or you have a comfort to trash the project and start over again even a day before its launch. On the other hand these projects don’t happen very often.
Freedom of agile contracts is overrated. When I wear my client hat I prefer to plan for longer relationship and fix it if it doesn’t work well. Breaking the relation is always hard and costly for client. A couple of iterations worth a month of vendor’s time means much more in terms of client’s preparation to kick the project off and usually a big slip in general plan. For a vendor it’s all easier.
You better don’t try use freedom as an argument to convince clients to agile contracts. At a first glimpse it may look appealing but if you give it more thought it is not.
Do you use freedom as an argument in discussions with your customers? How do they react?