UC.01 Zobrazení návodu k použití aplikace additional Uživatel se chce seznámit s popisem možností aplikace CdG uživatel v
jakékoliv roli je zobrazena jakákoliv stránka CdG uživatel klikne na položku „Návod“ v liště menu položka „Návod“ v liště
menu je zvýrazněna zobrazí se stránka „Návod“ se čtyřmi oddíly stránka „Návod“ je defaultně zobrazovanou stránkou po spuštění
aplikace
UC.02 Zobrazení celkového přehledu additional Kdokoliv si chce prohlédnout celkový přehled, což jsou agregovaná data všech
studentů a všech jejich odevzdání CdG uživatel v jakékoliv roli inicializace databáze ještě neproběhla - není načten seznam
studentů (UC.04) a seznam odevzdaných úloh (UC.05) je zobrazena jakákoliv stránka CdG uživatel klikne na položku „Celkově“
v liště menu položka „Celkově“ v liště menu je zvýrazněna zobrazí se stránka „Celkový přehled“ s tabulkou a s histogramem
hodin V databázi ještě nejsou načtena žádná data, tj. nebyly provedeny UC.04 a UC.05 na stránce „Celkově“ se místo tabulky
zobrazí hlášení „Dosud nejsou k dispozici žádná data“
UC.03 Registrace učitele key Učitel chce provést svoji registraci (tj. první přihlášení) do aplikace CdG Nepřihlášený učitel
již byl registrován (opakovaný UC.03) je zobrazena jakákoliv stránka CdG uživatel je v aktivní roli „Nepřihlášený“ uživatel
klikne na položku menu „Nepřihlášený“ objeví se rozbalovací submenu s položkou „Registrace“ uživatel klikne na položku menu
„Registrace“ objeví se modální okno „Registrujte se podle své role“ s aktivní záložkou „Student“ uživatel klikne na záložku
„Učitel“ uživatel zadá svoje nové heslo do vstupního pole uživatel stiskne tlačítko „Zaregistrovat“ v menu vlevo se objeví
role „Učitel“ v liště menu budou zobrazeny položky „Návod“, „Celkově“, „Studenti“, „A00B1234P“, „Nastavení“ a ikona „Logout“
v liště menu je zvýrazněna položka „Celkově“ je zobrazena stránka „Celkový přehled“ s textem „Dosud nejsou k dispozici žádná
data“ učitel nezadal žádné heslo po stisku tlačítka „Zaregistrovat“ je na stejné stránce zobrazena nápověda „Vyplňte prosím
toto pole“ učitel již byl dříve registrován je zobrazeno modální okno „Varovné hlášení“ s textem „Registrace se nezdařila.
Byla již provedena dříve.“ po uzavření modálního okna zůstává zobrazeno menu pro aktivního uživatele „Nepřihlášený“ úspěšná
registrace učitele má stejný výsledek jako úspěšné přihlášení - viz UC.07 po úspěšné registraci by měl „Učitel“ ihned pokračovat
v UC.04
UC.04 Inicializace seznamu studentů key Učitel zadá celkový počet úloh v semestru a načte soubor se seznamem zapsaných studentů
do databáze. Soubor je v CSV formátu a je již uložen v adresáři VstupniData. CdG Učitel je zobrazena jakákoliv stránka CdG
uživatel je v aktivní roli „Učitel“ uživatel klikne na položku menu „Nastavení“ zobrazí se stránka „Servisní činnosti“ s aktivní
záložkou „Aktualizace úloh“ uživatel klikne na záložku „Počáteční inicializace“ uživatel zadá počet všech úloh do vstupního
pole uživatel vybere z výběrového seznamu soubor „studenti-debug.csv“ uživatel stiskne tlačítko „Inicializovat“ v menu vlevo
zůstává role „Učitel“ zobrazí se modální okno „Úspěšné zpracování požadavku“ s textem „Soubor byl načten. Počet záznamů, které
byly uloženy do DB: 5“ v liště menu je zvýrazněna položka „Nastavení“ zůstane zobrazena stránka „Servisní činnosti“ s aktivní
záložkou „Aktualizace úloh“ po případném kliknutí na záložku „Počáteční inicializace“ se navíc zobrazí text „Seznam všech
studentů již byl načten. Pokud jej chcete změnit, resetujte nejdříve DB.“ po případném kliknutí na záložku „Počáteční inicializace“
jsou všechny tři ovládací prvky „disabled“ v liště menu je položka „Celkově“ doplněna údajem o počtu studentů na stránkách
„Celkový přehled“, „Přehled jednotlivých studentů“ a „A00B1234P“ zůstává zobrazen text „Dosud nejsou k dispozici žádná data“
zadaný počet úloh je menší než 1 po stisku tlačítka „Inicializovat“ je na stejné stránce zobrazena nápověda „Hodnota musí
být větší nebo rovna 1“ zadaný počet úloh je větší než 99 po stisku tlačítka „Inicializovat“ je na stejné stránce zobrazena
nápověda „Hodnota musí být menší nebo rovna 99“ neexistuje žádný vstupní soubor ve výběrovém seznamu je jediná položka „V
adresari nebyl nalezen zadny soubor *.csv“ po případném stisku tlačítka „Inicializovat“ je zobrazeno modální okno „Varovné
hlášení“ s textem „V adresari nebyl nalezen zadny soubor *.csv: tento soubor neexistuje.“ po uzavření modálního okna zůstává
zobrazena stránka „Servisní činnosti“ s aktivní záložkou „Aktualizace úloh“ Čtený soubor se seznamem studentů vznikl exportem
ze STAGu. Tím je zaručeno, že je jeho obsah správný a úplný. Stačí provést jen kontrolu, zda nebyl podvržen soubor s útočným
obsahem. Není třeba kontrolovat jednotlivé položky souboru. Soubor je v kódování Window-1250. Inicializaci lze provést pouze
jednou. Pokud má být opakována, je nutné před tím resetovat databázi - viz UC.13. Po úspěšné inicializaci by měl „Učitel“
ihned pokračovat v UC.05.
UC.05 Aktualizace provedených commitů key Učitel načte do databáze soubor se seznamem provedených commitů. Soubor je v CSV
formátu a je již uložen v adresáři VstupniData. CdG Učitel inicializace databáze ještě neproběhla - není načten seznam studentů
(UC.04) je zobrazena jakákoliv stránka CdG uživatel je v aktivní roli „Učitel“ uživatel klikne na položku menu „Nastavení“
zobrazí se stránka „Servisní činnosti“ s aktivní záložkou „Aktualizace úloh“ uživatel vybere z výběrového seznamu soubor „ulohy-debug.csv“
uživatel stiskne tlačítko „Načíst soubor“ v menu vlevo zůstává role „Učitel“ zobrazí se modální okno „Úspěšné zpracování požadavku“
s textem „Soubor byl načten. Počet záznamů, které byly uloženy do DB: 22“ v liště menu je zvýrazněna položka „Nastavení“ zůstane
zobrazena stránka „Servisní činnosti“ s aktivní záložkou „Aktualizace úloh“ na stránce „Celkový přehled“ je zobrazena kompletní
tabulka a histogram hodin na stránce „Celkový přehled“ je v nápovědě nadpisu zobrazen text „ke dni 2021-03-17“ na stránce
„Přehled jednotlivých studentů“ je zobrazena kompletní tabulka položka menu „osobní_číslo“ se změnila na „A10B0001P“ na osobní
stránce studenta „A10B0001P“ je zobrazena kompletní tabulka a histogram hodin neexistuje žádný vstupní soubor ve výběrovém
seznamu je jediná položka „V adresari nebyl nalezen zadny soubor *.csv“ po případném stisku tlačítka „Načíst soubor“ je zobrazeno
modální okno „Varovné hlášení“ s textem „V adresari nebyl nalezen zadny soubor *.csv: tento soubor neexistuje.“ po uzavření
modálního okna zůstává zobrazena stránka „Servisní činnosti“ s aktivní záložkou „Aktualizace úloh“ osobní čísla v načítaném
souboru neodpovídají osobním číslům seznamu studentů načteného v UC.04 po stisku tlačítka „Načíst soubor“ je zobrazeno modální
okno „Chybové hlášení“ s textem „toto osobní číslo nebylo nalezeno. Je načten správný soubor se jmény studentů?“ v databázi
není provedena žádná změna po uzavření modálního okna zůstává zobrazena stránka „Servisní činnosti“ s aktivní záložkou „Aktualizace
úloh“ Čtený soubor se seznamem odevzdaných úloh vznikl exportem z GitLabu. Tím je zaručeno, že je jeho obsah správný a úplný.
Stačí provést jen kontrolu, zda nebyl podvržen soubor s útočným obsahem. Není třeba kontrolovat jednotlivé položky souboru.
Soubor je v kódování Window-1250. Aktualizaci lze provést libovolně krát.
UC.06 Odhlášení additional Uživatel v aktivní roli Učitel nebo Student se chce odhlásit CdG přihlášený uživatel - Učitel nebo
Student učitel ještě není registrován (UC.03) inicializace databáze ještě neproběhla - není načten seznam studentů (UC.04)
student ještě není registrován pod svým osobním číslem (UC.08) je zobrazena jakákoliv stránka CdG uživatel je v aktivní roli
„Učitel“ nebo „Student“ uživatel klikne na položku menu (ikonu) „Logout“ v menu vlevo se objeví role „Nepřihlášený“ v liště
menu budou zobrazeny položky „Návod“ a „Celkově“ v liště menu je zvýrazněna položka „Návod“ je zobrazena stránka „Návod“
UC.07 Přihlášení učitele key Již registrovaný učitel se chce přihlásit do aplikace CdG Nepřihlášený učitel ještě není registrován
(UC.03) je zobrazena jakákoliv stránka CdG uživatel je v aktivní roli „Nepřihlášený“ uživatel klikne na položku menu „Nepřihlášený“
objeví se rozbalovací submenu s položkou „Login“ uživatel klikne na položku menu „Login“ objeví se modální okno „Přihlaste
se podle své role“ s aktivní záložkou „Student“ uživatel klikne na záložku „Učitel“ uživatel zadá svoje existující heslo do
vstupního pole uživatel stiskne tlačítko „Přihlásit“ v menu vlevo se objeví role „Učitel“ v liště menu budou zobrazeny položky
„Návod“, „Celkově“, „Studenti“, „Nastavení“ a ikona „Logout“ hodnota položky „A00B1234P“ závisí na tom, zda již proběhly UC.04
a UC.05 v liště menu je zvýrazněna položka „Celkově“ je zobrazena stránka „Celkový přehled“. Obsah stránky závisí na tom,
zda již proběhly UC.04 a UC.05 učitel nezadal žádné heslo po stisku tlačítka „Přihlásit“ je na stejné stránce zobrazena nápověda
„Vyplňte prosím toto pole“ učitel ještě nebyl registrován po stisku tlačítka „Přihlásit“ je zobrazeno modální okno „Varovné
hlášení“ s textem „Přihlášení se nezdařilo. Zadané heslo není správné.“ po uzavření modálního okna zůstává zobrazeno menu
pro aktivního uživatele „Nepřihlášený“ učitel zadal nesprávné heslo po stisku tlačítka „Přihlásit“ je zobrazeno modální okno
„Varovné hlášení“ s textem „Přihlášení se nezdařilo. Zadané heslo není správné.“ po uzavření modálního okna zůstává zobrazeno
menu pro aktivního uživatele „Nepřihlášený“
UC.08 Registrace studenta additional Student chce provést svoji registraci (tj. první přihlášení) do aplikace CdG Nepřihlášený
inicializace databáze ještě neproběhla - není načten seznam studentů (UC.04) student již byl pod svým osobním číslem registrován
(opakovaný UC.08) je zobrazena jakákoliv stránka CdG uživatel je v aktivní roli „Nepřihlášený“ uživatel klikne na položku
menu „Nepřihlášený“ objeví se rozbalovací submenu s položkou „Registrace“ uživatel klikne na položku menu „Registrace“ objeví
se modální okno „Registrujte se podle své role“ s aktivní záložkou „Student“ uživatel vybere z výběrového seznamu svoje osobní
číslo uživatel zadá svoje nové heslo do vstupního pole uživatel stiskne tlačítko „Zaregistrovat“ v menu vlevo se objeví role
„Student“ v liště menu budou zobrazeny položky „Návod“, „Celkově“ a ikona „Logout“ hodnota položky „A00B1234P“ bude nahrazena
aktuálním osobním číslem přihlášeného studenta v liště menu je zvýrazněna položka aktuálního osobního čísla je zobrazena osobní
stránka studenta; její obsah závisí na tom, zda již proběhl UC.05 studentovo osobní číslo se již neobjevuje v seznamu osobních
čísel pro registraci („Nepřihlášený“ / „Registrace“) studentovo osobní číslo se začne objevovat v seznamu osobních čísel pro
přihlášení („Nepřihlášený“ / „Login“) ještě nebyl načten seznam studentů - viz UC.04 ve výběrovém seznamu osobních čísel se
nezobrazí studentovo osobní číslo student musí počkat, až učitel provede UC.04 student již byl dříve registrován ve výběrovém
seznamu osobních čísel se nezobrazí studentovo osobní číslo v nápovědě výběrového seznamu je text „Nevidíte-li zde svoje osobní
číslo, tak se pravděpodobně již pod ním přihlásil někdo jiný.“ student pak může požádat (např. emailem) učitele, aby jeho
heslo resetoval - viz UC.12 student nezvolil žádné osobní číslo, ale zadal nové heslo po stisku tlačítka „Zaregistrovat“ je
zobrazeno modální okno „Varovné hlášení“ s textem „Nebylo zvoleno žádné osobní číslo.“ po uzavření modálního okna zůstává
zobrazeno menu pro aktivního uživatele „Nepřihlášený“ student nezadal žádné heslo po stisku tlačítka „Zaregistrovat“ je na
stejné stránce zobrazena nápověda „Vyplňte prosím toto pole“ úspěšná registrace studenta má stejný výsledek jako úspěšné přihlášení
- viz UC.09
UC.09 Přihlášení studenta additional Již registrovaný student se chce přihlásit do aplikace CdG Nepřihlášený inicializace
databáze ještě neproběhla - není načten seznam studentů (UC.04) student ještě není registrován pod svým osobním číslem (UC.08)
je zobrazena jakákoliv stránka CdG uživatel je v aktivní roli „Nepřihlášený“ uživatel klikne na položku menu „Nepřihlášený“
objeví se rozbalovací submenu s položkou „Login“ uživatel klikne na položku menu „Login“ objeví se modální okno „Přihlaste
se podle své role“ s aktivní záložkou „Student“ uživatel vybere z výběrového seznamu svoje osobní číslo uživatel zadá svoje
existující heslo do vstupního pole uživatel stiskne tlačítko „Přihlásit“ v menu vlevo se objeví role „Student“ v liště menu
budou zobrazeny položky „Návod“, „Celkově“ a ikona „Logout“ hodnota položky „osobní_číslo“ bude nahrazena aktuálním osobním
číslem přihlášeného studenta v liště menu je zvýrazněna položka aktuálního osobního čísla je zobrazena osobní stránka studenta;
její obsah závisí na tom, zda již proběhl UC.05 student ještě nebyl registrován ve výběrovém seznamu osobních čísel se nezobrazí
studentovo osobní číslo student musí nejdříve provést UC.08 student nezvolil žádné osobní číslo, ale zadal existující heslo
po stisku tlačítka „Přihlásit“ je zobrazeno modální okno „Varovné hlášení“ s textem „Nebylo zvoleno žádné osobní číslo.“ po
uzavření modálního okna zůstává zobrazeno menu pro aktivního uživatele „Nepřihlášený“ student nezadal žádné heslo po stisku
tlačítka „Přihlásit“ je na stejné stránce zobrazena nápověda „Vyplňte prosím toto pole“ student zvolil osobní číslo, ale zadal
chybné heslo po stisku tlačítka „Přihlásit“ je zobrazeno modální okno „Varovné hlášení“ s textem „Přihlášení se nezdařilo.
Zadané heslo není správné.“ po uzavření modálního okna zůstává zobrazeno menu pro aktivního uživatele „Nepřihlášený“
UC.10 Přehled všech studentů key Učitel si chce prohlédnout seznam výsledků všech studentů CdG Učitel inicializace databáze
ještě neproběhla - není načten seznam studentů (UC.04) a seznam odevzdaných úloh (UC.05) je zobrazena jakákoliv stránka CdG
uživatel je v aktivní roli „Učitel“ uživatel klikne na položku „Studenti“ v liště menu položka „Studenti“ v liště menu je
zvýrazněna zobrazí se stránka „Přehled všech studentů“ s tabulkou v tabulce jsou proklikávací osobní čísla, kde klik provede
UC.12 řádky v tabulce lze řadit podle každého sloupce vzestupně i sestupně úspěšné odevzdání úlohy je zvýrazněno zeleným podbarvením,
neúspěšné červeným V databázi ještě nejsou načtena žádná data, tj. nebyly provedeny UC.04 a UC.05 na stránce „Přehled všech
studentů“ se místo tabulky zobrazí hlášení „Dosud nejsou k dispozici žádná data“
UC.11 Detailní výsledky studenta key Učitel nebo student si chce prohlédnout detailní výsledky studenta CdG přihlášený uživatel
- Učitel nebo Student inicializace databáze ještě neproběhla - není načten seznam studentů (UC.04) a seznam odevzdaných úloh
(UC.05) je zobrazena jakákoliv stránka CdG uživatel je v aktivní roli „Učitel“ nebo „Student“ uživatel klikne na položku „osobní_číslo“
v liště menu položka „osobní_číslo“ v liště menu je zvýrazněna zobrazí se stránka „Podrobný přehled“ s progress barem, tabulkou
a s histogram hodin V databázi ještě nejsou načtena žádná data, tj. nebyly provedeny UC.04 a UC.05 na stránce „Přehled všech
studentů“ se místo tabulky zobrazí hlášení „Dosud nejsou k dispozici žádná data“ student dosud ani jednou neodevzdal žádnou
úlohu tabulka je vyplněna hodnotami N/A a histogram se vůbec nezobrazuje
UC.12 Reset hesla studenta additional Učitel resetuje heslo studenta - většinou na studentovu žádost. CdG Učitel inicializace
databáze ještě neproběhla - není načten seznam studentů (UC.04) student ještě není registrován (UC.08) je zobrazena jakákoliv
stránka CdG uživatel je v aktivní roli „Učitel“ uživatel klikne na položku menu „Nastavení“ zobrazí se stránka „Servisní činnosti“
s aktivní záložkou „Aktualizace úloh“ uživatel klikne na záložku „Reset hesla studenta“ uživatel vybere z výběrového seznamu
osobní číslo studenta uživatel stiskne tlačítko „Resetovat heslo“ v menu vlevo zůstává role „Učitel“ zobrazí se modální okno
„Úspěšné zpracování požadavku“ s textem „Reset hesla studenta proběhl.“ v liště menu je zvýrazněna položka „Nastavení“ zůstane
zobrazena stránka „Servisní činnosti“ s aktivní záložkou „Aktualizace úloh“ po případném kliknutí na záložku „Reset hesla
studenta“ se resetované osobní číslo již neobjevuje v seznamu osobních čísel studentovo osobní číslo se již neobjevuje v seznamu
osobních čísel pro přihlášení („Nepřihlášený“ / „Login“) studentovo osobní číslo se začne objevovat v seznamu osobních čísel
pro registraci („Nepřihlášený“ / „Registrace“) student ještě nebyl registrován ve výběrovém seznamu osobních čísel se nezobrazí
studentovo osobní číslo učitel nezvolil žádné osobní číslo po stisku tlačítka „Resetovat heslo“ je zobrazeno modální okno
„Varovné hlášení“ s textem „Nebylo zvoleno žádné osobní číslo.“ po uzavření modálního okna zůstává zobrazena stránka „Nastavení“
s aktivní záložkou „Aktualizace úloh“
UC.13 Změna hesla učitele nebo studenta key Již přihlášený učitel nebo student si chce změnit heslo CdG přihlášený uživatel
- Učitel nebo Student učitel ještě není registrován (UC.03) inicializace databáze ještě neproběhla - není načten seznam studentů
(UC.04) student ještě není registrován pod svým osobním číslem (UC.08) je zobrazena jakákoliv stránka CdG uživatel je v aktivní
roli „Učitel“ nebo „Student“ uživatel klikne na položku menu „Učitel“ nebo „Student“ objeví se rozbalovací submenu s položkou
„Změna hesla“ uživatel klikne na položku submenu „Změna hesla“ objeví se modální okno „Změna hesla pro roli“ „Učitel“ nebo
„Student“ uživatel zadá svoje nové heslo do vstupního pole uživatel stiskne tlačítko „Změnit heslo“ zobrazí se modální okno
s informací „Změna hesla proběhla.“
UC.14 Reset databáze additional Učitel resetuje databázi. To znamená, že se vymažou a následně nenávratně zruší všechny tabulky.
Reset ale prakticky způsobí jen ztrátu hesel, protože data o studentech a o odevzdaných úlohách se jen načítají ze souborů
a v databázi se nijak nemodifikují. Pro restartu DB se všechny tabulky opět založí. CdG Učitel učitel ještě není registrován
(UC.03) je zobrazena jakákoliv stránka CdG uživatel je v aktivní roli „Učitel“ uživatel klikne na položku menu „Nastavení“
zobrazí se stránka „Servisní činnosti“ s aktivní záložkou „Aktualizace úloh“ uživatel klikne na záložku „Reset databáze“ uživatel
stiskne tlačítko „Resetovat databázi“ objeví se modální okno „Nebezpečná destruktivní akce“ uživatel stiskne tlačítko „Ano,
opravdu resetovat DB“ v menu vlevo je aktivní role „Nepřihlášený“ aplikace je ve stavu jako při prvním spuštění, tj. v databázi
jsou založeny prázdné tabulky