6.1.1 Testování obsahu dokumentů Cílem každého dokumentu je předat informaci čtenáři. Tomuto účelu je třeba primárně přizpůsobit obsah dokumentu. Dále musí být dokument v souladu s cíli projektu a se svým účelem (tzn. dokument „Definice architektury“ se věnuje architektuře systému). Hlavní kritéria, která by měl obsah dokumentu splnit, jsou vodítkem jak při psaní dokumentu, tak při jeho testování. Těmito kritérii jsou: ▞▞
▞▞ ▞▞
▞▞ ▞▞
Úplnost – v dokumentu jsou obsaženy veškeré informace odpovídající charakteru dokumentu, případně jsou uvedeny odkazy na zdroje, kde lze získat potřebné znalosti. Čtenář si při čtení dokumentu nemusí nic domýšlet. Správnost – veškeré informace v dokumentu musí být správně, resp. musí být pravdivé. Čtenář musí dostat správné informace, aby se případně mohl na základě dokumentu správně rozhodnout. Relevantnost – informace v dokumentu se musí týkat cíle projektu a účelu dokumentu. Zbytečné informace otupí čtenářovu pozornost a může se stát, že přehlédne ty důležité. S relevantností informací v dokumentu nám může pomoci vhodná forma (šablona) dokumentu a její dodržování. Jednoznačnost – formulace musí být voleny tak, aby nebylo možné text interpretovat více způsoby. Chybou je také, pokud informace v dokumentu zamlžují čtenáři cíl projektu. Konzistence – text musí být konzistentní napříč celým dokumentem, ale i napříč celým projektem – nelze v úvodní studii projektu deklarovat záměr, který je pak v dokumentaci návrhu softwaru popřen nebo změněn.
Z těchto kritérií je často nejtěžší soustředit se na úplnost a konzistenci, a to nejen v projektech s rozsáhlou dokumentací, ale i tam, kde vzniká jen několik málo základních dokumentů. Požadavek na úplnost bývá porušen tam, kde autoři dokumentů zapomínají, že čtenáři nemusí mít stejné informace (např. ze schůzek) jako mají oni. Pokud dokument není úplný, pak i sám autor může mít po nějaké době problémy s jeho interpretací. Je třeba brát v potaz tzv. trvání dokumentu (tedy že se dokument může používat i za několik měsíců či let). V případě konzistence bývají problémy spojené buď s množstvím dokumentů, nebo s množstvím změn, které vznikají v rámci projektu. Dalším problémem spojeným s konzistencí bývá velikost týmu autorů. Zde můžeme narazit i na problém jednoznačnosti, kdy různí lidé interpretují jeden výraz nebo formulaci různě. Dobrým opatřením pro zvýšení konzistentnosti dokumentů je příprava terminologického slovníčku pojmů, které budou v dokumentech využívány.
6.1.2 Testování formální stránky dokumentu To, že je dokument správně po formální stránce, se týká struktury jeho obsahu, gramatické správnosti a vzhledu. Dokument správný po formální stránce usnadňuje čtenáři orientaci v textu, a tím pádem umožňuje i snadnější pochopení informace. Na druhou stranu: pokud je dokument správně po stránce formální, ale neobsahuje pravdivé nebo kompletní informace, pak nemá pro realizaci projektu velkou cenu. Ačkoliv se formální stránka dokumentu tedy může zdát oproti obsahové podřadná, není dobré ji zanedbávat. Její zanedbání může mít i fatální následky v případě, že je dokumentace hlavním výstupem projektu, nebo pokud je dokumentace určena (externím) spolupracovníkům či zákazníkům. Dobrá struktura dokumentu může pomoci naplnit pravidla pro obsahovou správnost (relevantnost) dokumentu. Proto je dobré si pro dokumenty vytvořit šablony, které budou v rámci projektů naplněny informacemi. Šablony nejen umožňují soustředit se primárně na obsah a ne na formu, ale slouží i jako kontrolní seznam, který vám pomůže nezapomenout na důležité informace.
6.1.3 Metody testování dokumentace Prvním krokem statického testování dokumentů by mělo být ověření dodržení určených projektových šablon. Druhým krokem je pak kontrola samotným autorem, kde by mělo dojít k opravě všech zásadních a hrubých chyb – např. by měly být v textu opraveny překlepy, gramatické chyby apod. V ostatních oblastech ale může dojít k jisté slepotě k chybám. Ta je dána tím, že autor po nějakém čase již není schopen chyby vnímat, protože se stanou součástí dokumentu, nebo některé informace považuje za samozřejmé
98
Efektivní testování softwaru
Ukázka elektronické knihy, UID: KOS227969