Dokument vize » Historie » Revize 21
« Předchozí |
Revize 21/24
(rozdíl)
| Další »
Lukáš Moučka, 2021-04-06 11:54
Dokument vize¶
Stakeholders¶
- zadavatel: Ing. Michal Kepka, Ph.D. (mkepka@kgm.zcu.cz)
- technický konzultant: Ing. Lukáš Černý (luccerny@ntis.zcu.cz)
- mentor: Ing. Petr Pícha (ppicha@ntis.zcu.cz)
- administrátor: Ing. Luboš Matějka, Ph.D. (lmatejka@kiv.zcu.cz)
- členové týmu: Štepán Červenka, Jakub Hlaváč, Martin Lácha, Lukáš Moučka
- uživatelé: NTIS – projekt SensLog: solution for sensors and VGI, veřejnost a farmři, odborná veřejnost
Zadaní¶
NTIS je výzkumné centrum na Fakultě aplikovaných věd Západočeské univerzity v Plzni. Výzkumný tým vyvíjí API SensLog, které poskytuje komplexní funkce pro správu různých senzorů (vlhkost, teplota atd.). Zadáním pro náš vývojový tým je vytvoření webové aplikace, která bude zobrazovat data z jednotlivých senzorů pomocí grafů v rámci zvolené knihovny. Aplikace musí obsahovat administraci pro správu senzorů a přístup pro uživatele, aby mohli sledovat data ze svých senzorů.
Primární cíle¶
Hlavním cílem je vytvořit webovou aplikaci splňující zmíněné požadavky v rámci zadání a popisu projektu, viz O projektu. V současné chvíli je vizualizace dat také zprostředkovávána pomocí webové aplikace. Aplikace však není pod správou NTISu a její případné modifikace nejsou příliš operativní. Dalším problémem jsou implementované knihovny pro vizualizaci dat ze senzorů, protože nekorektně zobrazují data zpožděná v čase (data přijatá se zpožděním).
Požadavky na aplikaci¶
- webová aplikace s administrativním přístupem pro správu jednotlivých senzorů
- uživatelský přístup pro zobrazení dat z omezené množiny senzorů
- vizualizace dat ze senzorů
Stack aplikace¶
- Angular/Angular CLI 11.2.3
- HTML
- CSS (preprocesor SASS/SCSS)
Vizualizace dat¶
- data ze senzorů budou vizualizovaná v rámci vlastní webové aplikace používající framework Bootstrap
- samotná vizualizace dat bude realizovaná pomocí knihovny Vega nebo d3.js – finální výběr jedné z nich bude závislý na jejich analýze
Využívaná API¶
- SensLog v1 – využití pro interní procesy jako je přihlášení, registrace uživatele, administrátorská správe senzorů apod.
- SensLog Lite v2 – získání dat v úsporném (komprimovaném) formátu
- OGC SensorThingsAPI standard – endpointy pro veřejně dostupné informace
Rizika¶
Nejsme schopni ovlivnit kvalitu dat získávaných ze senzorů. Pokud např. přijdou data zpožděná v čase, tak v ideálním případě jejich korekci provede příslušná knihovna pro vizualizaci. V opačném případě bude nutné data předzpracovat a až poté je vizualizovat. Dalším rizikem je změna formátu zasílaných dat z API. Nicméně při správném návrhu aplikace by neměl být problém tyto modifikace provést i na této straně. V neposlední řadě je to velké množství dat.
Produkční prostředí¶
Responzivní webová aplikace bude s největší pravděpodbností nasazena na virtuálním serveru KIV FAV ZČU. Jako staging server pro prezentaci aktuálně odvedené práce bude sloužit server na CIV ZČU, který si budeme spravovat sami pomocí této webové aplikace: https://nuada.zcu.cz/. Na tomto serveru bude vždy deploy aktuální stabilní verze dané iterace – zadavatel a technický konzultant se budou moci na aplikaci podívat bez potřeby instalace dalších závislostí.
Diagram aplikace¶
Diagram znázorňuje využití jednotlivých API. Po přihlášení do aplikace získáme roli admina nebo uživatele. V rámci administrátorského účtu je využíváno hlavně API SensLog v1, které poskytuje interní funkcionality. Uživatelé budou využívat API SensLog Lite v2, které jim bude poskytovat data o senzorech v komprimovaném tvaru. Uživatelům bez autorizace bude OGC SensorThingsAPI standard poskytovat veřejně dostupné informace o senzorech.
Aktualizováno uživatelem Lukáš Moučka před více než 3 roky(ů) · 21 revizí