Are CRM and Proper Development Mutually Exclusive?

February 27, 2007Stephen Ward

The process of designing, developing, launching, and maintaining a website is complex and full of pitfalls. Dealing with the customer for whom you are developing a website, however, involves a whole new set of considerations. After all, a website is hard enough to build from specifications. But when you have human beings exercising editorial control over each step of the process, a normally difficult task can become all but impossible.

Like most developers, I know how the process should work. Developers gather requirements from the client, compile them into documentation, get feedback, and continue revising that documentation until the client signs off on the whole project. Once the signature is on the paper, things are set in stone. The developers know exactly what they need to do, the clients know exactly what they’re going to get, and development can proceed according to a clear plan. No further oversight should be necessary or permitted.

Unfortunately, that’s not how it works in the real world. In practice, customer relationship management gets in the way of proper development. Salespersons and client managers inevitably cave to client requests to make changes on the fly. Meanwhile, the project gets consigned to limbo, with the developers never knowing if anything is truly complete until the client is finally satisfied.

I’ve dealt with a lot of this in my professional career. The solution, unfortunately, is anything but simple. Developers need a clearly-defined process to maintain an efficient and profitable work flow. CRMs need to keep the client happy to maintain good business relationships. The question then becomes, how can you keep the client happy without endangering the integrity of the development cycle?

If you’ve got the answer to that question, you’re smarter than I am. As a developer, I find myself wishing CRMs would have the backbone to tell clients no, but I realize that’s not all that’s at stake. Fulfilling contracts and making money in the short term are meaningless without the ongoing business relationships and reputation that bring in more contracts in the long run. It’s a vexing problem, and certainly one of the biggest hurdles in modern project management.

Frankly, I’m stumped, so I’ll pose the question for discussion. Is there a way for proper development processes and customer relationship management practices to coexist in harmony?

CommentBookmark Subscribe
On March 22, 2007, Off the Market - Project Paradox wrote the following comment:

…/thoughts/journal/off-the-market.php

[…] For my friends and family following my employment progress, I’ve got bad news and good news. The bad news is that it turns out I hate contract work. There’s just something about the inconsistent pay and poor project management that I couldn’t stand in the long term. Thus, I chose not to renew the contract job I accepted last month. […]

On May 27, 2007, A Girl’s Guide to Managing Projects » Blog Archive » Carnival of project management #9 wrote the following comment:

[…] Stephen Ward presents Are CRM and Proper Development Mutually Exclusive? posted at Project Paradox. An interesting question (not least because it forces us to ask, “What is ‘proper’ development?”). And no answer here - but a good explanation of the problem! […]

On May 28, 2007, Pete wrote the following comment:

Yes, that’s a tough one… In the end though the customer is paying so they should get what they want. My suggestion is cost/benefit analysis and a project trade-off matrix.

Work with your customer to quantify the benefits of making the change and put that against the costs of making the change quantified in terms of impact on project constraints (cost, time, quality etc.)

Ask them to decide if the benefits of change are still more important than the costs and if so ask them to choose what to sacrifice from the project trade-off matrix. After that your conscience should be clear…

Name
Email Address
Website URL

« Previous Entry Building a Better Website Next Entry »