Die Consumerization hat gerade erst begonnen, beeinflusst aber bereits weite Bereiche der Arbeitswelt und damit auch die Art des IT-Einsatzes in den Unternehmen. Geräte wie Smartphones und Tablets, die anfangs nur für den Privatgebrauch gedacht waren, kommen in vielen Fällen zum Einsatz, wenn Mitarbeiter schnell und bequem das Internet nutzen oder ihre beruflichen und privaten E-Mails checken wollen. In einigen Unternehmen ist dies offiziell erlaubt, in anderen wird es stillschweigend geduldet.
![calcott-gary](http://www.zdnet.de/wp-content/uploads/2013/09/calcott-gary-progress-software-250x250.jpg)
Wenn aber der Zugang zum Mailsystem immer und überall möglich ist, fragen die Mitarbeiter bald zu Recht, warum sie nicht auch mit ihren, im Vergleich zu den oft klobigen Firmen-Notebooks, schicken Smartphones und Tablets ihre gewohnten Unternehmens-Applikationen nutzen können. Nach Büroschluss verwenden sie auf ihren Android- und iOS-Systemen dutzende sehr einfach zu bedienende und nützliche Apps für alle Lebenslagen und Alltagssituationen. So müssten auch Unternehmens-Apps sein, denken sich viele.
Die Anforderungen an die IT-Abteilungen und unabhängige Softwarehersteller sind damit klar: Erstens sollten vorhandene Unternehmens-Applikationen für die mobile Nutzung erweitert werden und zweitens neue, mobile Unternehmens-Apps erstellt werden.
Vorhandene Unternehmens-Applikationen modular strukturieren
Der Großteil der in Unternehmen heute genutzten Applikationen ist in den letzten zehn bis 15 Jahren entstanden. Oft handelt es sich noch um umfangreiche monolithische Anwendungssysteme für betriebswirtschaftliche Aufgaben wie Einkauf, Materialwirtschaft, Produktion, Vertrieb oder Marketing. Da sie über Jahre hinweg erweitert und angepasst wurden, ist die Struktur komplexer Applikationen auf Anhieb oft nur schwer zu durchschauen.
Gerade weil mobile Komponenten eines umfangreichen betriebswirtschaftlichen Anwendungssystems ständig geändert und angepasst werden, muss sich auch die Back-Office-Applikation möglichst einfach adaptieren lassen. In vielen Fällen ist es dazu erforderlich, dass das Design der vorhandenen Anwendungen modifiziert und restrukturiert wird.
Software-Entwickler sprechen in dem Fall von Refactoring. Durch die Trennung von Datenbank, Application-Server, Ablauf- beziehungsweise Verarbeitungslogik und Benutzeroberfläche werden Anwendungen übersichtlicher, besser verständlich, leichter lesbar und lassen sich einfacher ändern oder erweitern. Der Application-Server stellt dabei ein wichtiges Verbindungsglied zwischen den Back-Office-Komponenten und dem Einsatz einer App auf mobilen Endgeräten dar.
![REST-Adapter](http://www.zdnet.de/wp-content/uploads/2013/09/REST-Adapter-580x383.jpg)
Mit universell verfügbaren Technologien wie RESTful Web-Services oder JSON (JavaScript Object Notation) auf einem Application-Server ist es möglich, alle nur denkbaren mobilen Endgeräte und Clients anzusteuern. So unterstützt beispielsweise die Entwicklungsplattform OpenEdge von Progress Software RESTful Web-Services. Für Entwicklungsplattformen bedeutet das: Sie müssen Anwendungen ermöglichen, deren Geschäftslogik „back-end“ in einem zentralen Rechenzentrum liegt und deren Front-End auf unterschiedlichen mobilen Endgeräten läuft.
Die JavaScript Object Notation gilt weithin als Ersatz für XML in Einsatzgebieten, in denen Ressourcen wie Speicherplatz oder CPU-Leistung nur sparsam verwendet werden können, beispielsweise bei Applikationen, die über das Web genutzt werden. JSON überträgt Daten von einem Endgerät (einem Client) zu einem Server und kommt oft in Verbindung mit Ajax (einem Konzept zur asynchronen Datenübertragung) oder JavaScript on Demand (JOD) zum Einsatz.
Neue, mobile Unternehmens-Apps erstellen
Vorhandene betriebswirtschaftliche Anwendungssysteme so zu ergänzen, dass sie Außendienstmitarbeitern oder Servicetechnikern wichtige Funktionalitäten zur Verfügung stellen, ist in vielen Fällen möglich und auch sinnvoll. Wenn Unternehmen ihren mobil tätigen Anwendern eine mit der Consumerwelt vergleichbare Benutzererfahrung bieten wollen, müssen sie jedoch neue Methoden nutzen.
Anders ausgedrückt: Sie sollten sich für einen „Mobile-First“-Ansatz entscheiden. Das aber bringt neue Herausforderungen mit sich, denn die Apps müssen unterschiedliche Plattformen und Endgerätetypen berücksichtigen. Mobile Apps sollten unter iOS und Android als den am weitesten verbreiteten Betriebssystemplattformen laufen; es gibt allerding auch Unternehmen, für die Blackberry OS und Windows Phone wichtig sind. Dazu kommt natürlich, dass die Apps den jeweiligen Stores genügen müssen, über die sie verteilt werden.
Unternehmen, die eine App für Smartphones und Tablets erstellen wollen, haben drei Möglichkeiten: erstens eine native App, zweitens eine Web-App und drittens eine hybride App. Native Apps entstehen mit einem Software Development Kit (SDK) für das jeweilige Betriebssystem und die Apps laufen nur auf dieser Zielplattform. Wenn ein Unternehmen durchgängig auf iOS oder Android setzt, ist dieser Ansatz die passende Variante.
Viele Entwickler sind dazu übergegangen, als zweite Möglichkeit Web-Apps in HTML5 zu schreiben. Da sie im Browser des Mobilgeräts laufen, ist die Erstellung weniger komplex als bei einer nativen Anwendung. Allerdings sind sie nicht in der Lage, die speziellen Features zu erschließen, die eine native App nutzen kann. Dazu kommen die Vorbehalte bei Sicherheit und Performance, die gegenüber webbasierenden Applikationen immer wieder vorgebracht werden.
![HTTP-Requests](http://www.zdnet.de/wp-content/uploads/2013/09/HTTP-Requests-580x388.jpg)
Hybride Apps als dritter Weg werden mit HTML5- und JavaScript-Bibliotheken wie JQuery Mobile entwickelt, aber in einer Verpackung präsentiert, die ihnen dasselbe Look-and-Feel gibt wie nativen Apps. Entwickler profitieren damit vom Vorteil des „write once, run anywhere“, wie ihn webbasierende Anwendungen bieten. Gleichzeitig bieten hybride Apps, wie sie etwa mit dem OpenEdge Mobile App Builder von Progress Software erstellt werden können, hinsichtlich Funktionalitäten, Sicherheit und Leistungsfähigkeit dasselbe Niveau wie ihre nativen Pendants und lassen sich auch genauso wie diese aus den entsprechenden Stores herunterladen.
Ein wichtiger Vorteil für Entwickler: Qualitätssicherung und Tests bleiben auf eine einzige Version beschränkt. Darüber hinaus vereinfacht der hybride Ansatz nicht nur die Entwicklung und Pflege der Anwendungen, sondern die Apps bieten den Usern auch Konsistenz über sämtliche Plattformen hinweg.
Kurze Entwicklungszyklen
Ob eine vorhandene Unternehmens-Applikation mobilfähig gemacht wird oder neue mobile Apps erstellt werden, eines ist immer gleich: Die Entwicklungszyklen werden kürzer. Entwickler müssen heute fortlaufend Apps erstellen, testen und für den produktiven Einsatz freigeben. Dies erfordert von ihnen ein neues Denken. Sie müssen in der Lage sein, für jede neue Anforderung so schnell wie möglich eine einfache und intuitive Lösung zu liefern.
Das geht nur, wenn die Apps statt eines riesigen monolithischen Software-Blocks, der nur aufwändig erweitert und angepasst werden kann, einem Komponentenmodell folgen, dessen einzelne Bausteine flexibel und schnell an immer neue Anforderungen angepasst werden können.
Eines steht fest: Die Nachfrage nach mobilen Unternehmens-Apps boomt. Ablesen lässt sich dies unter anderem daran, dass die Zahl der Entwicklungsprojekte in den Unternehmen und bei unabhängigen Softwareherstellern steigt, in denen ein „Mobile First“-Ansatz verfolgt wird. Die Apps müssen die wichtigsten mobilen Plattformen unterstützen und dafür muss die eingesetzte Plattform die Voraussetzung bieten.
Gary Calcott ...
... ist Technical Marketing Manager, Application Development & Deployment, bei Progress Software in Frankfurt am Main. Das Unternehmen hilft Firmen bei der Entwicklung, der Einrichtung und der Verwaltung von Business-Anwendungen, sei es in der eigenen Infrastruktur oder in der Cloud.
Neueste Kommentare
1 Kommentar zu Drei Wege zu mobilen Firmen-Apps
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.
Interessanter Beitrag, mir fehlt allerdings der Link zu professionellen Services, die mit Client-SDKs direkt auf mobile Use-Cases ausgelegt sind. Backend as a Service wie hierzulande z.B. von apiomat.com angeboten bietet genau das und kann im Rahmen einer On-Premise-Installation auch als Mobile-Middleware eingesetzt werden.