Za celý svůj profesní život, kdy se věnuji dodávce software v různých projektových fázích, jsem se nesetkal s tím, že by zadavatel/zákazník věděl, co chce. Pouze věděl, že to chce hned. A věděl, jak se to má jmenovat.
Slýchávám něco ve smyslu: já chci evidenci zaměstnanců. Já chci nový úvěrový produkt. Já chci novou službu, kterou můžu prodávat. Na to já většinou odpovídám: Dobře, pojďme si říct, CO to má přesně dělat. Nedokážete si představit ty nechápavé pohledy: co to chce? Vždyť jsem to teď řekl!
Až na výjimky mi nikdo nedokázal říct, jak se má např. úvěrový produkt chovat vůči ostatním produktům (vylučitelnost produktů), zda to má být pouze pro privátní klientelu nebo i pro firemní klienty, co vše má být splněno, aby mohl klient tento produkt dostat. A to jsme pouze na úrovni obchodních pravidel (business rules). Chraň kdokoliv, pokud se dostaneme k požadavkům. Dostat ze zadavatele větu jednoduchou ve tvaru PODMĚT PŘÍSUDEK ZBYTEK VĚTY (např. Bankovní výpis bude obsahovat název úvěrového produktu a tyto jeho vlastnosti: a, b, c.), je úkol hodně náročný.
Dlouho jsem přemýšlel, v čem může být problém. Je zákazník líný přemýšlet? Je natolik blbý, že to nedokáže? Neberme v patrnosti, že platí často obojí. Kde tedy je zakopaná dědova slivovice? Musím přiznat, že jsem šel hodně do minulosti, abych tomu přišel na kloub. Již na střední škole jsem totiž slýchával neskutečně důležitou větu: Opravdový programátor nepoužívá pro psaní programu počítač, ale tužku a papír. Tužku a papír. V době bezpapírových kanceláří (haha) tužku a papír? Ano!
Teprve tehdy a pouze tehdy, když si začneme kreslit obrázky, psát slova, hledat cesty z jednoho kroku do druhého, škrtat, přepisovat, zjistíme, že nápad, který jsme měli v hlavě, téměř vždy musíme předělat, změnit, poupravit. Jinými slovy teprve pak ta myšlenka, která někde v palici vězela, je do určité míry promyšlená. A jako vedlejší produkt i zaznamenaná. Zkuste však donutit zadavatele, aby tohle dělali dřívě, než nás začnou svými nářky otravovat…