egoo.health

egoo.health to wieloplatformowa aplikacja mobilna, która umożliwia użytkownikom bezpośredni dostęp do funkcjonalności Egoo – specjalistycznej platformy służącej do badania markerów biologicznych. Jesteśmy dumni, że mogliśmy być częścią tego projektu i dlatego chcemy zaprezentować Wam jak Scythe Studio przyczyniło się do jego sukcesu.

Technologie

egoo.health – medyczna aplikacja mobilna

egoo.health to wieloplatformowa aplikacja mobilna, która umożliwia użytkownikom bezpośredni dostęp do funkcjonalności Egoo – specjalistycznej platformy służącej do badania markerów biologicznych. Jesteśmy dumni, że mogliśmy być częścią tego projektu i dlatego chcemy zaprezentować Wam jak Scythe Studio przyczyniło się do jego sukcesu.

Poznaj Egoo

Zanim przejdziemy do szczegółów, przyjrzyjmy się bliżej idei całego projektu. Egoo to pierwsza na świecie platforma do samodzielnego wykonywania testów molekularnych i immunodiagnostycznych, która obejmuje większość metodologii badań, zapewniając krótki czas analizy wyników. Wszystko to zamknięte w niewielkiej obudowie, z jednoczesnym zachowaniem klinicznej jakości.

egoo_health

 

Brzmi zawile, prawda? Przełóżmy to zatem na prosty język: Egoo to urządzenie, które pozwala w wiarygodny i przyjazny dla użytkownika sposób wykonać kilka, różnych pomiarów parametrów krwi, takich jak Hemoglobina/CRP, umożliwiając także przeprowadzenie testów na obecność chorób, w tym, między innymi, SARS-CoV-2. Egoo zostało stworzone przez QLife Holding – grupę medyczną, której celem jest zrewolucjonizowanie rynku biomarkerów klinicznych, a także testów na obecność wirusów.

Urządzenia Egoo były już z powodzeniem wykorzystywane w branży sportowej. Dzięki funkcjonalności i rzetelności testów na COVID-19 pozwoliły one na bezpieczne przeprowadzenie Mistrzostw Europy w Piłce Ręcznej Kobiet 2020 oraz meczów piłkarskich Superligi 2020 w Danii. Egoo zostało również zauważone przez świat medyczny: Med-Tech Outlook wyróżnił Egoo jako najlepszego dostawcę rozwiązań diagnostycznych in vitro 2021 roku.

Obowiązki Scythe Studio

Urządzenia Egoo nie posiadają ekranu dotykowego – wszelka interakcja z użytkownikiem odbywa się za pomocą aplikacji mobilnej. Do niedawna aplikacja ta była dostępna jedynie dla profesjonalistów z branży medycznej. Celem projektu było stworzenie nowej aplikacji, która udostępniłaby funkcjonalności platformy Egoo użytkownikom domowym. Tutaj do akcji wkroczyło Scythe Studio.

Aplikacja dla użytkowników domowych miała być mobilną, wieloplatformową aplikacją – nazwano ją egoo.health. Jej zadaniem było umożliwienie użytkownikom domowym dostępu do wszystkich funkcjonalności Egoo, a także przechowywanie i wyświetlanie wyników testów na ich smartfonach. Wszystko to za pomocą przykuwającego uwagę, a zarazem przejrzystego i minimalistycznego interfejsu użytkownika.

Nasze podejście

Uwzględniając określone wymagania bez wahania wybraliśmy framework Qt jako główną technologię tego projektu, był on bowiem trafnym rozwiązaniem, które spełniało wszelkie ustalone oczekiwania klienta. W celu zapewnienia jak najlepszej wydajności i przenośności aplikacji, wykorzystaliśmy język C++ przy tworzeniu jej logiki. W ten sposób mogliśmy ponownie wykorzystać istniejące już biblioteki C++, które były używane przez dotychczasową aplikację, jednocześnie rozszerzając ich funkcjonalność o rozwiązania oparte na Qt.

Interfejs aplikacji został stworzony przy użyciu modułu Qt Quick oraz języka Qml. Jako, że Qml jest językiem deklaratywnym, to byliśmy w stanie szybko i prosto dostarczyć bogaty, przykuwający uwagę wygląd aplikacji. Jeżeli jednak zależy nam na jej wysokiej wydajności, to nie można zapomnieć o optymalizacji front-endu. Qml został stworzony przy użyciu języka C++ – działa on natywnie na wielu urządzeniach docelowych, jednocześnie wykorzystując akcelerację sprzętową. Ma to zauważalne znaczenie w przypadkach, gdy zasoby są ograniczone – np. w systemach wbudowanych. Język Qml wykorzystuje również kompilacje Just-In-Time i Ahead-Of-Time.

Wyzwania i osiągnięcia

Pierwszym wyzwaniem tego projektu było zapewnienie kompatybilności logiki biznesowej pomiędzy bibliotekami wykorzystującymi „czysty” język C++, a klasami frameworka Qt. Rozwiązanie to było wymagane w celu utrzymania wsparcia dla aplikacji niekorzystających z Qt, a używających wspomnianych bibliotek. W takich wypadkach najlepszym podejściem jest stworzenie swego rodzaju kontenerów-klas Qt, które zawierają w sobie inne klasy C++. W tego typu podejściu dobrą praktyką jest też jednoczesne wzbogacenie takich klas o system sygnałów/slotów, a także umożliwiając ekspozycję ich funkcjonalności do języka Qml.

Kolejnym wyzwaniem była funkcja skanowania kodów QR z kapsuł Egoo. Problemem był bowiem brak sprawdzonego sposobu, który umożliwiałby implementacje takiej funkcjonalności w języku Qml. Zdecydowaliśmy, że najlepszym pomysłem będzie stworzenie własnego rozwiązania wykorzystującego bibliotekę Zxing. Moduł ten stał się początkiem biblioteki SCodes, którą możecie teraz znaleźć na naszym githubie.

Efekty projektu

Dzięki gotowym rozwiązaniom frameworka Qt czas wprowadzenia na rynek został znacząco skrócony. Korzystając z wieloplatformowości możliwe było wydanie aplikacji zarówno na Androida, jak i iOS przy użyciu jednej bazy kodu. Nie było więc potrzeby angażowania dodatkowego zespołu programistów, ani zmiany używanej technologii, aby dostarczyć aplikację na te dwa różne systemy operacyjne. Warto tutaj również wspomnieć, że wykorzystując wieloplatformowe rozwiązanie nie poświęciliśmy wydajności na rzecz liczby dostępnych platform – aplikacje stworzone w Qt zapewniają niemal natywną wydajność.

Ponowne wykorzystanie, ale też i ulepszenie współdzielonej biblioteki C++ pozytywnie wpłynęło na działanie aplikacji egoo.health, ale też i na inne, istniejące projekty. Dzięki temu zaoszczędzono znaczące ilości czasu przy tworzeniu egoo.health, jednocześnie umożliwiając innym projektom czerpać z wprowadzonych zmian. Taka biblioteka C++ umożliwia również łatwego zintegrowania funkcjonalności egoo.health z przyszłymi aplikacjami.

Opinia klienta

Posłuchajmy co Ask, nasz bezpośredni kontakt w QLife, ma do powiedzenia na temat naszej współpracy nad egoo.health:

„Moje słowa kluczowe opisujące Scythe Studio to:

  1. Cierpliwość do nieustrukturyzowanego, chaotycznego klienta.
  2. Dumna własność obszarów specjalizacji
  3. Szybki wgląd w wiedzę o domenie
  4. Mówiąc szczerze – godni zaufania”