Customer Engineering…

If I were to believe in a diety, I think that I might have to pray to it for deliverance from projects where the customer has already tried to engineer a solution and estimate the cost before they bring me in. 

I’ve spent the past several days dealing with fallout over the fact that once I get involved and take a look at things that I tend to find that their proposed “solution” is in fact a big mess.  This leads to me spending lots of time explaining why the original “estimate” was wrong and why it can’t be done the way they thought it could.

I know in some of these cases they did these things because when I was previously in the DO that it was hard to get me assigned to work on these things.  But the other problem is that one of my customers is a frustrated designer/programmer who is now working in the business area.  His requirements specification documents read more like design outlines than requirements.

To give an analogy, imagine that you want to have a new building built and you have some ideas about what you want it to contain.  Now think about how realistic it would be if you (without much knowledge of architecture, construction methods/costs, or building codes) tried to create a blueprint and to estimate the cost.  Do you think your estimate would be very accurate?  Would your blueprints actually be usable for construction?  Would you actually try to use this estimate to obtain financing for construction?  Further, would you then estimate a completion date based on all this?

Most people wouldn’t expect an architect or contractor to accept these as binding, yet somehow when it comes to software they think this is OK.  They will come to me with a pseudo-design which won’t work and with an already established budget based on their finger-in-the-wind guesstimate.  And then they will complain bitterly when the real design and cost estimate are different!

This isn’t to say that I won’t try to accomodate their needs, but it sometimes boggles my mind the unrealistic expectations that people bring to the software development business.  But why should I and my development team be punished for bad assumptions on the part of other people?  I can only hope this gets better now that I’m dedicated to this project and will be involved in these sub-projects earlier.

1 Comment

  1. Outlaw3 says:

    Boy does that sound like the place I work.  Psychologists, with no experience at much of anything except writing contracts, use buzz words they hear to specify things they imagine and estimate the cost.  Then my company accepts it without going back through it and doing some realistic thinking.  The guys on the project are then stuck with garbage, the project runs over, the Psychologists change their minds about everything because “it’s in the spirit of the specifications” and we end up working for free.  For the life me I don’t know how anyone can stay in business like that.