Software 269 | y | y = A> ee pe —_ & at Ka f | a a ‘ = | || @ ee) | rah — | ——— — a. a How the Programmer wrote it How the Business Consultant described it mm > eS » aN ry « , rx a “ae ——, | | | on) i) How it was supported What the customer really needed lists that form the project specification. I should confess that I am no great fan of specifications, because they can mislead you into thinking you've solved the problem, but I concede a good specification is helpful. Spolsky’s Second Law is ‘Always write a specification’? Engineers should collaboratively write the specification as a response to the desires of the project creators. But they must not blindly implement the specification they've been handed. They must not forget the creative element. HOUSE_OVERSIGHT_015959