Architektura aplikace PD
Informační systém PROTANK DYNAMICS
IS PD představuje integrované řešení spojující webovou aplikaci, mobilního klienta a telemetrická zařízení, specializované na podporu procesů v odpadovém hospodářství a správě komunikací.
Webová aplikace
Platforma PROTANK DYNAMICS vyvíjena jako distribuovaná aplikace založená na architektuře mikroslužeb (microservices). Tento přístup umožňuje lepší škálovatelnost, údržbu a nezávislý vývoj jednotlivých částí systému. Jednotlivé komponenty (autentizační služba, API gateway, výpočtové služby, reportovací modul atd.) komunikují přes REST API a event bus (RabbitMQ). Data jsou uchovávána v relačních i NoSQL databázích, každá služba má vlastní datovou odpovědnost.
Celý systém se dá provozovat v Cloudu dodavatele, nebo on premise na infrastruktuře zákazníka a je škálovatelný horizontálně pomocí Kubernetes. Nasazení probíhá pomocí CI/CD pipeline v Azure DevOps, s napojením na logování, alerting a monitoring pomocí Elastic platformy a Grafany.
Pro uživatele je systém dostupný jako webová aplikace bez nutnosti instalace dalšího podpůrného softwaru. Podporovány jsou všechny webové prohlížeče využívající jádro Chromium (Google Chrome, Microsoft Edge...). Aplikace je provozovatelná i na dalších prohlížečích, ale není zaručena 100% funkčnost.
Mobilní aplikace
Mobilní aplikace je vyvíjena v jazyce Java pro platformu Android, s podporou od verze 12 (API 31) a výše. Aplikace slouží jako klientská komponenta systému PD pro práci v terénu, zejména pro záznam a potvrzování úkolů, sběr dat (např. přes Fotoaparát, Bluetooth nebo NFC, pokud je relevantní), navigaci a komunikaci s dispečinkem.
Aplikace komunikuje s backendovou částí systému prostřednictvím REST API zabezpečeného pomocí JWT tokenu (OAuth2). Data se synchronizují v reálném čase nebo asynchronně v závislosti na dostupnosti připojení. Architektura mobilní aplikace podporuje offline režim, který umožňuje pokračovat v práci i bez datového připojení – s následnou synchronizací po obnovení konektivity.
Uživatelské rozhraní je optimalizováno pro použití v terénních podmínkách – s důrazem na jednoduchost ovládání, čitelnost a rychlý přístup k často používaným funkcím.
Autorizace/Autentizace
Přístup do systému
O přístup do systému PD je nutno požádat správce systému, který založí nový uživatelský účet. Při prvním přihlášení je uživatel vyzván ke změně hesla a může si upravit svůj profil.
Přihlašování
Přihlášení probíhá prostřednictvím přihlašovací obrazovky, kde uživatel zadá své jméno a heslo. Systém podporuje jak lokální autentizaci, tak autentizaci přes Active Directory (AD). Volitelně lze systém integrovat s identitní infrastrukturou zákazníka (např. pomocí Single Sign-On / IDM).
Zapomenuté heslo
V případě zapomenutého hesla musí uživatel požádat o reset hesla prostřednictvím správce.
Odhlášení
Po ukončení práce v systému se doporučuje provést odhlášení. Neodhlášený uživatel může být po určité době automaticky odhlášen.
Oprávnění a role
Uživatelé jsou zařazováni do uživatelských skupin, které definují přístupová práva v systému. Jeden uživatel může být členem více skupin – v takovém případě se jeho oprávnění sčítají. Systém obvykle rozlišuje role jako administrátor, obchodník, dispečer pravidelného svozu, fakturant atd.
Zabezpečení
Celý systém je provozován výhradně přes šifrovaný protokol HTTPS pro zajištění bezpečné komunikace mezi klientem a serverem.
Jazykové mutace systému
Aplikace podporuje lokalizaci do různých jazyků. Standardně je aplikace k dispozici v českém nebo slovenském jazyce.