Im Laufe meiner Evaluierung von verschiedenen Low-Code Plattformen in Hinsicht auf deren Stärken und Schwächen kommt häufig die Frage der Offline Verfügbarkeit von mobilen Applikationen auf.

Die Daten einer Webapplikation liegen in der Regel auf einem Server, deshalb Ist eine Verbindung mit dem Sever für das Arbeiten mit der Anwendung unerlässlich. Solange ich mich im Büro aufhalte, ist dies meist kein Problem. Oft bin ich jedoch unterwegs bei Kunden und habe nicht immer eine Internetverbindung oder es gibt Probleme, eine VPN Verbindung aufzubauen. In diesen Fällen wäre es vorteilhaft, wenn mir der entsprechende Teil der Anwendung samt Daten auf meinem Endgerät auch ohne Netzwerkverbindung zur Verfügung steht. Hier entsteht die Frage: Welche Low-Code Plattform eignet sich zur einfachen und schnellen Umsetzung dieses Vorhabens?

Mit Oracle Application Express ist es leider nicht möglich, Offline Verfügbarkeit zu realisieren. Der Grund dafür ist die zwingend notwendige Oracle Datenbank, welche nicht lokal gespeichert bzw. bearbeitet werden kann. VisionX kann gleichermaßen nicht mit Offline Verfügbarkeit für mobile Endgeräte dienen.

Service Studio, die IDE von OutSystems, bietet mir die Möglichkeit, einen lokalen Speicher in eine mobile Applikation einzubinden. Dieser lokale SQLite basierte Speicher spiegelt die Datenbank in einer simplifizierten Version wieder. Der Sinn besteht darin, vorgenommene Änderungen bei einer fehlenden Internetverbindung vorerst lokal zu speichern. Durch ein bei einer wiederhergestellten Internetverbindung aktiviertes Event, wird der lokale Speicher mit der Datenbank synchronisiert. Dabei entsteht jedoch ein neues Problem: Wer gewinnt, wenn die selben offline Daten durch mehrere Endgeräte bearbeitet werden?

Hierbei kann je nach ausgewählter Regel entschieden werden, was mit den Änderungen geschieht, wenn diese sich auf denselben Datensatz beziehen. Es lässt sich z.B. eine „Last Write Wins“-Regel anwenden, bei welcher der zuletzt getätigte Eintrag übernommen wird. Prozesse wie diesen zu definieren, wird jedoch schnell sehr umfangreich, weshalb die Entscheidung der richtigen Datenverarbeitung dem eigenen Projekt angepasst werden muss.

 

 
https://youtu.be/gkMs6DbSdJw

Jetzt teilen auf:

Jetzt kommentieren