Kent Beck
2005-06-03 07:15:06 UTC
Here is the final practice.
Write contracts for software development that fix time, costs, and quality
but call for an ongoing negotiation of the precise scope of the system.
Reduce risk by signing a sequence of short contracts instead of one long
one.
You can move in the direction of negotiated scope. Big, long contracts can
be split in half or thirds, with the optional part to be exercised only if
both parties agree. Contracts with high costs for "change requests" can be
written with less scope fixed up front and lower costs for changes.
Negotiated scope contracts are a piece of software development advice.
They're are a mechanism for aligning the interests of suppliers and
customers to encourage communication and feedback, and to give everyone the
courage to do what looks right today, not do something ineffective just
because it is in the contract. They might be unwise for you at the moment
for business or legal reasons. Moving in the direction of negotiated scope
gives you a source of information with which to improve.
Write contracts for software development that fix time, costs, and quality
but call for an ongoing negotiation of the precise scope of the system.
Reduce risk by signing a sequence of short contracts instead of one long
one.
You can move in the direction of negotiated scope. Big, long contracts can
be split in half or thirds, with the optional part to be exercised only if
both parties agree. Contracts with high costs for "change requests" can be
written with less scope fixed up front and lower costs for changes.
Negotiated scope contracts are a piece of software development advice.
They're are a mechanism for aligning the interests of suppliers and
customers to encourage communication and feedback, and to give everyone the
courage to do what looks right today, not do something ineffective just
because it is in the contract. They might be unwise for you at the moment
for business or legal reasons. Moving in the direction of negotiated scope
gives you a source of information with which to improve.