Využíváme naše znalosti hardware
Při zevrubné analýze kódu přebírané aplikace jsme zjistili, že není dostatečně robustní ani škálovatelná na to, aby dokázala obstát v ostrém provozu. Navrhli jsme proto postavit aplikaci znovu na moderních technologiích. Protože ale klient potřeboval pro obchodní účely alespoň nějak funkční verzi, opravili jsme nejprve v existující aplikaci nejpodstatnější chyby tak, aby ukazovala validní data.
Tady jsme zužitkovali naše zkušenosti s integrací security systémů – příčinou části potíží byly totiž i chyby ve firmwaru používaných zařízení. Díky znalosti hardwaru jsme se zvládli s jeho vývojáři efektivně domluvit a celý proces zprovoznění aplikace tak výrazně urychlili.
Cloudová aplikace s malými nároky na provoz
Paralelně jsme začali pracovat na vývoji nové, kompletně cloudové aplikace. Vzhledem ke komplexnosti celého systému jsme velkou pozornost věnovali tvorbě přesné technické a funkční specifikace a jejich transformace do wireframů. Důsledně jsme přitom definovali, co bude umět první verze aplikace, ale při vývoji už jsme měli na paměti i možnosti jejího dalšího rozvoje. Součástí vývoje byly i pravidelné týdenní status meetingy, jež pomáhaly projekt efektivně posouvat kupředu.
Z programátorského pohledu bylo největší výzvou projektu zajištění robustní a škálovatelné komunikace mezi serverem a IoT čidly. S ohledem na požadavky klienta a citlivost německého trhu na bezpečnostní otázky probíhá komunikace prostřednictvím speciálně navrženého zabezpečeného protokolu.
Výsledná aplikace umožňuje zákazníkům Globalworxu vzdáleně monitorovat teplotu na základě dat přijímaných z IoT čidel. Při překročení definované kritické hranice posílá systém upozornění e-mailem či prostřednictvím SMS. Aplikace dále umožňuje jednoduché analýzy a tvorbu reportů. Z technologického hlediska je postavena na Microsoft Azure s využitím serverless a managed služeb tak, abychom se my ani zákazník nemuseli starat o provoz serverů.