Vzory pro HCI a GUI. Miloš Kudělka. Katedra informatiky PřF UP Olomouc



Podobné dokumenty
STANDARD 3. JEDNÁNÍ SE ZÁJEMCEM (ŽADATELEM) O SOCIÁLNÍ SLUŽBU

Odůvodnění veřejné zakázky. Přemístění odbavení cestujících do nového terminálu Jana Kašpara výběr generálního dodavatele stavby

VÝSTUPY Z DOTAZNÍKU SPOKOJENOSTI. Setkání zpracovatelů projektů v rámci programu KLASTRY CzechInvest, Praha, Štěpánská

Odpovědnost správy sítě je vidět, že cíle popř. V koordinaci s klienty - jsou definovány a upřesněny v průběhu procesu.

Výstup. Registrační číslo projektu CZ.01.07/1.1.01/ PaedDr. Vladimír Hůlka, PaedDr. Zdenka Kınigsmarková

Stanovisko komise pro hodnocení dopadů regulace

21 SROVNÁVACÍ LCA ANALÝZA KLASICKÝCH ŽÁROVEK A KOMPAKTNÍCH ZÁŘIVEK

S B Í R K A O B S A H :

Zadávací dokumentace na dodávku výpočetní techniky

Zadávací dokumentace

R O Z S U D E K J M É N E M R E P U B L I K Y

ÚČEL ZADÁVACÍ DOKUMENTACE...

MATERIÁL. pro zasedání Zastupitelstva města Hranic, dne Odbor správy majetku. Smlouva o vzniku společnosti - Cyklobus Bečva

VYSOKÁ ŠKOLA FINANČNÍ A SPRÁVNÍ, o.p.s. Fakulta ekonomických studií katedra řízení podniku. Předmět: ŘÍZENÍ LIDSKÝCH ZDROJŮ (B-RLZ)

Změny dispozic objektu observatoře ČHMÚ v Košeticích

ISA 402 ZVAŽOVANÉ SKUTEČNOSTI TÝKAJÍCÍ SE SUBJEKTŮ VYUŽÍVAJÍCÍCH SLUŽEB SERVISNÍCH ORGANIZACÍ

METODICKÉ DOPORUČENÍ Ministerstva vnitra. ze dne 17. prosince 2015

Charakteristika kurzu BE4

NÚOV Kvalifikační potřeby trhu práce

Průzkum veřejného mínění věcné hodnocení

Kočí, R.: Účelové pozemní komunikace a jejich právní ochrana Leges Praha, 2011

Obec Jino any : , Jino any

Regenerace zahrady MŠ Neděliště

Dotační program vyhlášený obcí Dobříkov. Podpora, rozvoj a prezentace sportu, sportovních a spolkových aktivit v roce Základní ustanovení

4.2 DŮVOD A CÍLE ŘEŠENÍ (VČETN Ě DOLOŽENÍ JEJICH MĚŘITELNOSTI):

1. Stanovení sazby pomocí ISPV (viz Východisko tohoto dokumentu). 2. Alternativní způsob výpočtu sazby mzdy/platu dle kapitoly 2 tohoto dokumentu.

Č.j.: 3R18/04-Ku V Brně dne

Smlouva o ubytování. Článek I Smluvní strany

Nabídka seminářů Finanční gramotnost

VI. Finanční gramotnost šablony klíčových aktivit

RECTE.CZ, s.r.o., Matiční 730/3, Ostrava Moravská Ostrava

Pokyn D Sdělení Ministerstva financí k rozsahu dokumentace způsobu tvorby cen mezi spojenými osobami

VÝZVA K PODÁNÍ CENOVÝCH NABÍDEK

Badatelský řád Archivu České televize v Praze

SMLOUVA O POSKYTOVÁNÍ SOCIÁLNÍ SLUŽBY č.../2013

Odůvodnění veřejné zakázky dle 156 zákona. Odůvodnění účelnosti veřejné zakázky dle 156 odst. 1 písm. a) zákona; 2 Vyhlášky 232/2012 Sb.

Oprava střechy a drenáže, zhotovení a instalace kované mříže kostel Sv. Václava Lažany

Katalog vzdělávání 2015

ROSSMANN PRAVIDLA VÁNOČNÍ SOUTĚŽE

MĚSTSKÁ ČÁST PRAHA 3 Rada městské části U S N E S E N Í

Marketing. Modul 5 Marketingový plán

Euroklíč Zásady podprogramu pro poskytování dotací v roce 2014 (dále jen Zásady podprogramu )

Věc: VEŘEJNÁ ZAKÁZKA MALÉHO ROZSAHU NA STAVEBNÍ PRÁCE PRO AKCI: dodavatele k předložení nejvhodnější nabídky na výše uvedenou zakázku.

VÝZVA. Česká republika-ministerstvo školství, mládeže a tělovýchovy (dále jen zadavatel) se sídlem Karmelitská 7, Praha 1, IČ

ATAZ PRVNÍ ATELIÉR Charakteristika předmětu Hlavní cíl práce Dílčí cíle Požadovaný standard studenta po absolvování předmětu: Obsah Volba zadání

Ovoce do škol Příručka pro žadatele

Česká republika Ministerstvo práce a sociálních věcí Na Poříčním právu 1, Praha 2. vyzývá

PRÁVNICKÉ OSOBY POJEM A KATEGORIZACE

INSPEKČNÍ ZPRÁVA. Střední průmyslová škola, Frýdek-Místek, příspěvková organizace. 28. října 1598, Frýdek-Místek

VÍCEÚČELOVÉHO SPORTOVNÍHO AREÁLU OBCE HŘEBEČ

Veřejnoprávní smlouva o poskytnutí investiční dotace č. 1/2016

Využití interaktivní tabule ve výuce

METODICKÝ POKYN - DEFINICE MALÝCH A STŘEDNÍCH PODNIKŮ

Směrnice pro vedení, vypracování a zveřejňování bakalářských prací na Vysoké škole polytechnické Jihlava

Názory obyvatel na přijatelnost půjček leden 2016

PUBLICITA v OP VK. Seminář pro příjemce v rámci globálních grantů Olomouckého kraje. Olomouc, 20. a 21. dubna 2009

funkční na dual-sim telefonech možnost přesměrovat příchozí hovory možnost nastavení více telefonních čísel pro případ, že je jedno nedostupné

Miroslav Kunt. Srovnávací přehled terminologie archivních standardů ISAD(G), ISAAR(CPF) a české archivní legislativy

Zadávací dokumentace

Univerzitní 2732/8, Plzeň. doc. Dr. RNDr. Miroslavem Holečkem, rektorem IČO:

Pokusné ověřování Hodina pohybu navíc. Často kladené otázky

Zákon o veřejných zakázkách

The University of Plymouth

PRAVIDLA soutěže COOP DOBRÉ RECEPTY Jarní probuzení

Dne obdržel zadavatel tyto dotazy týkající se zadávací dokumentace:

veřejná zakázka na stavební prace s názvem: Sdružená kanalizační přípojka - Město Lázně Bělohrad

Zaměstnání a podnikání, hrubá a čistá mzda.

Modul Řízení objednávek.

1. Orgány ZO jsou voleny z členů ZO. 2. Do orgánů ZO mohou být voleni jen členové ZO starší 18 let.

Autorizovaným techniků se uděluje autorizace podle 5 a 6 autorizačního zákona v těchto oborech a specializacích:

Těhotenský test pro zrakově postižené Tereza Hyková

Novinky verzí SKLADNÍK 4.24 a 4.25

Stanovisko Řídícího/Národního orgánu programů přeshraniční spolupráce Cíle 3 k aktuálním problémům při realizaci těchto programů

Pardubický kraj Komenského náměstí 125, Pardubice SPŠE a VOŠ Pardubice-rekonstrukce elektroinstalace a pomocných slaboproudých sítí

KOMISE EVROPSKÝCH SPOLEČENSTVÍ

ZADÁVACÍ DOKUMENTACE

Fakulta provozně ekonomická. Analýza způsobů financování při pořízení dlouhodobého hmotného majetku z hlediska účetního a daňového

V Černošicích dne Výzva k podání nabídky na veřejnou zakázku malého rozsahu s názvem: Nákup a pokládka koberců OŽÚ.

SMLOUVA O POSKYTNUTÍ ÚČELOVÉ DOTACE Z ROZPOČTU STATUTÁRNÍHO MĚSTA OPAVY. uzavřená dle ust zákona č. 89/2012 Sb., občanského zákoníku

Obsah ÚVOD. Participanti. Nastavení testu. - úvod - participanti - nastavení testu - přehled úkolů testu - soupis problémů a návrh řešení - závěr

Kupní smlouva č., VZ č..

DOMOVNÍ ŘÁD BYTOVÉHO DRUŽSTVA ZÁZVORKOVA 2007, 2008, 2009

ZÁKON. ze dne 30. června o osobním vlastnictví k bytům. Národní shromáždění Československé socialistické republiky se usneslo na tomto zákoně:

HERNÍ PLÁN pro provozování okamžité loterie POMÁHÁME NAŠÍ ZOO - DŽUNGLE

BADATELSKÝ ŘÁD. Čl. 1. Obecná ustanovení

PODMÍNKY ELEKTRONICKÉ AUKCE SPOLEČNOSTI RWE GAS STORAGE, s.r.o. NA NOVOU SKLADOVACÍ KAPACITU

Vyhlášení opakované veřejné soutěže 1/6

Masarykova univerzita Právnická fakulta

PROGRAM PRO POSKYTOVÁNÍ DOTACÍ Z ROZPOČTU KARLOVARSKÉHO KRAJE ODBORU KULTURY, PAMÁTKOVÉ PÉČE, LÁZEŇSTVÍ A CESTOVNÍHO RUCHU

O D B O R O V É S D R U Ž E N Í Ž E L E Z N I Č Á Ř Ů Republiková rada seniorů JEDNACÍ ŘÁD. 1. Úvodní ustanovení

č. 16 / 2011 CELOŽIVOTNÍ VZDĚLÁVÁNÍ V RÁMCI AKREDITOVANÝCH STUDIJNÍCH PROGRAMŮ NA PEDAGOGICKÉ FAKULTĚ OSTRAVSKÉ UNIVERZITY V OSTRAVĚ

Toto rozhodnutí nabylo právní moci dne Č. j. S133/2008/VZ-12160/2008/540/PV V Brně dne 2. července 2008

INFORMATIKA V CHOVECH PRASAT

Upíše-li akcie osoba, jež jedná vlastním jménem, na účet společnosti, platí, že tato osoba upsala akcie na svůj účet.

6. DIDAKTICKÁ JEDNOTKA PREVENCE KONFLIKTŮ, KOMUNIKACE

Jak jednat. se stavebním úřadem. Michal Lalík. e s. stavebnímu zákonu z praxe

MEZINÁRODNÍ AUDITORSKÝ STANDARD ISA 505 EXTERNÍ KONFIRMACE OBSAH

TISK ODBORNÝCH VÝUKOVÝCH TEXTŮ PRO PROJEKT VZDĚLÁVÁNÍ NELÉKAŘŮ DODATEČNÉ INFORMACE Č. 1

Výzva pro předložení nabídek k veřejné zakázce malého rozsahu s názvem Výměna lina

MUZEA V PŘÍRODĚ A LIDOVÁ ARCHITEKTURA STŘEDOČESKÉHO KRAJE

Transkript:

Vzory pro HCI a GUI Miloš Kudělka Katedra informatiky PřF UP Olomouc Abstrakt V oblasti tvorby softwaru se postupně stává naprostou samozřejmostí použití tzv. vzorů, a to především v oblasti návrhu. Vzory vlastně formulují obecný princip, který se dá stručně vyjádřit myšlenkou "... věci se mají dělat tak, jak je úspěšně dělají jiní...". Článek poskytuje základní informace o vzorech v oblastech, o kterých se tak mnoho nemluví. Jedná se o obvyklé postupy při návrhu komunikace člověka s počítačem a při realizaci uživatelského rozhraní. Článek také diskutuje možnost použití těchto vzorů při výuce softwarových inženýrů. 1. Úvod V oblasti softwarového inženýrství existuje v dnešní době mnoho osvědčených zkušeností, které se promítají do více či méně formalizovaných či standardizovaných postupů a nástrojů. Jedním z podstatných a užitečných nástrojů jsou vzory, které jsou používány i v jiných oblastech. Vzory dobře slouží pro více účelů a jejich budoucí nabídka může postihnout i oblasti, ve kterých se dnes nepoužívají. Moje učitelská zkušenost je, že tzv. návrhové vzory mohou pomoci při vývoji podstatným způsobem, protože poskytují především zkušenost s ověřeným řešením a její, do jisté míry, formalizovaný popis. Ten, kdo této zkušenosti porozumí a je ochoten akceptovat ověřené řešení, může velmi urychlit proces návrhu a vývoje a zlepšit použitelnost, flexibilitu a udržovatelnost svého řešení. 2. Co jsou vzory? Každý vzor je pravidlo, které obsahuje tři prvky a vyjadřuje vztah mezi jistou souvislostí, problémem a řešením. Takto jednoduše bývá citován autor pojmu vzor, architekt Christopher Alexander. V praxi je vzor pojmenovaný stručný text, který popisuje náčrt problému a popis jeho obecného řešení v konkrétních souvislostech, přičemž návod řešení pak musí být tak pružný, aby se vzor dal aplikovat opakovaně a aby přitom výsledky nebyly stereotypní. Přitom je důležité, aby skupina vzorů určená pro řešení jisté, účelově zaměřené, skupiny problémů, byla popsána stejnou formou, strukturou, která zajišťuje jednotnou podobu jejich popisu. Snahou je, aby všechny části vzoru byly popsány jednoduše, výstižně a úplně. 3. Co je HCI? Human Computer Interaction. Jedná se o disciplínu zabývající se hodnocením, návrhem a implementací s člověkem komunikujících interaktivních počítačových systémů a o studium důležitých, s tím spojených, jevů. Jedná se o oblast, která má své základy v době prvních osobních počítačů a její šířka a teoretické i praktické výsledky přesahují rámec tohoto článku. V tomto článku je zmiňována proto, že někteří autoři se v ní snaží nalézt vzory (a snad úspěšně). Dlužno podotknout, že opravdoví specialisté se na tyto snahy dívají spíše s nedůvěrou, protože považují formulaci vzorů za mnohdy principiální zjednodušení jejich výsledků. 119

4. Co je GUI? Graphical User Interface. V současném technologickém počítačovém prostředí je to označení pro rozhraní mezi člověkem a počítačem. Slouží tedy pro podporu a zajištění HCI. Grafické uživatelské rozhraní je z pohledu uživatele nejdůležitějším prvkem aplikace a jako s takovým se s ním musí zacházet. Poskytuje-li příliš mnoho ovládacích a informačních prvků, je to stejně špatné, jako když je příliš chudé. Další důležitou vlastností dobře navrženého uživatelského rozhraní je dodržování ergonomických zásad a standardů, které s rozvojem kvality počítačů přispívají ke kvalitě komunikace člověka s počítačem. Většina kompozic a akcí v běžných systémech a aplikacích se dá popsat prostřednictvím vzorů, z nichž některé jsou použitelné obecně a jiné pouze v jistých speciálních souvislostech. 5. Jak to spolu všechno souvisí? Na internetu lze nalézt poměrně velké množství odkazů na tzv. HCI&GUI Patterns a většinou jsou chápány jako jedna skupina vzorů. Členění do menších skupin je pak realizováno na základě logiky jejich použití a každý autor k němu přistupuje různě. V tomto článku jsem se zaměřil na čtyři různě zpracované pohledy čtyř různých autorů na vzory v oblasti HCI a GUI. Jan O. Borchers Jde o rakouského autora, který dokonce o vzorech napsal knihu, zajímavý je ovšem jeho pohled na vzory v HCI, které zformuloval do dvanácti tezí (viz [11]). O některých z nich se zmíním podrobněji. Teze 1: Architektura je blíže HCI než softwarovému inženýrství. Teze 2: Kniha GoF neobsahuje žádné vzory. V těchto tezích autor napadá všeobecně rozšířený názor, že za vzory se dají považovat především vzory z oblasti architektury a návrhu softwarových systémů. Pochybnosti vyplývají především z toho, že Alexander se snažil (a považoval to za jejich základní vlastnost) formulovat vzory tak, aby jim rozuměli uživatelé. Mimo jiné to byl i důvod, proč jeho snahy nebyly většinou architektů kladně přijaty. Zřejmě specialisté nemají rádi, když jim obyčejní lidé rozumí (a mohou tak lépe vyjádřit svůj vztah k řešení). Kniha GoF (viz [2]) z tohoto pohledu neobsahuje vzory, protože tomu, co je v ní napsáno, rozumí pouze skupina vyvolených. Vzory popsané v oblasti HCI naopak popisují způsob komunikaci uživatele s počítačem, což (jak je formulováno v dalších třech vybraných tezích) si lze lépe představit v normální lidské řeči. Teze 7: Vzory pro HCI potřebují empirické důkazy pro opodstatněnost jejich užití. Teze 8: Vzory pro HCI musí být čitelné pro uživatele. Teze 9: Vzory pro HCI je potřeba sebrat návrhářům a dát do rukou uživatelům. Dokonce lze jít ještě dál. Vzory by mohli a měli formulovat vybraní uživatelé, kteří dokážou formulovat jak a proč některé věci s počítačem dělají. Teze 10: Vzory mohou modelovat mnoho aplikačních domén. Teze 11: Použití vzorů v softwarové architektuře, HCI a aplikační doméně projektu může zlepšit komunikaci v interdisciplinárních vývojových týmech. 120

Tyto dvě teze tak trochu vyplývají z předchozích tří. Za uživatele lze v libovolné doméně považovat osoby, které v této doméně pracují a mají zkušenosti s úspěšnými řešeními problémů. Pokud by v této doméně (např. v autorem uváděné hudební improvizaci, ale může to být kdekoli, třeba v lékařství) byly popsány vzory, návrháři počítačových systémů by této doméně lépe porozuměli. Podle mne ovšem zůstává otázkou, zda by na popis domény prostřednictvím vzorů specialisté přistoupili (mohl by nastat efekt zmíněný výše). Následující obrázek vystihuje, jak by potom mohl vypadat efektivně pracující vývojový tým. 5.1 Martijn van Welie Nizozemský autor, který má na svých webových stránkách zveřejněny tři skupiny vzorů - pro web, pro mobilní zařízení a pro jiná zařízení s GUI (např. herní konzoly). Pro kategorizaci vzorů používá tři úrovně, přičemž v první (dolní) a druhé úrovni jsou vzory pokrývající zkušenosti uživatelů a návrhářů (jak řešit typické základní a složitější úlohy), ve třetí (horní) úrovni jsou vzory, které poskytují především způsoby skladby velkých vstupních a výstupních formulářů a jejich skupin sloužící ke splnění byznys cílů systému. Vzory jsou navzájem asociovány shora dolů. Na nejnižší úrovni jsou např. vzory pro přihlášení a základní nastavení, ve střední úrovni např. vzory pro diskuse a novinky, ve třetí úrovni např. vzory pro portálová řešení a elektronický obchod. 121

5.2 Jenifer Tidwell Jedná se o pravděpodobně nejcitovanější autorku vzorů. Nejdříve zpracovala desítky vzorů pro HCI a postupně je přepracovala do skupin označených jako UI Patterns and Techniques. Vzory jsou popsány velice jednoduchým způsobem, jsou zpracovány obecně a nejsou příliš závislé na prostředí (operační systém, internet, desktop). Autorka člení vzory velice přehledně do skupin podle účelu jejich použití, což umožňuje jednoduchou orientaci. Základní skupiny vzorů jsou struktura obsahu (např. přehled a detail), procházení (horní menu), struktura formuláře (diagonální vyváženost), převzetí vstupů od uživatele ( dropdown výběr), zobrazení rozsáhlých dat (střídání barev řádků), příkazy a akce (víceúrovňové undo ), přímá manipulace (jednoduchý výběr). V dalších stručných a výstižných odstavcích si autorka klade jednoduché otázky související s tím, proč a k čemu vzory jsou. Odpovědi, které nabízí, podle mne přesně vystihují to, o čem v tomto článku píšu. Pro začátečníka slouží jako výukový nástroj, později jako inspirace a zpětná reference. Při návrhu uživatelského rozhraní slouží jako slovník v hovoru mezi zadavatelem, uživatelem a vývojářem. Ve vzoru je vždy popsán jeho smysl a důvod proč funguje, každý se na tyto charakteristiky může podívat vlastníma očima (výsledek je pak v detailech různý). 5.3 Ian Graham Tento autor několika knih o softwarovém inženýrství a objektových technologiích napsal knihu [13], která se snaží prostřednictvím vzorů poskytnout metodiku pro tvorbu webových 122

sídel. Kromě této metodiky poskytuje ve velmi stručné a čtivé podobě přehled toho, co bylo do současnosti v této oblasti uděláno, a to včetně popisu ergonomických zásad. Kniha je integračního charakteru a v podstatě neposkytuje žádné nové vzory (vychází především z výše ze zmíněných). Nicméně jako vzory jsou např. popsány a prezentovány i způsoby stanovení cílů projektu (byznys model), dokumentování požadavků ve formě use case (use case model) a testování. V závěru knížky pak autor poskytuje příklady použití metodiky. Závěr Důvodem, proč jsem se snažil nalézt vzory z oblasti tvorby uživatelského rozhraní je především to, že studenty na naší katedře učíme kromě jiného i programování poměrně složitých aplikací a systémů. Podstatu této práce vidíme samozřejmě v realizaci středních a datových vrstev aplikace. Bohužel specialisté (a zřejmě nejen na naší katedře) na uživatelské rozhraní chybí, a proto se při obhajobách studentských prací často dostáváme do situace, kdy zejména v nižších ročnících výsledek práce sice zaslouží uznání za dobře implementované logiky, nicméně systém je téměř nepoužitelný, protože v oblasti uživatelského rozhraní nedodržuje to, co je obvyklé. Při diskusích se studenty pak stojí slovo proti slovu v odpovědi na to co, obě strany považují za obvyklé. Tento problém se samozřejmě dá posunout i do prostředí reálných projektů. Jednoho takového jsem se sám účastnil a obdobné diskuse jsme vedli se zadavatelem. Právě vzory mohou poskytnout pro tyto diskuse slovník a řešení, na které se dá odvolat. Literatura: 1. Alexander, Ch. A Pattern Language. New York. Oxford University Press 1977 2. Gamma, E., Helm, R., Johnson, R., Vlissides, J. Design Patterns Elements of Reusable Object-Oriented Software. Addison-Wesley 1995 3. Coplien, J. O. Software Patterns. AT&T Bell Laboratories 4. Fowler, M. Patterns of Enterprise Application Architecture. Pearson Education 2002 5. Kudělka, M., Sklenář, V. Design Patterns for Programs for Algorithm Demonstration. Sborník konference CBLIS '97 (Computer Based Learning In Science), Leicester 1997 6. Kudělka, M., Sklenář, V. Deskové hry aneb návrhové vzory a výuka OOT. Sborník konference Objekty '97, Praha 1997 7. Kudělka, M., Sklenář, V. Výuka, návrhové vzory a tvorba komponent aneb jak vytvořit deskovou hru. Sborník konference Objekty 2000, Praha 2000 8. Kudělka, M., Mošová, V. Využití pedagogických vzorů ve výuce na VŠ. Sborník konference XX. mezinárodní kolokvium o řízení osvojovacího procesu, Vyškov 2002 9. Kudělka, M., Sklenář, V. Implementace use case pomocí návrhového vzoru Controller. Sborník konference Tvorba Software, Ostrava 2002 10. Kudělka, M., Sklenář, V. Pedagogické vzory ve výuce softwarových inženýrů. Sborník konference Tvorba Software, Ostrava 2003 11. Borchers, J., O. Interaction Design Patterns: Twelve Theses. Zdroj: www.tk.unilinz.ac.at/~jan/ 12. Van Welie, M. Pattern Languages in Interaction Design: Structure and Organization. Zdroj: www.welie.com 13. Tidwell, J. UI Patterns and Techniques. Zdroj: www.mit.edu/~jtidwell 14. Graham, I. A pattern language for web usability. Addison-Wesley 2003 123