Rapid Application Development für künftige Mobilsysteme

Während die Digitalisierung der Umwelt immer neue Innovationen schafft, kämpfen viele Mobilanwender noch mit den Schattenseiten der mobilen Infrastruktur. Wieso übersieht der wachsende Entwicklungsschub diesen Rückstand?

Know-how  –  0 Kommentare
Rapid Application Development für künftige Mobilsysteme

Der US-amerikanische Psychologe Abraham Maslow (1907-1970) erlangte für seine Bedürfnispyramide Weltruhm. In diesem streng hierarchischen Modell bilden die physischen Grundbedürfnisse des Menschen den Sockel der Pyramide. An der Spitze steht die Selbstverwirklichung. Heute im 21. Jahrhundert bräuchte es wohl eine viel komplexere Form, um die Bedürfnisse zu differenzieren. Allein in der Arbeitswelt entstehen Anforderungen, die man sich zu Maslows Zeiten noch gar nicht ausmalen konnte. Das gilt ganz besonders für den Bereich der mobilen Anwendungen.

Heutige Anwender wechseln bei der Verwendung von Mobil-Apps schnell zwischen komplexen Inhalten und lösen damit automatisch mehr und umfangreichere API-Anfragen an die Cloud aus. Damit es keine Abstriche beim Benutzerkomfort gibt, müssten sich die Anforderungen an die Verbindungsqualität und an das Backend erhöhen. Damit einher geht also eine verstärkte Abhängigkeit von Netz- und Serverbetreibern, die beispielsweise bei QR-Codes häufig zum Tragen kommt, da diese meistens nur einen einfachen Link zu einer Website enthalten. Vielfach wäre es aber möglich, alle für die jeweilige Anwendung relevanten Informationen direkt in den QR-Code einzubauen und somit ohne Internetverbindung und Server auszukommen.

Wer unterwegs beim Pendeln oder auf Reisen mobil arbeiten möchte, empfindet die Schattenseiten der mobilen Infrastruktur oftmals als frustrierend. Noch nie gab es so viele nützliche Apps, die in Sachen Anwenderfreundlichkeit das Beste herausholen. Die meisten Anwendungen sind allerdings von einem Server-Backend abhängig und funktionieren nur dann, wenn auch eine stabile Internetverbindung verfügbar ist. Zugreisende, die sich auf eine Fahrkarten-App verlassen, schätzen zwar den Gewinn an Flexibilität, empfinden es aber natürlich als ärgerlich, wenn diese kurz vor Abfahrt des Zuges plötzlich den Dienst verweigert.

Doch wieso übersieht der aus der digitalen Transformation erwachsende Entwicklungsschub diesen technischen Rückstand? Die Ursachen mögen in der vergangenen Dekade liegen. Seit etwa zehn Jahren sind die Verkaufs- und Nutzungszahlen von Desktop-Computern respektive von klassischen Rich-Clients rückläufig. Die damals häufige Verwendung schwacher Mobilgeräte schränkte die Funktionalität auf den Endgeräten drastisch ein (Thin-Client-Ansatz). Seither hat sich die Leistungsfähigkeit von Mobilplattformen und Chips jedoch exponentiell erhöht, sodass die starke Severabhängigkeit geradezu anachronistisch anmutet. Oder wie ist es zu erklären, dass sich kein einziges komplexeres Softwaresystem bei voller Funktionalität immer, das heißt an jedem Ort und mit jedem Gerät, verwenden lässt? Man denke hierbei an gängige ERP-Systeme oder CRM-Anwendungen, aber auch an Fachapplikationen und technische Anwendungen. Verbessert hat sich in jüngster Zeit dank des Mobile-First-Ansatzes immerhin die Ausrichtung der Benutzerschnittstellen auf Bedürfnisse mobiler Benutzer.

Für den Autor haben sich einige wesentliche Aspekte für ein zukunftsorientiertes Informationssystem herauskristallisiert, die er im Folgenden kurz vorstellt:

  • Dezentrale Datenablage und Geschäftslogik: An vorderster Front steht die Forderung nach einer verteilten Ablage von Daten sowie einer autonom funktionierenden Geschäftslogik. Ganz egal wo, in welcher Situation oder mit welchem Gerät Anwender gerade unterwegs sind, sie wollen sich auf eine voll funktionierende Cloud-Anwendung mit vollem Zugriff auf alle Daten und Funktionen verlassen können. Das erlaubt ihnen, flexibler zu planen und ihre geistigen Ressourcen optimal einzusetzen.
  • Plattformunabhängigkeit: Anwender möchten prinzipiell geräteübergreifend arbeiten. Somit darf es keine Rolle spielen, ob sie die Arbeit offline, an einem Desktop-Computer, im Webbrowser oder mit einem Smartphone ausführen. Die Benutzererfahrung soll der gerade verwendeten Plattform bestmöglich entsprechen; trotzdem soll aber überall dieselbe volle Funktionalität verfügbar sein. Um das zu gewährleisten, muss eine Software von Grund auf plattformunabhängig entwickelt worden sein.
  • Schnelle Anwendungsentwicklung und -bereitstellung: Die obigen beiden Aspekte dürfen jedoch weder eine höhere Entwicklungszeit noch einen größeren Aufwand in Bereitstellung und Betrieb rechtfertigen. Im Gegenteil: Eine ideale Lösung sollte eher noch schnellere Veröffentlichungszyklen erlauben. Unmittelbare und geradlinige Anpassungen an neue oder sich ändernde Bedürfnisse oder Geschäftsprozesse sind im heutigen Informationszeitalter ein entscheidender Wettbewerbsvorteil. Eine Antwort darauf kann der Einsatz von Rapid Application Development (RAD) sein, der in der Entwicklung von Cloud-Applikationen den Aufwand für die Implementierung redundant vorkommender Elemente stark reduziert. Das betrifft beispielsweise Standardfunktionen wie Menüeinträge, Links und Buttons zum Speichern, Schließen oder Weiterleiten. Ebenfalls werden immer wieder Tabellenansichten mit mächtigen Sortier-, Such- und Filterfunktionen benötigt. Vorausgesetzt, dass hierbei der gesamte Technologie-Stack berücksichtigt wird, kann RAD ein bedeutender Schritt zur Automatisierung in der Softwareentwicklung sein.
  • Von der Datenstruktur unabhängige Anwendungslogik: Der konsequente Einsatz von RAD verlangt nach Anwendungslogik, die von der Datenbankstruktur unabhängig ist. Darum braucht es keine Anpassungen in der Geschäftslogik und aufwendige Aktualisierungsverfahren bei Änderungen am Datenschema.
  • Skalierbarkeit: Ein skalierbares Backend mit einer leistungsfähigen, zuverlässigen Datenbank ist für einen nachhaltigen Betrieb unerlässlich. Nur so wird es in der Zukunft möglich sein, auf alle zukünftige Entwicklungen und Anforderungen mit vertretbarem Aufwand einzugehen.
  • Intuitive Entwicklungsumgebung: Schließlich sollte es auch für Power User ohne Programmierkenntnisse möglich sein, dank visueller Bedienungshilfen selbstständig einfache Applikationen entwickeln oder modifizieren zu können.

Wenn all diese Anforderungen erfüllt sind, sind die Voraussetzungen dafür geschaffen, dass Informationssysteme einen höheren Level an Flexibilität und Autonomie haben.