MADEJA, J. Vizualizace algoritmů bezztrátové komprese [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2015.
Student v rámci bakalářské práce realizoval v prostředí programu Matlab aplikaci demonstrující principy algoritmů pro bezztrátovou kompresi dat. Zadání bylo splněno jen z části a realizovaný program nebyl odladěn, ač bylo v zadání přímo uvedeno: Ošetřete chybné zadání či volbu. Student, jak sám uvedl, začal na bakalářské práci intenzivně pracovat až před termínem odevzdáním a na první konzultaci se dostavil necelý týden před odevzdáním, kdy vcelku neměl nic dokončeno. Např. vývojové diagramy, které program umožňuje zobrazit, jsou nefunkční, v programu je chybný odkaz na adresář, jeden soubor zcela chybí. Vytvořené obrázky však nejsou pro svou vizuální podobu a způsob zobrazení příliš přínosné. Program zahrnuje i požadovanou vizualizaci výpočtů u jednotlivých algoritmů. Bohužel není zřejmé, co je v jednotlivých sloupcích během výpočtu zobrazováno, sloupce jsou jen očíslovány, ač bylo v zadání přímo uvedeno: Dílčí kroky budou pro snadné porozumění doplněny textem. Jakákoli nápověda či popis k jednotlivým algoritmům chybí. Algoritmy jsou srovnávány na základě „míry komprese“, kterou student v práci nikde nedefinuje. Jedná se o poměr délky kódované zprávy k délce zprávy kódované rovnoměrným kódem. Kapitolu věnovanou problematice srovnání jednotlivých algoritmů, soubory zpráv, které by demonstrovaly vhodnost individuálních algoritmů, a rovněž jejich vyhodnocení postrádám. Stejně tak popis a možnosti implementace jednotlivých algoritmů. V textu nalezneme jen všeobecné úvahy, jak by program měl vypadat, které se dají aplikovat na jakýkoli kód v Matlabu. Nicméně to je již důsledek přístupu studenta, který postupoval stejně i během semestrálního projektu, který mu byl vrácen k přepracování. Nabízí se tedy otázka, zda by nebylo vhodné postupovat stejně. Využitelnost odevzdané práce, co by výukové aplikace, jak bylo požadováno v zadání, shledávám za vcelku minimální. S ohledem k intenzitě práce studenta během semestru, jeho přístupu k řešení BP a odevzdanému programu hodnotím práci sotva uspokojivě.
Student realizoval v prostředí Matlab aplikaci s grafickým uživatelským rozhraním, která demonstruje principy algoritmů pro bezztrátové komprese dat. Z porovnání vlastností vytvořené aplikace s požadavky zadání vyplývá, že nejsou ošetřeny stavy, do kterých se program dostane, když uživatel vloží neplatné hodnoty a zcela chybí textový komentář dílčích kroků algoritmů. Vzhledem k problémové funkčnosti vývojových diagramů a chybějících popisek v záhlaví zobrazovaných tabulek nelze za zcela splněný považovat ani požadavek zadání na vizualizaci jednotlivých částí výpočtů. Jako výuková pomůcka proto postrádá aplikace potřebnou názornost a pro výukové účely je tak málo vhodná. Samotné řešení práce má podprůměrnou odbornou úroveň. Ačkoliv student v závěru textové části diplomové práce tvrdí, že „při vývoji aplikace byl kladen silný důraz na znovupoužitelnost“, zdrojový kód programu tvoří jeden dlouhý soubor s minimem komentářů, ve kterém se případný následovník bude jen velmi obtížně orientovat. Vytvořené funkce, zvláště ty, které by mohly být použity při dodatečné implementaci dalších algoritmů, měly obsahovat podrobný popis, včetně vstupů a výstupů, a měly být uloženy v samostatných souborech logicky uspořádaných v adresářích, jak je to při tvorbě aplikací, nejen v prostředí Matlab, zcela běžné. Nedostatky lze najít i ve způsobu interpretace výsledků. Například vzájemné porovnání jednotlivých algoritmů, bylo provedeno jen na základě „míry komprese“, kterou však student v práci nikde nedefinuje, a zcela opomenuto je neméně důležité porovnání dle výpočetní náročnosti. Z formálního hlediska, lze práci vytknout některé překlepy a chyby ve formátování textu (např. proměnné, které jsou v rovnicích psány správně kurzívou, jsou v textu často chybně uváděny stojatým písmem a v kap. 2.5 nejsou odstavce zarovnávány do bloku). Vzhledem k výše uvedeným důvodům hodnotím práci 60 body (klasifikační stupeň D).
eVSKP id 85258