Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

We have a client with whom we have a relationship of delivering proofs of concepts only. But when it comes the time to demo they expect an early version of what would be the solution. They want databases populated with real data, look-and-feel of a finished product and other things (including features) which are trivial and no way contribute towards proving the concept.

What do you do with that? How do you handle such a situation? (I'm the developer as well as the person who will be talking to the client along with other non-developers.)

share|improve this question

migrated from stackoverflow.com Aug 30 '11 at 15:47

This question came from our site for professional and enthusiast programmers.

1  
isn't this is an Agile methodology. every step you have to have a segment ready to demonstrate. –  krio Aug 29 '11 at 8:46
1  
You have a relationship with a client who has asked for actual data previously. When asked to do another POC you don't provide any data? –  Ben Aug 29 '11 at 8:48
    
@Ben: It's a different database altogether. We populate the database with real-sounding fake entries (which hardly matters because the point is to prove such a thing can work). –  Jungle Hunter Aug 29 '11 at 8:52
3  
@101 sounds like you need a more watertight contract / service level agreement then so you can tell them straight out that they haven't paid for real data in the database or the coding of additional features. –  Ben Aug 29 '11 at 8:55
    
@Ben: I'm not aware of the actual contract. Put thanks for the tip, I'll see if there's someone who can look into that. –  Jungle Hunter Aug 29 '11 at 8:57

9 Answers 9

As said before this should be explained as part of your initial meetings that the PoC is just that, a PoC and not the finished article.

share|improve this answer
    
Isn't that too rude? How do I put it? Or should someone else do the talking? The person who represents the client also at times has a tone that if we don't do what he is suggesting the POC can be cancelled. –  Jungle Hunter Aug 29 '11 at 8:50
up vote 10 down vote accepted

Ben's answer in comments:

sounds like you need a more watertight contract / service level agreement then so you can tell them straight out that they haven't paid for real data in the database or the coding of additional features.

share|improve this answer

I believe your service level agreement should consist what your client should be expecting at the POC Level, if it is not clearly stated in there, then client may be right to ask for a look and feel finished of your product especially when the concept is well convincing and working.

share|improve this answer
1  
Also, it may be good to hold a session explaining to the customer your delivery methodology (not the plan) and get them to buy in your approach. You need constructive and accurate communication with the customer. –  Emmad Kareem Aug 30 '11 at 20:54

When you say:

We have a client with whom we have a relationship of delivering proofs of concepts only.

How do you define that relationship? Do you have a contract with this client? Who established this relationship on your companies side of things?

Ideally, outside of this contract you also have documentation of your meetings with the client, their requirements documents, and a list of deliverables that your company promised to provide to the client before really getting down to work. Anything they are expecting to be in the PoC that wasn't discussed in these meetings and documents should be off limits and you should be able to point to those documents and remind the client of that fact.

Remember, you're an engineer. You want to solve problems and you want to be helpful. Resist that impulse and go back to your contract, go back to your planning docs, and tell them that extra polish or feature was not in scope for the agreed upon contract work. Tell them as politely as you can and if they push back I would simply offer to put them in contact with your boss so they can bring this up with him.

share|improve this answer

Who should be managing expectations here? Chances are someone should be telling the client, "You agreed to only this, so that is what you are getting," and ensuring this is acceptable. Would you expect a gourmet hamburger from McDonald's? I know I wouldn't and this is because of what brand McDonald's has spent years promoting and building. What is your company's image when it comes to this stuff and what kind of precedent has been set? If the client has done this numerous times then it may be quite painful and difficult to change now.

If I didn't see someone step in to manage expectations I would take that as a major red flag and find somewhere else to work.

share|improve this answer

There only one thing that matters.

Have they paid a % deposit already or commited to paying something for this proof of concept? Otherwise you might as well be a free requirement analyst

share|improve this answer

I would use the analogy that you are delivering something similar to an architect creating a scale model of a building.

share|improve this answer
    
Excellent analogy. I'd say that a PoC isn't even a scale model, but more like a feasibility study. You might build a prototype to show that it's possible to meet the requirements, but at the PoC stage you haven't even nailed down the design. Still, your analogy makes the point perfectly, and opens the way to say: "Just as an architect could put running water in a scale model, we can put real data in this PoC. But it's going to take more time and cost you more money, and it doesn't seem to add much value." –  William Shakespeare Aug 30 '11 at 20:56

It sounds like your client is trying to squeeze you and/or whoever will do the real implementation. The more your prototype looks and works like a finished product, the less perceived value there is in what the developer implements. The client can say: "The design and UI are already done -- all you need to do is to hook it up to a production server." At the same time, they'll tell you: "This looks nice, but it's only a prototype, isn't it? We can't actually use this."

share|improve this answer

I always try to make my prototypes to have a strong "prototype look" to avoid confussion to the extent possible. Recently I have started to use Expression Blend with Sketchflow, it is a great tool because it produces a UI that looks like this:

enter image description here

If your client still thinks that this is the final product... well, tell him "yes, it is", take the money and run! :-)

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.