Wie Mobility die Anwendungsentwicklung verändert

DeveloperIT-ProjekteMobileMobile Apps

Die zunehmende Nutzung mobiler Endgeräte im Privat- und Berufsleben stellt Anwendungsentwickler vor komplexe Herausforderungen. Wollen sie den Usern das bestmögliche App-Erlebnis bieten, müssen sie auf neue Methoden setzen.

Smartphones und Tablets verbreiten sich rasant, und der Wunsch der Nutzer wächst, ihre Geräte auch für Arbeitszwecke einzusetzen. Das hat zur Folge, dass bei der Anwendungsentwicklung mittlerweile häufig ein “Mobile-First”-Ansatz verfolg wird. Dieser bringt allerdings einige hochkomplexe Herausforderungen mit sich, die vor allem durch die vielen verschiedenen Plattformen und Endgerättypen begründet sind.

Gary Calcott ist Technical Marketing Manager, Application Development & Deployment, bei Progress Software in Bedford, Massachusetts (Bild: Progress Software).
Gary Calcott ist Technical Marketing Manager, Application Development & Deployment, bei Progress Software (Bild: Progress Software).

Bei der Entwicklung nativer mobiler Apps müssen nicht nur iOS, Android, Blackberry und Windows Phone berücksichtigt werden. Auch an die Darstellung der Daten in den vielen verschiedenen Formfaktoren von Smartphones und Tablets müssen die Entwickler bei ihrer Arbeit denken. Diese Aspekte machen auch die Qualitätssicherung und das Testen der Anwendungen komplizierter. Dazu kommt, dass die Apps den Anforderungen der Stores entsprechen müssen, über die sie verteilt werden sollen.

Als Reaktion auf diese gestiegene Komplexität sind viele Entwickler dazu übergegangen, webbasierte Apps in HTML5 zu schreiben. Diese laufen für gewöhnlich im Browser des Mobilgeräts. Ihre Entwicklung ist daher weniger komplex als bei nativen Anwendungen.

Aber sie haben einige gravierende Nachteile: Sie können beispielsweise nicht dasselbe Nutzererlebnis bieten wie native Apps. Außerdem sind sie nicht in der Lage, die vielen zusätzlichen Features zu erschließen, die Smartphones und Tablets bereitstellen. Nicht zu vergessen sind auch die Vorbehalte in Bezug auf Sicherheit und Performance, die es rund um webbasierte Anwendungen immer gibt.

Natürlich gibt es Beispiele, in denen native oder browserbasierte Anwendungen die passendste Variante sind. In den meisten Fällen allerdings sind hybride Apps die beste Antwort auf das Dilemma aus komplexen nativen Apps einer- und eingeschränkten webbasierten Apps andererseits.

Hybride Apps werden mit HTML5- und JavaScript-Bibliotheken wie JQuery entwickelt, aber in einer Verpackung präsentiert, die ihnen dasselbe Look-and-Feel verleiht wie native Apps. Entwickler profitieren damit vom “Einmal-schreiben-überall-betreiben”-Vorteil webbasierter Anwendungen. Gleichzeitig bieten hybride Apps hinsichtlich Funktionalitäten, Sicherheit und Leistungsfähigkeit dasselbe Niveau wie ihre nativen Pendants und sie lassen sich auch genauso wie diese aus den entsprechenden Stores herunterladen.

Außerdem bleiben Qualitätssicherung und Tests auf eine einzige Version beschränkt. Ein weiterer Vorteil des hybriden Ansatzes: Er vereinfacht nicht nur die Entwicklung und Pflege der Anwendungen, die Apps bieten den Usern auch Konsistenz über sämtliche Plattformen hinweg.

Gute Einstiegsmöglichkeit in cloudbasierte Anwendungen

Die Auswirkungen der zunehmenden Mobilität auf die Anwendungsentwicklung werden durch einen zusätzlichen Faktor noch verstärkt. Das Thema Mobility bietet gute Einstiegsmöglichkeiten in Anwendungen auf Basis von Cloud und SaaS-basierte. Unternehmen wollen ihre Anwendungen modernisieren und wünschen sich ein intuitives und mobilfähiges Frontend. Zu dieser Modernisierung gehört aber häufig auch das Ziel, das Backend von On-Premise-Servern in eine stärker cloudbasierte Architektur zu verlagern.

Dies geht mit der Ablösung alter Entwicklungspraktiken und einem immer stärker prozessorientierten Ansatz einher, mit dem sich ein externalisiertes Regelsystem schaffen lässt. Das heißt: Die Logik der Anwendungen wird nicht länger fest in diesen verdrahtet. Dadurch lässt sich die Zusammenarbeit zwischen Entwicklern und anderen Beteiligten, etwa Projektmanagern, erheblich verbessern.

Außerdem ermöglicht dieser Ansatz einfacht, leicht bedienbare Oberflächen innerhalb einer Drag-and-Drop-Entwicklungsumgebung, die sich an das vorhandene Backend anbinden lässt. Ergebnis: Die Entwicklungszyklen werden kürzer und User nehmen neue Anwendungen schneller an.

Damit verringert sich letzten Endes die Zeitspanne zwischen dem Ende der Entwicklung und der allgemeinen Freigabe der Anwendung. Dieser Trend wird zu einer immer stärker prozess- und regelorientierter Anwendungsentwicklung führen, kombiniert mit Schnittstellen-basierten Mashups über On-Premise-, Cloud- und mobile Anwendungen hinweg. Die Softwareentwicklung wird dadurch agiler und ermöglicht so die schnellen Innovationen, die heute verlangt werden.

Fazit

Mobility verändert die Anwendungsentwicklung also nachhaltig. Die Forderung nach plattformübergreifender Unterstützung wächst, die Entwicklungszyklen werden kürzer und die Erwartungen der User entwickeln sich weiter.

Egal, ob es um eine native, browserbasierte oder hybride App geht: Mobile Anwendungen sind eine Spezies für sich. Deshalb genügt es nicht, Entwicklungstechniken, die bei Desktop-Anwendungen gut funktionieren, einfach zu übertragen. Es wird entscheidend sein, dass die Entwickler sich auf die neuen Methoden einlassen.

Gary Calcott ist Technical Marketing Manager, Application Development & Deployment, bei Progress Software (Bild: Progress Software).
Gary Calcott

Der Autor

Gary Calcott ist Technical Marketing Manager, Application Developement & Deployment, bei Progress Software. Die Software des US-Unternehmens stellt die Infrastruktur für unterschiedliche Anwendungen wie ERP und Finanzhandel im Einzelhandel, der Produktion, Telekommunikation, Finanzdienstleistungen oder Regierung. Außerdem liefert Progress Software Technologien für flexible Applikationsinfrastrukturen, integrierten Datenzugang und Event Processing in Hochgeschwindigkeit.