First page Back Continue Last page Text

Notes:


I've just commentted on the impossibility of communication without making assumptions: we do it all the time – I assume that you understand English and that you have comparable experience of software development, and that ...

The list is endless and ultimately pointless – because there isn't the opportunity to describe everything needed to understand what I'm saying from first principles. But you and I both gain confidence if you ask questions that clarify your understanding.

In software development, there needs to be communication between the customer and the developer, between the developer and the computer, and between the computer and the user. (Actually, there are usually more interfaces for communication than the three I've listed here.)

All of these interfaces are difficult: the customer has a different background to the developer, the developer has to interpret between the customer's language and the computer's and so on.

Every project I've ever worked on would have benefitted from better communications. But rather than think about ways to improve communication the usual cry is for more (or better) documentation.

Even where improved methods of communication are developed (techniques for capturing requirements, ways of documenting designs, tools for entering programs, ...) they don't solve the problem of software development: they just make it possible to tackle harder problems.