Popis


Cílem práce je vytvořit aplikaci, která umožní vytvořit rozsazení studentů v učebně na základě modelu místnosti. Aplikace bude podporovat dvě uživatelské role -  nepřihlášený a přihlášený uživatel. Rozdíl ve funkcionalitě bude jen ten, že přihlášený uživatel si může veškeré nahrané modely a vypočítaná rozsazení uložit a opět načíst.

Projekt je výsledkem semestrálních prací, které spolu úzce souvisí, předmětů BI-WT1 a BI-WT2, vyučující se na ČVUT Fakultě informačních technologií, obor Web a multimédia.


Uživatelské role

Aplikace podporuje dvě uživatelské role - nepřihlášený a přihlášený uživatel. Rozdíl ve funkcionalitě je ten, že přihlášený uživatel si může veškeré nahrané modely a vypočítaná rozsazení uložit a opět načíst.

  1. Nepřihlášený uživatel
  2. Přihlášený uživatel - autentizuje se proti lokální databázi uživatelů (v tomto případě proti MySQL)

Funkční požadavky

Aplikace musí splňovat následující funkční požadavky:

Autentizace uživatele
Přihlášení uživatele
Odhlášení uživatele
Model místnosti
Vytvoření místnosti
Vytvoření modelu
Načtení ze souboru
CSV
XML
Zadání v UI
Zobrazení modelu místnosti
Editace modelu
Smazání modelu
Výpočet rozsazení podle zvoleného modelu - web. UI i API
Výběr modelu
Zobrazení průběhu výpočtu
Sledování průběhu (progress bar - pouze UI)
Krokování výpočtu
Zobrazení výsledku
Zobrazení výsledku
Volitelně stažení výsledku na zařízení uživatele
CSV
XML
JSON
Volitelně uložení výsledku v aplikaci na serveru

Nefunkční požadavky

Aplikace musí využívat a být postavena na těchto technologií:

  • PHP
  • Framework Symfony 2
  • MySQL databáze
  • webové uživatelské rozhraní (HTML, CSS, JS)
  • Rest API (XML, JSON)
  • nasazení aplikace na server webdev.fit.cvut.cz