- Na komunikaci musí být vždy dva.
- Ne vždy je to o tom, že by ten druhý (nebo první) byl hloupější a špatně chápal (vysvětloval). Dobře vidět je to třeba na testování – vývojář už do problematiky zasvěcený je, ví, jaký je smysl programu, ví, jak se má chovat… ale tuhle znalost je potřeba předat* testerovi a až potom může testovat. Kdyby testování prováděl přímo vývojář, tak odpadne nutnost ty znalosti externalizovat a vložit je do hlavy jiného člověka, otestováno by pak bylo během chvilky. (Ovšem v tomhle případě je nepřijatelné, aby celou práci dělal jeden člověk, protože je potřeba, aby kontrolu prováděl někdo jiný než vlastní práci.)
Podobné je to se sběrem požadavků – potřeby zákazníka musí pochopit** nejdřív analytik a pak je musí nějak předat vývojáři – tzn. nějak explicitně je formulovat, převést z myšlenek ve své hlavně na papír nebo aspoň na mluven slova. A vývojář tohle zase musí dostat do svojí hlavy, pochopit. Na druhou stranu analýza nespočívá jen v předání požadavků 1:1*** a není dobré plýtvat časem programátora na to, co může dělat analytik (a vice versa).
*) je celkem jedno, zda to dělá vývojář, nebo analytik, nebo si to sám tester čte z analýzy/zadání. Dostat ty znalosti do hlavy dalšího člověka (testera) stojí čas v každém případě.
**) nebo lépe řečeno je z něj vydolovat
***) byť to tak někdy bývá