Dobrodružná cesta za hledáním univerzálního uživatelského rozhraní

Příchod prvního grafického uživatelského rozhraní v podobě Apple Macintosh před více než třiceti lety znamenal revoluci pro celý IT svět. Grafické rozhraní bylo zcelá zásadní inovací, která zbourala sterotypy do té doby značně omezené interakce s počítačem. Příkazy byly zadávány pomocí děrných štítků, v pozdějších dobách pak s využitím příkazového řádku. O pojmech jako jsou „uživatelská spokojenost“, „použitelnost“ či dokonce „design“ ještě v těchto dobách nemohla být vůbec řeč. Jak vypadá situace dnes?

Ambiciózní Microsoft Bob se ukázal jako slepá vývojová cesta

Hlavním důvodem zavedení grafického rozhraní byla tehdy hlavně snaha zpřístupnit svět IT široké veřejnosti, ne pouze hrstce erudovaných odborníků. Od té doby uplynulo hodně vody. Grafická uživatelská rozhraní v té či oné podobě nás dnes prakticky pronásledují na každém kroku a tak není divu, že si bez nich práci na počítači již ani neumíme vůbec představit. Z této perspektivy byl původní záměr více než naplněn.

V době vzniku prvních grafických uživatelských rozhraní začaly vznikat také první datové sítě, první propojené aplikace a první databáze. Každá z těchto komponent s sebou přinesla nové požadavky a potřeby reprezentace jimi zpracovávaných dat, z čehož se začaly formovat první požadavky na uživatelské rozhraní.

Multimédia vstupují do hry

Postupem času se k čistě textovým informacím navíc přidávaly zvukové poznámky, grafické soubory, videa, atd. V tomto výčtu bychom mohli pokračovat ještě dlouho a stejně by se nám nepodařilo zachytit všechny druhy souborů, s nimiž uživatel dnes musí pracovat.

Jednotliví uživatelé se tomuto trendu v průběhu času snadno přizpůsobili. Místo textového editoru, jenž umožňoval pouhé zaznamenání jednotlivých znaků a uložení do jednoduchého textového dokumentu nyní potřebujeme aplikace, které umí text formátovat podle námi nastavených stylů, měnit jeho barvu, přidávat do textu obrázky a další podobné drobnosti. Místo jedné spuštěné aplikace jich najednou můžeme mít otevřen prakticky neomezený počet. Není již nutné být v jednom okamžiku pouze na jedné webové stránce, ale klidně jich můžeme otevřít libovolný počet.

Jakou úlohu zde hraje návrh samotných aplikací

První počítačová myš

Zamysleme se nad těmito změnami našich uživatelských preferencí z pohledu designu samotných aplikací. Od strohého příkazového řádku jsme najednou přešli k barevným lištám plným ikonek a popisků. Myš nahradila klávesnici v roli navigátora v počítači. Není již potřeba napsat přesný tvar příkazu, stačí kliknout na správné místo na obrazovce. Tato potřeba zobrazit obrovské množství informací přehledně, efektivně, dostupně, na jednom místě, a v jednom okně aplikace, dala vzniknout řadě specializovaných profesí a odborníků.

Není již důležitý pouhý fakt, že aplikace umí vykonat nějakou činnost. Zákazník se dnes dívá na to, jak snadno lze tuto akci vykonat (v angličtině toto popisuje pojem „usability“), a především jaký má pocit při ovládání aplikace. Zda-li mu například nepřijde zmatená a nepřehledná nebo dokonce příliš složitá na pochopení (problémy této skupiny spadají do oblasti „user experience“).

Ani tento přístup zaměřený na reprezentaci dat však nevydržel věčně a nám se tak rýsuje zcela jiný problém, jenž IT obor naplno zásahne v blízké době. Dnešní uživatel totiž přesouvá svou pozornost od pouhé reprezentace informací k jejich skutečné konzumaci. Máme kolem sebe tolik zdrojů informací a dat, jejichž množství navíc každý den exponenciálně roste. Úkolem informačních systémů a počítačů obecně je nejen pomáhat s filtrováním a tříděním nových dat, ale také jejich zobrazení do co nejefektivnějších a nejpoužitelnějších struktur a nabídek tak, aby uživatel vždy intuitivně a bez zaváhání našel to, co právě v daný okamžik nejvíce potřebuje.

Nejvyšší nároky klade tento posun v myšlení samozřejmě na firmy, které software přímo vyvíjí. Pozornost jejich vedení tak už není zaměřená pouze na samotnou funkční stránku aplikace, ale do vývojového procesu se zapojují týmy designerů a analytiků. Provádějí se sociologické studie mezi budoucími klienty s dotazy, jaké uživatelské rozhraní by si přáli, či co by se na tom stávajícím dalo zlepšit. Dokonce se implementují poznatky z oborů jako je třeba psychologie. Toto vše dělají firmy s jediným cílem – uspět na trhu.

Váš produkt může mít skvělé vlastnosti a může být rychlejší než aplikace konkurence. Nebude-li se však budoucím uživatelům s Vaším rozhraním dobře pracovat, aplikaci si nekoupí.

Mobilní platformy

Do komplikovaného světa uživatelských rozhraní navíc před nedávnem vstoupil nový fenomén, jenž celou situaci opět ztížil. Řeč je samozřejmě o tabletech, mobilních telefonech a obecně jakémkoli kapesním přenosném zařízení. Prvním vyloženě úspěšným produktem v této oblasti byl dozajista Apple iPhone. Bylo to právě jednoduché, přívětivé, a u všech aplikací podobné uživatelské rozhraní, které zajistilo tomuto telefonu nehynoucí slávu, jež přetrvává do dnešní doby v podobě nových verzí tohoto zařízení a tabletů od stejné firmy.

Nokia N9, první a nejspíše zatím poslední Meego telefon na trhu

Kromě platformy iOS, používané společností Apple, lze na trhu nalézt také celou řadu zařízení se zcela jinými operačními systémy. Jmenovitě jde například o velice rozšířený Android od Google, Blackberry od RIM, webOS od HP, Symbian, Bada, Meego, a další. Každá z těchto platforem má nejen zcela odlišný design samotného uživatelského prostředí či logiku ovládání (typickým příkladem může být tlačítko „Zpět“ na Androidu, které u iPhone zcela chybí). Především je však nutné při vývoji aplikací pro tyto platformy používat jiný programovací jazyk, jiné nástroje (SDK) a často i jiné programátory. V některých případech je dokonce potřeba design aplikace upravit pro potřeby jiné platformy do takové podoby, v níž má s tou původní již pramálo společného.

Všechny tyto požadavky, limity a omezení mají za následek jedinou věc – vysoké náklady na vývoj a často velice dlouhé dodací lhůty. Pro tento problém nicméně existuje jiné, elegantnější řešení. A tím je vývoj s pomocí technologií, jež se starají o komunikaci mezi platformou a aplikací a tvoří tedy jakousi mezivrstvu. Tato vrstva sama hlídá, zda aplikace běží na iOS nebo na Androidu a podle toho upraví své chování. Samotná aplikace se o tyto věci nemusí vůbec zajímat a používá stále stejné metody například pro získání obrázku z fotoaparátu, načtení aktuálních GPS souřadnic či práci se souborovým systémem zařízení.

Pokud napíšeme naši aplikaci tímto způsobem, lze její kód použít pro všechny podporované platformy bez nutnosti jakýchkoli změn a navíc bude vypadat úplně stejně. Takovou technologií je třeba PhoneGap. Aplikace nad ním je možné vyvíjet pomocí jednoduchého HTML/CSS/Javascriptu, ideálně však s využitím nějakého frameworku, který nám ušetří velkou spoustu práce. Jedním z nejlepších je například DOJO toolkit a jeho dojox.mobile knihovny.

Někdy příště si můžeme ukázat, jak by měla taková tvorba konkrétní aplikace s ohledem na její uživatele vypadat.

Exit mobile version