APPLICATION TO SOFTWARE ENGINEERING

   

graphics/application.gif

We promised you some additional tactics to help protect yourself from predatory bosses and customers while at the same time keeping things civilized. Here they are.

Bosses or customers often want to know at the beginning of the project when it is going to end and what it will cost. Often you are also required to bid fixed-price for a job when you are very early in the product development life cycle. What do you do in these cases?

I would maintain that the only time you can accurately estimate a project, that is commit to a fixed schedule and effort, is when all the design is finished. At that point I would be quite happy to give a fixed-price estimate to a customer (in other words, to pin my ass on a particular delivery date and staffing level). Before that you can't. I repeat, before that you can't. If you are being pressurized to commit earlier, then there are a few stratagems you can employ .

Two fixed-price quotes I'll give you a fixed-price bid for the design phase and at the end of that I'll give you a fixed-price bid for the rest. You'll have your design so that if you don't like my bid for the implementation you can take the design elsewhere. Another way of looking at this is "I can only give you a date/effort by which the design will be done. At that point I can give you a date/effort for the rest."

Parkinsonian estimating Often pressure is applied by telling you the end date by which the system must be ready and the size of the team you're being given to deliver. A Parkinsonian estimate, worked back from the end date, can show the impossibility of what you are being asked to do. It can be done very quickly. You fit your six (or whatever number you use) phases back from the end date. Typically the effects you get are things like: to make the deadline the development should have started two months ago; the deadline can only be achieved if coding takes two days; or, the deadline can be achieved if we don't do any testing.

Load the estimate If you are put in a position where you have to give a fixed-price quote, then you must load the estimate to give yourself sufficient room for maneuver. And it's OK to tell the customer you're doing this and why. "We don't know how big the job is, Mr Customer, so given our estimates, see, and our level of knowledge at the moment, we have to assume worst case scenarios, so this is the reason for our pricing. If, at the end of the design phase, we find that we overestimated we'll be more than happy to pass the reduction on to you. Oh, and by the way if anyone is telling you differently they're wrong."

You have to stick to your guns. If you have done your estimates properly and believe in them, then you hold the moral high ground. If you commit to something you cannot achieve then you will preside over a catastrophe and you will be left looking fairly silly.

I don't know of anyone who has been fired for refusing to budge from their estimates. I do know of numerous instances where people were fired for screwing something up!

Play the change control game If you are forced to make a fixed-price bid, be sure you deliver it with all the relevant fine print. State explicitly, and in excruciating detail, what was and wasn't included and the assumptions you made. Then as other items come to light in the course of the analysis and design phases, you can play the change control game where every new item becomes a change to the contract.

Tell 'em it's impossible Here you take on the project but none of the associated guilt or responsibility. Nice prospect, huh? In this scenario, somebody asks you to take on what looks like an impossible mission and you say yes! Not yes unconditionally, however, but a yes with certain provisos.

Imagine the scene. You've looked at what they're asking you to do, and your model and all associated reason tells you that it's impossible. They're adamant, however, it's been promised “ it has to be done. So you make the following offer. You say: "I've looked at what you're asking me to do and I believe that it's impossible for reasons that I've outlined to you. However, given the squeeze you're in I'm prepared to do whatever I can to help. Here's my offer. I'll take on this project and run it for you. I can't guarantee you I'll make those commitments, but I will guarantee you that as soon as I know for a fact that the commitments are impossible, I'll let you know. Then you can decide how you want to present that to your customer."

There now. They can't accuse you of not being a team player. Note too, the repeated use of the word you during this little speech, ensuring that the guilt stays well and truly where it belongs.

   


How To Run Successful Projects III. The Silver Bullet
How to Run Successful Projects III: The Silver Bullet (3rd Edition)
ISBN: 0201748061
EAN: 2147483647
Year: 2001
Pages: 176

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net