Jak wyglada w Escola proces pracy nad aplikacją oraz pracy z klientem na przykładzie aplikacji lokalizacyjnej?

Daniel Parzych

07-05-2021
Jak wyglada w Escola proces pracy nad aplikacją oraz pracy z klientem na przykładzie aplikacji lokalizacyjnej?

Opis aplikacji

Aplikacja pozwala na śledzenie pozycji techników, którzy mają w danym czasie odwiedzić wyznaczoną przez managerów listę punktów. Aplikacja również pozwala na wgląd w pozycje urządzeń IoT, które razem z towarem klienta znajdują się na paletach lub w kontenerach.

W aplikacji występują dwa rodzaje użytkowników – manager i technik. Każdy z nich ma odrębne zadania i odrębne funkcjonalności w aplikacji. 

Technik i jego zadania

Technik do aplikacji loguje się za pomocą QR kodu, który wygenerowany jest z systemu klienta służącego do zarządzania urządzeniami IoT. Technik przypisany jest do konkretnego urządzenia. Po zalogowaniu do aplikacji technik widzi przydzielone mu danego dnia punkty do odwiedzenia. Do punktów dopisany jest również oczekiwany, graniczny czas dotarcia. Technik zatem ma za zadanie dotrzeć do wyznaczonego miejsca w określonym czasie, wykonać usługę i skierować się do następnego punktu. Aplikacja, sczytując lokalizację, informuje system o dotarciu technika na miejsce. W systemie punkt „odznacza” się jako odwiedzony i zapisuje godzinę dotarcia.

Urządzenie IoT i jego rola

Najważniejszym dla klienta było monitorowanie pozycji technika. Klient wykorzystywał również urządzenia IoT do monitorowania długich, międzynarodowych podróży swojego towaru. W takim przypadku urządzenie IoT umieszczane było na palecie lub w kontenerze i przypisywane do konkretnego zamówienia. Dzięki niskiemu zużyciu baterii urządzania IoT mogą raportować dane miesiącami (przy odpowiednich ustawieniach). Odpowiednie wersje urządzeń IoT pozwalają na monitorowanie np. poziomu wilgotności, akceleracji, pozycji horyzontalnej bądź wertykalnej, temperatury czy ciśnienia. Aplikacja technika mimikowała urządzenia IoT.

Manager i jego możliwości

Manager w systemie do zarządzania widzi ich pozycje oraz wyznaczone na dany dzień punkty do odwiedzenia. Urządzenie IoT na bieżąco przesyła lokalizację techników, a manager może ją zobaczyć na mapie.

Manager ma dostęp do statystyk np. jaka ilość punktów została odwiedzona zgodnie z wyznaczonym czasem. W panelu managera widoczne są również statusy odwiedzonych punktów: odwiedzony, nieodwiedzony, spóźnienie.

Cele i wyzwania projektu

Klient rozpoczynał z nami współpracę, mając problem, jeden przykładowy ekran z oczekiwaniami oraz bardzo mało czasu na wdrożenie, bo zaledwie 6 tygodni.

Klient oczekiwał również, że zintegrujemy aplikację z istniejącym systemem IoT do śledzenia zasobów, co prowadziło do nietypowych wymagań:

1. Konieczności wykorzystanie protokołu MQTT, który miał zapewnić płynną integrację z istniejącymi wewnętrznymi systemami klienta

2. Ciągłym zbieraniem lokalizacji oraz przesyłaniem jej na serwer w interwałach 6-7 minutowych (na podobieństwo urządzeń IoT), czemu nie sprzyjają trendy i rozwiązania oszczędzania energii i ochrony prywatności w najnowszych wersjach systemów operacyjnych telefonów

3. Korzystanie równolegle z GraphQL oraz REST API do obsłużenia całej komunikacji z systemami klienta.

Jaki problem klienta rozwiązuje aplikacja?

Jak było:

Dane o liczbie odwiedzonych punktów oraz czasy dotarcia techników na miejsce były deklaratywne. Monitoring terminowości nie był możliwy. Manager nie wiedział, gdzie dokładnie znajdują się technicy i ile punktów odwiedzili.

Niemożliwe było wykorzystanie istniejącego systemu monitorowania zasobów do monitorowania zasobów ludzkich.

Jak jest:

Klient dzięki wprowadzeniu aplikacji mobilnej wie dokładnie, gdzie są technicy, ile punktów odwiedzili, czy punkty odwiedzane są zgodnie z harmonogramem. Dzięki temu może informować swoich klientów o tym, że jest punktualny i wyznaczać terminy z bardzo wysoką dokładnością i przewidywalnością.

Klient zyskał możliwość śledzenia zasobów ludzkich oraz alternatywę dla urządzeń IoT w postaci aplikacji mobilnej.

Proces

Naszą współpracę rozpoczęliśmy od warsztatów projektowych, które pozwoliły nam poznać problem klienta. Poznawaliśmy też specyfikę branży i oczekiwania względem aplikacji. Uzyskaliśmy również informacje na temat rozwiązań, z których klient korzysta, a które mają być zintegrowane z aplikacją.

W efekcie warsztatów powstały widoki aplikacji mobilnej zgodne z identyfikacją wizualną firmy klienta. Zostały opracowane również user stories oraz architektura aplikacji. Projekt realizowany był w metodologii agile, dzięki czemu został sprawnie wdrożony oraz w ostatniej chwili możliwe było poszerzenie scope o nowe wymaganie klienta.

Do stworzenia aplikacji został wyznaczony dedykowany zespół: Project manager, UX/UI designer x2, Developer Android x3, Tester. Po zakończeniu prac developerskich i testów klient otrzymał aplikację mobilną zintegrowaną z posiadanym system do śledzenia zasobów.

Technologia

Komunikacja z serwerem odbywa się za pomocą AWS IoT Core za pośrednictwem protokołu MQTT, zaś API składa się z:

1. GraphQL (odczyt danych z systemu)

2. REST API (zapis danych do systemu)

Obsługiwany system operacyjny: Android 8.1 i wyższy.

Podsumowanie

Stworzona przez nas aplikacja rozwiązała problem klienta. Dzięki naszemu oprogramowaniu klient ma wiedzę o lokalizacji swoich techników oraz punktach przez nich odwiedzanych. Dzięki aplikacji może obserwować terminowość techników oraz poprawiać niedociągnięcia, które zauważy dzięki statystykom.

Aplikacja przyczynia się zatem do uporządkowania procesów biznesowych klienta, większej kontroli nad zasobami oraz uniezależnia klienta od urządzeń IoT, wprowadzając alternatywę w postaci aplikacji na system Android. Aplikacja oraz sposób jej wykonania realizują wiele celów biznesowych klienta bez konieczności modyfikacji rozbudowanych wewnętrznych systemów klienta.

 

Tagi:

Komentarze:

Comments

comments