Název:

Tvorba uživatelských rozhraní

Zkratka:ITU
Ak.rok:2018/2019
Semestr:zimní
Studijní plán:
ProgramOborRočníkPovinnost
IT-BC-3BIT3.povinný
Vyučovací jazyk:čeština
Kredity:5 kreditů
Ukončení:klasifikovaný zápočet
Výuka:
hod./sempřednáškasem./cvič.lab. cvič.poč. cvič.jiná
Rozsah:26001214
 zkouškatestycvičenílaboratořeostatní
Body:02025055
Garant:Beran Vítězslav, Ing., Ph.D. (UPGM)
Zástupce garanta:Zemčík Pavel, prof. Dr. Ing. (UPGM)
Přednášející:Beran Vítězslav, Ing., Ph.D. (UPGM)
Herout Adam, prof. Ing., Ph.D. (UPGM)
Hrubý Martin, Ing., Ph.D. (UITS)
Mlích Jozef, Ing. (UPGM)
Pluskal Jan, Ing. (UIFS)
Zemčík Pavel, prof. Dr. Ing. (UPGM)
Cvičící:Bambušek Daniel, Ing. (UPGM)
Beran Vítězslav, Ing., Ph.D. (UPGM)
Dobeš Petr, Ing. (UPGM)
Chlubna Tomáš, Ing. (UPGM)
Nosko Svetozár, Ing. (UPGM)
Švec Tomáš, Ing. (UPGM)
Fakulta:Fakulta informačních technologií VUT v Brně
Pracoviště:Ústav počítačové grafiky a multimédií FIT VUT v Brně
Rozvrh:
DenVýukaTýdenMístnostOdDoPSKSk-odSk-do
Popoč. labvýukyN20408:0009:503BIT
Popoč. labvýukyN20508:0009:503BIT
Popoč. labvýukyN20408:0009:502BIAxxxx
Popoč. labvýukyN20408:0009:502BIBxxxx
Popoč. labvýukyN20410:0011:503BIT
Popoč. labvýukyN20510:0011:503BIT
Popoč. labvýukyN20410:0011:502BIAxxxx
Popoč. labvýukyN20410:0011:502BIBxxxx
Popoč. labvýukyN20412:0013:503BIT
Popoč. labvýukyN20512:0013:503BIT
Popoč. labvýukyN20412:0013:502BIAxxxx
Popoč. labvýukyN20412:0013:502BIBxxxx
Popoč. labvýukyN20414:0015:503BIT
Popoč. labvýukyN20514:0015:503BIT
Popoč. labvýukyN20414:0015:502BIAxxxx
Popoč. labvýukyN20414:0015:502BIBxxxx
Popoč. labvýukyN20416:0017:503BIT
Popoč. labvýukyN20516:0017:503BIT
Popoč. labvýukyN20416:0017:502BIAxxxx
Popoč. labvýukyN20416:0017:502BIBxxxx
Útpoč. labvýukyN20408:0009:503BIT
Útpoč. labvýukyN20408:0009:502BIAxxxx
Útpoč. labvýukyN20408:0009:502BIBxxxx
Útpoč. labvýukyN20508:0009:503BIT
Útpoč. labvýukyN20410:0011:503BIT
Útpoč. labvýukyN20510:0011:503BIT
Útpoč. labvýukyN20410:0011:502BIAxxxx
Útpoč. labvýukyN20410:0011:502BIBxxxx
Útpoč. labvýukyN20412:0013:503BIT
Útpoč. labvýukyN20512:0013:503BIT
Útpoč. labvýukyN20412:0013:502BIAxxxx
Útpoč. labvýukyN20412:0013:502BIBxxxx
Útpoč. labvýukyN20414:0015:503BIT
Útpoč. labvýukyN20514:0015:503BIT
Útpoč. labvýukyN20414:0015:502BIAxxxx
Útpoč. labvýukyN20414:0015:502BIBxxxx
Strezervace ITUvýukyN20408:0011:50
Strezervace ITUvýukyN20508:0011:50
StpřednáškavýukyD10512:0013:503BIT
StpřednáškavýukyD020712:0013:503BIT
StpřednáškavýukyD10512:0013:502BIAxxxx
StpřednáškavýukyD10512:0013:502BIBxxxx
 
Cíle předmětu:
  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.
Anotace:
  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í.
Požadované prerekvizitní znalosti a dovednosti:
  Základní znalost programování v C/C++.
Získané dovednosti, znalosti a kompetence z 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.
Dovednosti, znalosti a kompetence obecné:
  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ů.
Proč je předmět vyučován:
  Grafické uživatelské rozhraní (GUI) je klíčovým prvkem zpřístupnění počítačů lidem. V dnešní době jsou možnosti počítačů nedozírné a jediným limitem je způsob, jak lidé mohou výpočetní sílu těchto strojů využít, jak se stroji komunikovat. GUI jsou dnes nejběžnější a zatím nejefektivnější způsob, jak mohou lidé s počítači komunikovat. Předmět ITU učí, jak takové GUI s využitím moderních technologií vytvořit.
Osnova přednášek:
 
  1. Úvod do předmětu a GUI (organizace, úvod)
  2. Návrh GUI a testování (podklady)
  3. Základní principy, programy, vstupy a dialogové boxy ve Windows (Základní principyDialogy,  Vstup,  Dialog demo C++Builder5/6)
  4. Pokročilé nástroje a knihovny pro Windows (WPF a .NET, příklad)
  5. Qt (prezentacepříklady)
  6. QML (prezentaceukázka)
  7. Webová rozhraní (prezentace)
  8. GUI pro iOS (prezentace)
  9. GTK (Carlos Soriano Sanchez, Red Hat, v angličtině)
  10. Mobilní platformy
  11. Web 2.0 (Web2 GUI)
  12. Gamifikace (přednáška)
  13. TEST, Závěr

Témata přednášek jsou orientační a mohou být v průběhu semestru aktualizována. 

Osnova počítačových cvičení:
 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ů.

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ů.

Osnova ostatní - projekty, práce:
 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 jednotlivci nebo skupiny nejvýše 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 Vašeho řešení. Do dokumentace se uvádí vše, co se týká vypracování projektu, jeho implementace a testování.

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í projektu být sníženo až na 0 bodů.

Odevzdání a prezentace projektu bude v laboratořích cvičení. K obhajobě je potřeba se přihlásit pomocí termínu Obhajoba projektu. Tým přihlašuje k obhajobě pouze jeden jeho člen. Veškeré termíny jsou vyvěšeny v IS.

Literatura referenční:
 
  • 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.
Literatura studijní:
 
  • 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.
Kontrolovaná výuka:
  Kontrolovaná výuka zahrnuje individuální projekt, test a bodovaná počítačová cvičení. Test nemá náhradní termín.
Průběžná kontrola studia:
  
  • 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
 

Vaše IPv4 adresa: 54.196.161.252
Přepnout na IPv6 spojení

DNSSEC [dnssec]