About fixed-price estimation, Jeff said "Explaining this to the client...the scope and the duration to be negotiated..." when he talks to the FDD approach of project development.
OK, it is a good idea to explain this approach to your client but in the real life, I mean usually, the client first needs to make a RFP with its needs, its dates constraints, and so on and then, you, the supplier, you make a proposal with your estimations (duration, work). So, I mean that with a fixed-price contract approach, the supplier engaged himself on a "needs scope" for a fixed-price before he can be the supplier of the client (ok, I know that the scope of the client's needs is never frozen and this is why the iterative approach is encouraged). When the client has signed the contract, it is difficult to change it (the contract) and have this collaborative approach of the software development.