Má diplomová práce se jmenuje DISClient, neboli klient DIS (Dokumentografických Informačních Systémů). Obhajoba této práce dopadla dobře a výsledná známka byla „výborně“.
Cíle a obsah práce
Cílem diplomové práce bylo vytvořit program, usnadňující vyhledávání informací v dokumentech, jež jsou uloženy na rozličných místech a v různých formátech. Jedná se tedy o program podobný webovému metavyhledávači nebo spíše klientskému vyhledávači, ovšem s tím rozdílem, že nebude oslovovat pouze webové vyhledávací stroje, ale i další libovolné zdroje dat (Oracle a jiné databáze, soubory na lokálním disku, …).
Schéma práce aplikace využívající rozličné zdroje dokumentů
Množina zdrojů, které se budou pro vyhledávání používat, lze snadno rozšířit o další a to bez nutnosti rekompilace aplikace. Navíc toto rozšíření zdrojů je umožněno komukoliv – jeimplementováno v nezávislém modulu, který slouží pro komunikaci mezi příslušným fyzickým serverem a aplikací.
Hlavní náplní práce tedy bylo navrhnout a implementovat rozhraní mezi aplikací a vlastním DIS serverem (který bude oslovován) tak, aby umožnilo uživateli:
- Maximálně využívat možnosti příslušného serveru.
- Nenutilo jej zadávat opakovaně stále ty samé údaje pro každý server, který má být dotazem osloven.
- Používat jednotnou syntaxi v dotazu pro všechny servery.
- Vytvořit další modul plnohodnotně využívající jiné zdroje dat.
Základní funkce a rysy výsledné aplikace:
- Uživatelsky přívětivé a víceuživatelské prostředí.
- Zadávání dotazu pro několik různých serverů najednou.
- Vlastní vyhledávání relevantních dokumentů.
- Uchovávání a správa historie dotazů.
- Zpracování výsledků do jednotné podoby.
- Získání (zobrazení, uložení) nalezených dokumentů.
- Ukládání a načítání dotazů, výsledků, …
- Export výsledků v několika formátech (HTML, Plain text, …)
Srovnání s konkurenčními produkty
Jelikož DISClient využívá pro vlastní hledání dokumentů na Internetu fulltextové vyhledávače, měl by uživateli nabídnout stejné možnosti. To se týče jednak parametrů dotazu a jednak možností prostředí. Parametry lze snadno díky zavedenému systému implementovat. S prostředím je to horší, neboť běžný uživatel je zvyklý na používání oblíbeného internetového prohlížeče nejen pro vyhledávání ale také pro prohlížení nalezených dokumentů. Je pro něj tedy nezvyklé zadávat dotazy v jedné aplikaci a výsledky si prohlížet v druhé.
Jednou z možností jak alespoň částečně simulovat uživateli prostředí na jaké je zvyklý, je zapnutí automatického exportu (Nastavení/Export/Automaticky zobrazovat). Výsledky se po ukončení vyhledávání exportují do zvoleného formátu (např. HTML stránky) a zobrazí se v nastaveném prohlížeči, kde si je může uživatel libovolně prohlížet a procházet mezi nimi.
Jinou možností je implementace dalšího modulu využívající jádro aplikace (DISEngine). Aplikace by se pak chovala jako další internetový metavyhledávač.
Program však přináší spoustu dalších výhod a možností: ukládá historii dotazů, takže se k nim může uživatel kdykoliv vrátit, znovu vyhledat, či přímo stáhnout dokument z dříve uloženého seznamu. Po vyhledání lze s výsledky dále pracovat – uložit seznam, třídit dle různých kritérií či vyexportovat do libovolného (i vlastního) textového formátu
Navíc uživatel může paralelně vyhledávat v několika zdrojích dat (i když to webové metavyhledávače umožňují také) a tyto zdroje nemusí být pouze fulltexty na Internetu (to už dostupné metavyhledávače neumí). Díky paralelnímu zpracování je vyhledávání podstatně rychlejší, než postupné ruční vyhledávání na jednotlivých serverech.
Ve srovnání s dostupnými desktopovými vyhledávači patří mezi základní přínosy zastoupení českých vyhledávačů, cena (jedná se o volně šiřitelný program), dostupnost zdrojových kódů a hlavně rozšiřitelnost. Kdokoliv může vytvořit novou knihovnu pro vyhledávání nejen pomocí dalších webových služeb, ale i pro jakékoliv jiné zdroje dat (soubory na disku, data emailových klientů, data v databázích, knihovní systémy, …). Navíc uživatel smí plně využívat možnosti, které nabízí jednotlivé vyhledávací servery, ovlivnit způsob exportu výsledků a podobně.
Na druhou stranu ale DISClient nedisponuje některými funkcemi, které uvedené aplikace obsahují: integrace do systému, prohlížeče, vlastní prohlížeč s vestavěnými vylepšeními (např. zvýraznění hledaných slov), agenti na automatické vyhledávání nových dokumentů odpovídajících dotazu, kontrola dokumentu (dosažitelnost, vlastní explicitní kontrola zda opravdu vyhovuje dotazu, …) a další. Ovšem není problém výše uvedené chybějící vlastnosti do aplikace doprogramovat.
Ukázky programu
![Hlavní okno aplikace](/images/dis_client1.gif)
Hlavní okno aplikace. V horní části je seznam dotazů. dolní část obsahuje přehled nalezených dokumentů odpovídajících vybranému dotazu
![Editace dotazu umožňuje uživateli plně využít možnosti DIS serveru](/images/dis_client2.gif)
Editace dotazu umožňuje uživateli plně využít možnosti DIS serveru
![Statistika po vyhledání dokumentů](/images/dis_client3.gif)
Statistika po vyhledání dokumentů
Možnosti exportu seznamu nalezených dokumentů
Další náhledy jsou obsaženy v uživatelské dokumentaci.
Možnost stažení diplomové práce
Vlastní diplomová práce:
Instalační soubor programu DISClient: DISClient.msi (2,39 MB)
Verze, která se nemusí instalovat (stačí rozbalit): DISClient.zip (2,04 MB)
Zdrojové kódy
Máte-li zájem o zdrojové kódy aplikace, ozvěte se, po domluvě je rád poskytnu.