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.

Have you ever handled a Client who doesn't know anything about programming or no technical skills who doesn't even know how to turn on a Computer? What he only have is the idea, which is a great one, but doesn't know how to implement it so he hired some programmers to implement his idea.

Some over excited programmers likes the idea and eager to implement it without thinking of any possibilities that a problem might occur. Now both parties (Client and developer) have agreed on something after plotting a timeframe of the project and benifits. And then there comes the part where you are almost finish the project, and your client comes across with another idea and wants to implement it. And as a developer you know the possibilities of implementing that, and you found out that it would destroy 50% of what you've done and needs to extend the timeframe for atleast 50% of the one you agreed on.

As for the clients side, it is just a little feature that needs to be added, and because I'm nearly done with everything, he thought it is just a brick that needs to be placed on the wall, unfortunately that brick is in the middle of the wall.

share|improve this question

migrated from stackoverflow.com Mar 23 '11 at 12:00

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

3  
I think "don't know any programming skills" is probably the wrong idea. I think you should say something like: clients who don't understand that changing the project requirements incurs additional work. –  syrion Mar 23 '11 at 12:33
    
You may want to re-word the title, you're really asking more about change management. –  BlackICE Mar 23 '11 at 13:15
    
@syrion, yes, that also but the point is, the client thinks he's knows more than me, he only got the idea but don't have the skills to do it. –  rob waminal Mar 24 '11 at 0:38
add comment

5 Answers

This is a classic pitfall in software development. The spec is very vague in the beginning and you get feedback from the customer while developing the application. To keep everybody happy it is essential you keep adding and changing functionality in iterations where you deliver a completely working application at the end of every iteration.

So in your case. Finish what you are working on and only then start implementing the new feature. This way the client will have something working when he reaches the end of his budget.

Also, to get buy-in from the client (or make the client decide that it is not a good idea) make a work breakdown structure which you can use as a guide to explain why this new feature will cost so much. The more detail you can provide on what something will cost, the harder it is for the client to blow it off.

share|improve this answer
    
agree.. I wish the client let his developer do the work first before interfering. –  rob waminal Feb 19 '11 at 1:25
add comment

It's always very important to be up front and honest with clients and customers regarding level of effort on features. There are several tools that you can implement to reduce the frustration of rework and scope creep.

1) Upfront functional requirement documentation: This is invaluable, as this documentation should describe ALL of the functionality that shall be included in the product. The client must agree and sign off on this document, which should be legally bound to a contract.

2) Change management: Once you have signed document specs, you then have leverage to institute change management procedures. Basically, every additional feature or change requested by the client must follow some process where the team can evaluate how much time and money this will cost the client to implement. The answer is never "no, we can't do it", it is always "yes we can do it, but it will cost this much." Often, an answer of "Yes, this is possible, but you'll get your product in 2013 and it will cost you $1,000,000" is just as effective as a flat out "no".

The key to making these things work is communication. Even if your client doesn't know anything about software, they understand business. You don't have to explain the inner workings of the code to effectively reflect the time and effort associated with a change. Always be honest and you'll gain the credibility to push back every once and a while.

share|improve this answer
add comment

Just like what our great instructor Farsheed says, "We love changes, if they will pay for the damages and bear with the extended timeframe!".

This kind of situation is always expected to happen especially for those clients who loves to think about ideas and just wanted us developers to play the magic trick and make their imagination come true, and take note "ASAP". I hate that word but in reality they would just think we are machines who can deliver everything on their expected timeframes.

Well for me the best thing to do is negotiate and just say NO or YES and if YES then PAY. and here is the code lol just for fun.... I know Rob enjoys doing this for a past time

public static void WhatToSayWithThisKindOfClient(bool ClientRequestIsPossible){
{
    if(ClientRequestIsPossible){
        try{
            ProcessRequestTimeFrameAdjustment(); 
            ProcessNewProjectBillingAdjustment();
        }
        catch(BadNegotiationException negEx){
            throw new BadNegotiationException("Not a good client!", negEx);
        }
        Response.write("Yes");
    }
    else
    {
        Response.Write("No");
    }
}
share|improve this answer
1  
hahahaha, you hit it right! –  rob waminal Mar 23 '11 at 10:22
    
F is different, he don't know the word "ASAP" –  rob waminal Mar 24 '11 at 0:45
add comment

how to deal with clients who don't know any programming skills

Do the programming for them. That may even be what they think they're paying you for.

share|improve this answer
add comment

Greetings Rob Waminal

This is a usual thing. It can happen often. I've had my own software development company for about 2 years and yes it does happen.

The best way to handle such clients is to openly, straight forwardly tell them the actual cost it would incur.

Tell them straight ' No problem, I can implement this for you, but you see it will come at a cost.'

Then he will ask you how much

Tell him the amount and then he will be quiet by himself.

share|improve this answer
add comment

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.