Detail předmětu

Tvorba uživatelských rozhraní

FIT-ITUAk. rok: 2019/2020

Rozhraní mezi uživatelem a počítačem, informační propustnost uživatelských rozhraní, různé způsoby implementace rozhraní, historie uživatelských rozhraní, historie nástrojů pro tvorbu aplikací a rozhraní, rozhraní soudobých operačních systémů - Windows, iOS, X-Window a jiných, řízení událostmi, prostředky programování aplikací a uživatelských rozhraní, tradiční, objektový a komponentní model rozhraní, prvky rozhraní - tlačítka, listboxy, editační boxy, apod., vlastnosti základních stavebních bloků uživatelských rozhraní, perspektivy tvorby uživatelských rozhraní.

Výsledky učení předmětu

Studenti porozumí důležitosti uživatelských rozhraní pro efektivní využití počítačů. Naučí se základním principům a struktuře nástrojů pro tvorbu aplikací a jejich uživatelských rozhraní. Seznámí se s historií takových vývojových nástrojů a s jejich předpokládaným vývojem do budoucna. Vyzkouší si vývoj uživatelských rozhraní na sérii příkladů. Naučí se užívat základní stavební bloky rozhraní. Důvěrně se seznámí s vlastnostmi stavebních bloků ve Windows a pochopí rozdíly implementace v X-Window či iOS. Získají potřebné znalosti pro tvorbu aplikací pro reálné nasazení i pro studentské projekty.
Studenti se naučí hledat si partnery do týmu a řešit týmové projekty. Zdokonalí se v praktickém užívání programátorských a ladících nástrojů jakož i v praktickém užívání programovacích jazyků.

Prerekvizity

Základní znalost programování v C/C++.

Doporučená nebo povinná literatura

Dix, A., Finlay, J., Abowd, G., D.,  Beale, R.: Human-Computer Interaction. Prentice Hall, ISBN 0130461091, 2004.
Steve Krug: Don't Make Me Think, Revisited: A Common Sense Approach to Web Usability. New Riders, ISBN 978-0321965516, 2014.
Yu-kai Chou: Actionable Gamification - Beyond Points, Badges, and Leaderboards. Octalysis Media, ISBN 978-1511744041, 2015.
Rubin, J., Chisnell, D., Spool, J.: Handbook of Usability Testing: How to Plan, Design, and Conduct Effective Tests. Wiley, ISBN 978-0470185483, 2008.
Preece J.: Human-Computer Interaction. Addison-Wesley, Wokingham, ISBN 0-201-62769-8, 1995.
Lee Zhi Eng: Hands-On GUI Programming with C++ and Qt5: Build stunning cross-platform applications and widgets with the most powerful GUI framework. Packt Publishing, ISBN 978-1788397827, 2018.
Sheridan Yuen: Mastering Windows Presentation Foundation: Master the art of building modern desktop applications on Windows. Packt Publishing, ISBN 978-1785883002, 2017.

Způsob a kritéria hodnocení

  • Test - až 20 bodů 
  • Bodovaná počítačová cvičení - až 25 bodů
  • Individuální projekty - až 55 bodů

Podmínky zápočtu:
Úspěšná realizace projektu.

Studenti ve své práci musí pracovat samostatně a tvůrčím způsobem. Za porušení této zásady se považuje zejména reverzní inženýrství (disasebmling, dekompilace a podobné postupy), kopírování příkladů řešení, hotových řešení nebo obdobných podkladů, které jsou zveřejněny nebo jsou studentům jinak dostupné (jedná se o kopírování celých řešení nebo jejich tak velkých částí, že jejich okopírování vede k funkčně shodnému nebo velmi obdobnému řešení zadání), společná práce na zadání ve skupinách tak, že její výsledky jsou potom odevzdávány jako řešení jednotlivce (jednotlivců), pokud to není v zadání přímo požadováno nebo povoleno (diskuse ve skupině a/nebo společné řešení dílčích částí je povoleno). 

Studenti se musí zdržet jednání, které je v rozporu s dobrými mravy a které by mohlo vést k obcházení skutečného způsobu "řešení" zadání v duchu těchto zadání jimi samotnými nebo jinými studenty.

Pokud student(i) poruší výše uvedená pravidla, může mu hodnocení být sníženo až na 0 bodů.

Jazyk výuky

čeština, angličtina

Cíl

Naučit se a porozumět důležitosti uživatelských rozhraní pro efektivní využití počítačů. Naučit se základním principům a struktuře nástrojů pro tvorbu aplikací a jejich uživatelských rozhraní. Seznámit se s historií takových vývojových nástrojů a s jejich předpokládaným vývojem do budoucna. Vyzkoušet si vývoj uživatelských rozhraní na sérii příkladů. Naučit se užívat základní stavební bloky rozhraní. Důvěrně se seznámit s vlastnostmi stavebních bloků ve Windows a pochopit rozdíly implementace v X-Window či iOS. Získat potřebné znalosti pro tvorbu aplikací pro reálné nasazení i pro studentské projekty.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

Kontrolovaná výuka zahrnuje individuální projekt, test a bodovaná počítačová cvičení. Test nemá náhradní termín.

Zařazení předmětu ve studijních plánech

  • Program IT-BC-3 bakalářský

    obor BIT , 3. ročník, zimní semestr, 5 kreditů, povinný

  • Program BIT bakalářský, 3. ročník, zimní semestr, 5 kreditů, povinný

  • Program M2A-P magisterský navazující

    obor M-MAI , 1. ročník, zimní semestr, 5 kreditů, volitelný (nepovinný)

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

  1. Organizace předmětu, úvod do problematiky GUI (Beran)
  2. Základy GUI a historie (Beran)
  3. Základní principy realizace GUI pomocí WinAPI (Zemčík)
  4. Webová rozhraní
  5. Návrh GUI, makety a testování (Beran)
  6. Qt + QML (Mlích)
  7. Pokročilé nástroje a knihovny pro Windows (WPF, .NET) 
    (Pluskal)
  8. Gamifikace (Beran)
  9. GUI pro iOS (Hrubý)
  10. GTK (Carlos Soriano Sanchez, Red Hat, v angličtině)
  11. Mobilní platformy (Herout)
  12. UX v praxi (průmysl)
  13. Test, Závěr (Beran)

Cvičení na poč.

12 hod., povinná

Vyučující / Lektor

Osnova

Během cvičení budou řešeny drobné úlohy a cvičení budou průběžně bodována.

Při odevzdání podobného řešení bude může být počet bodů krácen nebo rozdělen mezi podobná řešení. Vyučující může individuálně určit rozdělení bodů.

Projekty

14 hod., povinná

Vyučující / Lektor

Osnova

Individuální zadání projektu - jeden projekt v délce trvání po celou dobu kursu. Cílem projektu je navrhnout, zrealizovat, otestovat a vyhodnotit uživatelské rozhraní. Hodnocení projektu bude zaměřeno na tyto atributy. U projektu do ITU nebude hodnoceno, co všechno a jak dobře program umí, ale jak je rozhraní promyšlené, jak jsou schopnosti programu zpřístupněny uživateli, postup a výsledky testování a vyhodnocení.

Projekty mohou řešit skupiny o 3 osobách. Odevzdání projektu bude probíhat elektronicky a bude doplněno povinnou demonstrací výsledků. Prezentace a demonstrace je povinná a je možná až po elektronickém odevzdání. Vyhodnocení řešení musí popisovat důležité prvky řešení. Do dokumentace se uvádí vše, co se týká vypracování projektu, jeho implementace a testování. 

Odevzdání a prezentace projektu bude v laboratořích cvičení. Veškeré termíny jsou vyvěšeny v IS.

eLearning