How to Write a Request for Proposal for a Web Project
Full Text Search: The Key to Better Natural Language Queries for NoSQL in Node.js
written by Bruce Morris
It would be easy to say here that the client usually knows what they want but just has trouble putting it into writing. Quite often the client has little idea what they want or need. Sometimes clients are aware of their lack of clear vision and often they think they know what they want but the developer, with much more experience in this sort of thing, knows better. Now before my client readers start screaming, let me also add that sometimes developers think they know best when they just plain don't. You want to create an RFP that will attract well thought out and reasonable proposals. You want to create an RFP that will set the basis for a comfortable working relationship through a sometimes complicated and expensive project.
A big part of the problem is it is difficult to put into writing all the details and possibilities of a Web development project before you have a good idea of what you need and how it is all going to come together. Also Web development is fairly new so it should be no surprise that most clients have little experience writing the kind of RFPs needed for Internet development projects. An RFP for building a bridge or installing a network is quite a different animal from an RFP for Web development. Ideally a company would seek a knowledgeable Internet consultant to help them visualize and define what their project should include before they write the RFP. A good consultant can help produce an RFP that should make the development process easier for both sides. I wish that I could insert here a list of good, knowledgeable consultants for you to call. Unfortunately (looks like I'll be using that word a bunch in this article) good consultants are not only hard to find but hard to identify. Sharp Web developers will insist they are all the consultant you'll need and independent consultants can get rather spendy in a hurry and not really give you much more than a tame PowerPoint presentation and a thick white paper along with their hefty invoice.
So what's to be done? I suggest a two-stage proposal process with plentiful; scoping time built in. The first stage would be designed to glean through the crowd and select a short list of companies to bid on the RFP after you have produced it. The idea is to find 3 or 4 development companies you feel good about even though they haven't cranked out a proposal with numbers yet. To do this you need to prepare a scoping document that the greater mass of interested developers can use as a starting point to talk with you.
This initial document should be heavy on goals and vision - what do you want your site to do? What's the reason for putting up a Web site for your company at all? It need not be a whole lot more than the project vision thing and something like:
WidgetCo seeks a company to help build a World Wide Web site to perform the following functions: · Build and reinforce the corporate XYZ brand around the world, · Sell XYZ products, · Provide economical customer support capabilities. Interested development companies should contact Mr. Big before 3/10/1998.
Describe your company and your products, give a bit of information about the time you have in mind for the project and describe the resources you intend to devote to the project.
Talk to the people who respond and set up short meetings with the ones who either come recommended or who you get a good feeling about. Then, if you're not going to use an Internet strategy consultant, get ready to prepare your proper RFP.
You should restrict the bidders to 3 or, at most 4 companies. If it's a big project you might want to consider a paid pitch - give the final bidders $1,000 each to offset the cost of preparing their proposals. This may sound like a crazy waste of money but put yourself in the bidders' shoes for a moment. A well-prepared proposal for a large project is going to take considerable amount of time and resources to produce. Quite a few proposals come to nothing. Often the rumor mill can make it sound like the company asking for proposals already has a favorite developer and just wants competing proposals for comparison purposes or to keep their favorite honest. Even though this may well be the case, you can't expect good, thorough proposals in such a situation. A paid pitch means the best development companies can devote the time needed to prepare the best proposals.
I suggest you specify that proposals be arranged so that you can compare them easily. You should ask for specific the facts and figures in the format and order you need to make a good comparison. You might say something like:
Proposals shall contain the following sections:
- Executive Summary containing a brief description of your project development approach and costs
- Corporate information including financial details
- Qualifications including previous clients with contact information and relevant URLs
- A description of your development process
- Asset and draft delivery methods
- Project stages
- Quality control
- The proposed team and their qualifications
- Proposed schedule
- Costs and payment details
- Terms and conditions
There's plenty more you can ask for but keep in mind that what you're trying to do is select a company you trust. During the development process you will make mistakes, they will make mistakes, you'll be late with deliveries and so will they. You need to select a company who will forgive your sins as you forgive theirs. Although you should try, it is almost impossible to include everything in an RFP or in a proposal. The proposal needs to set out the way you will work together. Clients almost always say they will deliver everything needed for the project in a neat little pile at the very beginning of the project and you will probably assume you can do it too. THIS NEVER HAPPENS! The client will be the first one to be late with a deliverable. Your RFP should state what you expect to happen when you are late and when they are late.
Make sure your RFP sets out a schedule for the proposal and development process. Something like this:
- March 10 - Request for Qualifications goes out
- March 20 - Qualifications due
- March 22 - Short list of bidders selected
- March 30 - RFPs sent to short list of bidders
- April 15 - Response to RFP due
- April 20 - Successful bidder notified
- April 22 - Purchase order for project issued
- April 24 - Initial project scoping meeting
- May 30 - Project development begins
- July 30 - Site goes live
There will be a bunch of other milestones set out once the project gets underway, but bidders need to know these dates up front.
If you have spent some time talking to the short list of bidders, you can probably write your RFP in such a way that your project goals and vision are clearly stated. If you have given a good idea of the budget range to the bidders, you probably already have a reasonable idea of what is going to be involved in the project. The RFP should focus on the details of how you will relate to the development company during the build process.
I think it is vital to give the short list a contact person who they can talk with when they have questions about the project. It is not in your best interest to have the bidders working on proposals in equal ignorance - the best thing is for them all to feel free to talk to you and find out what you really want. You're going to have to spend a bunch of time with these people later so why not spend some time finding out what they are like? Set some time aside for explaining the project during the time the bidders are working on their proposals.
Be sure you mention who is going to pay for corrections. If the copy you provide has errors in it, who is going to pay to fix them?
You may want to consider mentioning that your RFP is a private, copyrighted document that may not be shown to others. Many development companies use freelancers and part-time help. Be sure you ask for this to be detailed and explained. It's not necessarily bad if they use freelancers but you want to be sure your RFP doesn't get all over town and into the hands of your competitors. You may consider asking the short list to sign a non-disclosure agreement.
If you can detail exactly what you want - great. But don't forget you want to set out a comfortable working relationship. You want to hire a specialist development company because they probably know more about all this than you do. Listen to them. If they say your goals are unrealistic and your budget is absurd, they may be right.
This article originally appeared on WebDevelopersJournal.com.