Evaluace

Webová aplikace Evaluace byla vyvíjená především pro Filozofickou Fakultu Univerzity Karlovy, kde měla nahradit již několik let používanou podobnou aplikaci.

Představení

Webová aplikace Evaluace slouží na několika fakultách Univerzity Karlovy k hodnocení výuky studenty. Aplikace tak pracuje s celou řadou dat, jež je obsažena v centrálním informačním systému SIS. Jedná se především o informace týkající se vyučovaných předmětů, na které jsou navázané dotazníky pro studenty. Základním kredem aplikace je absolutní anonymita studentů, pokud si nepřejí svou identitu zveřejnit. Aplikace tak neukládá žádná přebytečná data o studentech a veškeré odpovědi v dotazních jsou pečlivě odděleny od studentských uživatelských účtů. Hodntotit totiž mohou pouze studenti dané fakulty. Krom toho aplikace poskytuje celou řadu zobrazení a exportů pro následnou analýzu a vyhodnocení dat výsledků hodnocení. Evaluace ovšem neslouží pouze jako nástroj pro vedení fakult, aby mělo představu o kvalitě výuky. Aplikaci používají i studenti a vyučující, kteří ji mohou využívat jako platformu pro zpětnou vazbu, či databázi k hledání zajímavých předmětů.


Pohled na veřejně přístupný seznam výsledků v aplikaciPohled na veřejně přístupný seznam výsledků v aplikaci

Zadání

Původní aplikace Hodnocení byla zastaralá a bylo nutné provést několik významných úprav, aby ji bylo možné nadále provozovat. Nakonec se ovšem ukázalo, že aplikaci není možné dále modifikovat a bylo rozhodnuto o nové aplikaci. Podobným nedostatkem trpělo uživatelské rozhraní, které bylo v některých částech nepřehledné a neresponzivní.


Ukázka rozhraní emailového klienta v aplikaciUkázka rozhraní emailového klienta v aplikaci

Řešení

Přestože původním záměrem bylo aplikaci pouze aktualizovat, došlo nakonec k rozhodnutí ji vytvořit celou znovu od počátku. Jedním z důvodů byl fakt, že původní kód byl velmi špatně zdokumentovaný a bylo tak velmi náročné jej upravit natož nadále rozvíjet. Nová aplikace byla postavena na frameworku Laravel. Díky této volbě tak byla zajištěna spolehlivá základní vrstva, jež umožňuje snadné aktualizace, ať už v případě bezpečnostních záplat nebo nových funkcí. Namísto renderování stránek v engine Blade, který Laravel poskytuje bylo rozhodnuto o vytvoření API a oddělení této části aplikace od té uživatelské. Tím je také umožněno v případě nutnosti aplikaci dále škálovat, nicméně doposud to nutné nebylo, a to i přesto, že ji používá přes 7000 tisíc uživatelů.

Front-end, tedy uživatelská část, byla kompletně vytvořena ve frameworku Vue.js. Díky této volbě bylo možné uživatelské rozhraní rozdělit na řadu komponent, jež je možné recyklovat a snadno upravovat v případě potřeby. Zároveň se také usnadnila implementace řady užitečných funkcí, jako je například auto-save nebo real-time sledování dat. Barevné schéma aplikace vychází z původní modro-bílé, a to především proto, že uživatelé byly na toto schéma zvyklí a Filozofická fakulta v té době měla tmavě modrou jako svou základní barvu.

Krom zachování a vylepšení původních funkcí došlo také celé řadě rozšíření, ať už se jedná o generování závěrečných zpráv nebo různých soutěží. Díky modulárnímu nastavení je také možné upravit celou řadu parametrů v aplikaci pro potřeby každé fakulty zvlášť.