Semestrální práce pro předmět

návrh a implementace uživatelského prostředí

Jiří Meixner, 5/27, 05.2002

jiri.meixner@seznam.cz

 

V rámci semestrální práce pro tento předmět jsem pracoval na uživatelském rozhraní pro moji diplomovou práci. Moje diplomová práce Jednoduchý ekonomický software pro malého podnikatele se skládá z analýzy jednoduchého účetnictví a jeho implementace společně s automatem pro analýzu a stahování ceníků z internetu. Jelikož diplomová práce je celkem rozsáhlá a potřebuje velmi důkladnou analýzu, rád bych v tomto předmětu vytvořil uživatelské rozhraní pro část programu jednoduchého účetnictví. Jelikož se bude jednat o databázový program, který bude využívat databáze MS Access přes rozhraní ODBC mohly by vzniknout problémy při instalaci takovéhoto produktu v rámci předvedení výsledků této semestrální práce. Abych předešel těmto problémům a jelikož si myslím, že pro účely tohoto předmětu to není nezbytné, předvedu tuto semestrální práce v simulovaném prostředí HTML prezentace, kterou později využiji jako část HTML dokumentace k výslednému programu. V této HTML prezentaci bude dle screenshotů jasně patrná filosofie navrženého prostředí a jeho grafická podoba. Pomocí HTML prostředí také nebude problém nasimulovat různé volání jednotlivých dialogů, čímž by se předvedla i základní dynamika daného uživatelského prostředí. Uživatelské rozhraní vychází ze složité analýzy daného problému, kterou jsem musel provést před jeho vytvořením. Tuto analýzu naleznete jako součást dokumentace k mé diplomové práci na www.volny.cz/meixnej/diplomka (cca 11 stran A4).

 

Semestrální práce bude obsahovat následující dialogy:


Požadavky na uživatelské prostředí

Nejlepší užitečné programy se vyznačují příjemným, přehledným a jednoduchým uživatelským rozhraním, které se snadno ovládá. V mém případě je nejdůležitější především přehlednost uživatelského rozhraní, neboť v problematice účetnictví je spousta různých položek a chyba při práci s účetním programem může mít nepříjemné a závažné důsledky. Bohužel o jednoduchosti v účetním programu asi ani nejde hovořit. Typ uživatelského rozhraní bude standardního typu programů pod OS Windows (98,NT – ne XP). A to jak ve struktuře dialogů, použitých komponent, barevnosti či ovládání. Toto uživatelské rozhraní však bude mít jisté zvláštnosti dle požadavků zadavatele. Jedná se především o požadavek na dobrou čitelnost, z toho důvodu použiji v uživatelském rozhraní vždy o jeden stupeň větší písmo či komponentu než je obvyklé. Standardní velikost písma tedy bude 10 bodů namísto 8 či 12 na místo 10 apod. . Dalším požadavkem je mírná kompatibilita prostředí s DOSovým programem, který zadavatel doposavad využívá. Tento požadavek vede k tomu, že kromě standardních globálních ovládacích-strukturalizačních  prvků windows programů jako jsou roletové menu a lišta s ikonkami zde bude speciální úvodní dialogové okno s podobnou strukturou již zmiňovaného DOSového programu. Avšak díky větším programovacím možnostem bude moci toto okno dynamicky měnit svůj obsah dle historie volání jednotlivých funkcí či přímého zásahu uživatele.

Jednotlivá dialogová okna, která budou plovoucí, budou optimalizována na maximální velikost obrazové plochy 1024x768 bodů s přihlédnutím na rozměr 800x600. Jak již bylo řečeno, účetnický software se vyznačuje značným počtem položek, které se často objevují postupně v několika dialozích, tak jak jsou automaticky či uživatelem dle smyslu účetního záznamu volány. Proto se pro větší přehlednost v uživatelském prostředí jednotlivé skupiny položek musí od sebe vzájemně oddělit. K tomuto účelu se použijí standardní grafické prvky uživatelských rozhraní jako jsou skupinové boxy ap. Navíc se tyto standardní prvky rozšíří o podporu různobarevného pozadí položek, které jasně odliší převzatá data položek z dřívějšího dialogu od nových. Případně pro rozlišení položek nevyžadující zadání dat.

Zpracování uživatelského prostředí

Pro implementaci uživatelského prostředí jsem si stejně jako pro budoucí vlastní implementaci celého programu vybral nástroj Borland C++ Builder 5. V tomto nástroji je vytváření uživatelského rozhraní velice příjemné a pohodlné.

            Všechny dialogová okna jsem navrhl tak, aby byly široké maximálně 800 bodů, pokud si je uživatel sám nezvětší. Všechny dialogy vyjma dialogů pro záznam investičního majetku a záznam dokladů mají minimální výšku menší jak 500 bodů, takže se pohodlně vejdou i do rozlišení 800x600. Veškeré změny základní velikosti (pokud je povolena) či pozice dialogu uživatelem se budou pamatovat do následující změny.

            Všechny tabulky, kterých se v tomto uživatelském prostředí vyskytuje hodně se řídí dle následujících pravidel:

 

Vzhled tabulek jak jsou vidět v prezentaci je základní. Obsahuje ty podstatná a plně dostačující informace pro uživatele, tak aby s tím uživatel nemusel již nic dělat. V případě, že si uživatel bude přát nastavit si tabulky dle svého přání má k tomu následující možnosti:

 

Všechny tzv. globální dialogy se vyznačují stejným vzhledem. Jsou to jednoduché dialogy s tabulkou přes celou šíři dialogu a s tlačítky pro nový záznam, opravu stávajícího vybraného záznamu, smazání vybraného záznamu a tlačítko pro aktivaci a přepnutí do speciálního menu programu. U těchto dialogů lze měnit jejich velikost, avšak minimální šířka je 800 bodů a minimální výška 186 bodů, vyjma peněžního deníku, který má minimální výšku 213 bodů.

Veškeré zadávání hodnot bude mít svůj komfort. Při zadávaní datumů si bude moci uživatel vypomoci šipkami nahoru resp. dolů, které zvýší resp. sníží dané datum o jeden den. Klávesy PageUp resp. PageDown budou mít podobný účinek avšak na změnu měsíce. Pokud bude políčko prázdné tak se za měněné datum bude považovat aktuální datum systému. Při zadávání číselných hodnot bude moci uživatel napsat číselný vzorec, který se automaticky přepočítá na výslednou hodnotu. K použití budou operátory +, -, *, / a ** namísto mocniny.

Stejně jako u tabulek platí, že se zobrazení hodnoty, která se nevejde do vymezené položky celá zobrazit, zobrazí formou nápovědy, když se nad danou položkou na chviličku zastaví kurzor myši. Toto zobrazení celé hodnoty bude mít přednost před opravdovou nápovědou, která bude u některých položek aktivní. Tato nápověda bude stručně vysvětlovat danou položku, aby tak uživateli pomohla k jejímu správnému vyplnění. Například má-li tam napsat částku bez DPH či s DPH apod.

Globální rozhraní programu

            Globální rozhraní programu se bude sestávat z jednoho formuláře, který bude mít roletové menu a čistou plochu v uživatelem definované barvě (základní barva bude standardní šedivá). Uživatel bude moci vypnout plochu a vytvořit tak pouze řádek s roletovým menu, které bude obsahovat veškeré položky pro ovládání programu. Jak je vidět z následujících obrázků, tak některé funkce mají i klávesové zkratky. Zobrazení jednotlivých knih bude možno přes klávesovou zkratku ALT + dané písmeno knihy. Zobrazení dialogů nového záznamu konkrétní knihy bude možno přes klávesovou zkratku ALT + SHIFT + dané písmeno knihy.

 

Menu ÚpravyMenu ZobrazitMenu PřehledyMenu AnalýzyMenu OknaMenu Nápověda

Speciální úvodní dialog

Tento dialog - menu vznikl díky požadavku na zpětnou kompatibilitu prostředí s DOSovým programem. Díky větším programátorským možnostem bude mít toto menu více vzhledů. Uživatel si bude moci vybrat mezi vertikálním a horizontálním uspořádáním. Menu bude obsahovat tlačítka dle výběru uživatele i s možností výběru pořadí každého z nich, standardní sadu tlačítek či dynamicky měnící se sadu tlačítek dle jejich využívanosti.

Standardní sada tlačítek vychází obsahově i pozičně z průzkumu četnosti používání konkrétních dialogů. Je tedy postavena tak, aby nabídla uživateli pohodlnou a efektivní práci s tímto menu a také aby zajistila již zmiňovanou kompatibilitu.

Velikost menu bude automatická a nebude se moci měnit. Uživatel však bude mít možnost zmenšit toto menu vypnutím nápisu JESpMP.

 

Dialog peněžního deníku

Dialog položky peněžního deníku

Nelze měnit jeho velikost, která je pevně stanovena na 440x425 bodů.

Při výběru kódu z comboboxu bude jako poslední hodnota „-----NOVÝ-----“ , která umožní uživateli přidání nového kódu.

 

Dialog knihy drobného majetku

Dialog položky do knihy drobného majetku

Lze měnit velikost dialogu, avšak jeho minimální rozměry jsou 800x482 bodů.

Při výběru jednotky z comboboxu bude jako poslední hodnota „NOVÁ“ , která umožní uživateli přidání nové jednotky. Položky v comboboxu budou seřazeny vzestupně dle počtu použití. Uživatel si také bude moci vybrat z comboboxu globální název, který již jednou zadal. Položky v comboboxu budou seřazeny vzestupně dle počtu použití. Přidání nového názvu bude probíhat automaticky, když uživatel začne do comboboxu psát. Psaný text se bude porovnávat již s existujícími názvy.

Dialog knihy služeb, režie a oprav

Dialog položky do knihy služeb, režie a oprav

Lze měnit velikost dialogu, avšak jeho minimální rozměry jsou 800x434 bodů.

Uživatel si bude moci vybrat z comboboxu globální název, který již jednou zadal. Položky v comboboxu budou seřazeny vzestupně dle počtu použití. Přidání nového názvu bude probíhat automaticky, když uživatel začne do comboboxu psát. Psaný text se bude porovnávat již s existujícími názvy.

Dialog knihy investičního majetku

Dialog položky do knihy investičního majetku

Lze měnit velikost dialogu, avšak jeho minimální rozměry jsou 800x668 bodů.

 

Dialog knihy dokladů

Doposavad nezaplacené doklady jsou červeně podbarveny, aby se tak jasně upozornilo na existující pohledávku resp. závazek.

Dialog položky do knihy dokladů

Lze měnit velikost dialogu, avšak jeho minimální rozměry jsou 800x668 bodů.

V případě nezaplaceného dokladu je hodnota položky splaceno červeně podbarvena, aby byla na první pohled patrná existence pohledávky resp. závazku. Při výběru jednotky z comboboxu bude jako poslední hodnota „NOVÁ“ , která umožní uživateli přidání nové jednotky. Uživatel si bude moci vybrat z comboboxu popis položky, který již jednou zadal. Položky v comboboxu budou seřazeny vzestupně dle počtu použití. Přidání nového popisu bude probíhat automaticky, když uživatel začne do comboboxu psát. Psaný text se bude porovnávat již s existujícími popisy.

 

Dialog adresáře

Dialog položky do adresáře

Nelze měnit jeho velikost, která je pevně stanovena na 475x500 bodů.

Při výběru kódu banky z comboboxu bude jako poslední hodnota „NOVÝ“ , která umožní uživateli přidání nového kódu banky i s popisem.

 

Dialog pro výpočet DPH

Nelze měnit jeho velikost, která je pevně stanovena na 447x413 bodů.

Uživatel si vybere období, jednotlivé měsíce či zadá datumový rozsah, ve kterém chce spočítat DPH. Tyto tři pole se navzájem automaticky přizpůsobují. V případě zadání necelého období či necelého měsíce bude daný checkbox zaškrtnut šedivým háčkem.

 

Dynamika dialogů

            Základní dynamiku dialogů a jejich vzájemné volání předvádí HTML presentace.

Účetní knihy a přehledy se budou moci vyvolat z roletového menu programu, ze speciálního menu nebo klávesovou zkratkou. A to buď celá kniha nebo přímo dialog pro novou položku do knihy. Z knihy se bude moci vyvolat dialog pro novou položku do dané knihy či dialog pro opravu vybrané položky v knize. Ve většině knih bude možné i přímé vyvolání speciálního menu. Při přidání položky do knihy se v případě potřeby automaticky vyvolá dialog další nové položky do jiné knihy, související s daným záznamem. Například po přidání položky do peněžního deníku s kódem Nákup DM  se automaticky vyvolá dialog pro novou položku knihy DM se všemi vyplněnými položkami, u nichž již byla informace dána do systému v předchozím dialogu. Uživatel tak jen doplní zbývající informace do záznamu o DM. Po vyplnění dialogu položky DM se automaticky vyvolá dialog pro nový doklad. Veškeré známé informace budou opět automaticky vyplněné v daných položkách. V některých položkových dialozích je tlačítko na vyvolání určité knihy pro jednodušší výběr konkrétního záznamu dané knihy. Například všude tam, kde se zadává typ a číslo dokladu si uživatel vyvolá knihu dokladů, ze které si příslušný doklad jednoduše vybere. Nebo při požadavku zadání osoby si konkrétní osobu vybere z adresáře či si rovnou vyvolá dialog pro novou osobu.

HTML presentace

            HTML presentace má za úkol předvedení základní dynamiky dialogů a nápovědu ke sloupcům tabulek v dialozích. Využil jsem tedy možnosti HTML a pomocí obrazových map a JavaScriptu jsem jednotlivým položkám a tlačítkům vdechl život. V této prezentaci si tedy může každý vyzkoušet jednotlivé dialogy s jistými omezeními. Nejdou zde vkládat data či vybírat si konkrétní záznamy. Ne zcela přirozeně se také chová roletové menu programu. V menu si lze vybírat jednotlivé záložky avšak nejde si v záložkách vybrat jednotlivé položky. Po kliknutí levým tlačítkem myši na záložce ZOBRAZIT se aktivuje tato záložka a lze z ní vyvolávat jednotlivé dialogy. Položky se po najetí myši nad ně, ale neoznačí jak je tomu v reálném menu. Pokud je aktivní záložka ZOBRAZIT, tak jsou ostatní záložky nepřístupné. Po kliknutí levým tlačítkem myši kdekoli mimo rozbalenou záložku ZOBRAZIT se tato záložka z neaktivní a zpřístupní se tak ostatní záložky.

            Mimo dynamiky dialogů si může uživatel prohlédnout řešení nápovědy pro jednotlivé sloupce tabulek v dialozích či zobrazení celého obsahu položky, který se nevejde celý zobrazit ve vyhrazeném prostoru. Tato HTML presentace nabízí základní ukázku grafického rozhraní programu JESpMP. Presentaci použiji nejen pro tuto semestrální práci, ale po jejím dalším rozšíření i jako presentaci a nápovědu ke své diplomové práci. Prostředí HTML má tu výhodu, že je nezávislé na platformě a tak si celou presentaci a přehled o funkčnosti celého programu bude moci prohlídnou uživatel na OS Mac, Linux i Windows.