Programerski timovi koji rade na istom projektu, često zbog obima samog projekat ili iz drugih razloga dolze u situaciju da se međusobno ne razumeju. To deluje pomalo smešno, ali iako članovi tima svaki za sebe jasno poznaju materiju komunikacija među njima se ubrzo pretvara u igru gluvih telefona.

Eric Evans u svojoj knjizi Domain Driven Design - Tackling Complexity in the Heart of Software polazi od pojma koji je po njemu možda i najvažniji u projektovanju i razvoju softvera,  a to je ubiquitous language, koga bi ja preveo  kao zajednički jezik tj. jezik koji je usvojen kao osnov za svu komunikaciju koja se obavlja u vezi sa domenskim modelom, kodom, bazom podataka i svim ostalim elementima koji čine jedan sofverski proizvod.

Prema Evansovoj definiciji to je: Jezik struktuiran oko domenskog modela i koji čitav tim koristi kako bi se povezale sve aktivnosti tog tima u razvoju softvera.

Na ovaj način se žargon koji članovi tima mogu koristi među sobom u manjim grupama standardizuje na nivou čitavog tima koji može brojati više stotina učesnika rasutih svuda po svetu. Kada se sam model koristi kao osnov za ovakav zajednički jezik stvari postaju mnogo lakše. Možete opisivati neku funkcionalnost ili podatak koji vam treba dva sata, ali je dovoljno da se pozovete na već usvojeni model i da dogovorenim nazivom razbijete sve dvosmislenosti u komunikaciji. Trudite se da od samog početka radite na razvijanju svog posebnog jezika i terminologije koja će svim učesnicima biti jasna i precizna.