© S&S Media
Cross-Plattform-Entwicklung mit Kony

Eine für alle


Wenn von Cross-Plattform-Entwicklung im Mobile-Bereich die Rede ist, denken die meisten automatisch an HTML5/JS und hybride Apps. Es gibt jedoch Technologien und Plattformen, die es ermöglichen, aus einer Codebasis echte native Apps für die bekannten Mo­bile-Systeme wie iOS, Android, Windows und BlackBerry zu entwickeln und zu betreiben, sowie dabei den gesamten DevOps-Zyklus abdecken. Die MADP-Plattform, die ich hier betrachten werde, ist von Kony, einer Firma, die komplett auf Mobile ausgerichtet ist und als Leader in den verschiedenen Analystenreports von Gartner, Forrester, Ovum u. a. geführt wird.

Betrachtet man den Ansatz, fällt auf, dass es natürliche Sweet-Spots dafür gibt: Im Wesentlichen ist eine solche Plattform für B2C- und B2E/B2B-Enterprise-Apps, die mit Enterprise-Backends – z. B. einem SAP, Salesforce, Siebel, Oracle, einem ESB, einem API Gateway oder ähnlichen Systemen – kommunizieren, interessant. Diese Apps sind so genannte „Transactional Enterprise Apps“). Des Weiteren ist dieser Ansatz für alle Apps, die schnell auf mehreren Plattformen benötigt werden, tauglich; folgend einer „Micro-App“-Strategie, bzw. wenn man eine App-Factory aufbauen möchte, um schnell und effizient den Anforderungen der Fachabteilungen nachzukommen und viele Apps zu entwickeln, die einen direkten Wert für das Geschäft bringen. Weniger geeignet ist die Kony-Plattform für reine unverbundene Apps wie sehr hardwarenahe 3-D-Spiele oder Utility-Apps.

Use Case

Bevor ich zu den Details komme, wie die Plattform aufgebaut ist und wie der Entwicklungsprozess aussieht, will ich zunächst einen Use Case aufzeigen, der direkt im Sweet-Spot für die Kony-Plattform liegt: Eine internationale Bank mit über 60 Millionen Kunden in über dreißig Ländern hat nach einer Plattform gesucht, die es ermöglicht, eine lokalisierbare Banking-App für ihre Kunden in den verschiedenen Ländern schnellstmöglich auf den Markt zu bringen. Dabei waren folgende Anforderungen zu erfüllen:

Ein optimales mobiles Erlebnis für die Kunden

Dies wurde in kurzen Iterationen mit der Fachabteilung und Testgruppen mit dem Visualizer Tool erreicht, das es erlaubt, die UI/UX im stetigen Austausch mit den Testern fertigzustellen, da diese die UI/UX permanent auf ihren Devices ausprobieren und Feedback geben können.

Entwicklung der Apps für iOS, Android, BlackBerry und Windows auf einer Codebasis

Die Entwicklung mit dem auf Eclipse basierenden Kony Studio besteht aus einer einzigen Code- bzw. Projektbasis, aus der ein Build für alle benötigten Mobil-Plattformen erstellt werden kann.

Verwendung der existierenden Services aus dem Onlinebanking

Hier wurde das Mobile-Backend (MBaaS) namens Kony MobileFabric eingesetzt, das es ermöglicht, die existierenden Services zu verwenden und die Kommunikation mit dem mobilen Gerät auf Bandbreite bzw. für den mobilen Zweck zu optimieren.

Einfacher Einsatz Mobile-spezifischer Elemente wie Push Notifications (u. a. zum Versenden von Coupons von Marketingpartnern)

Die MobileFabric-Backend-Server haben eine einzige Schnittstelle zur Applikationslogik, aus der alle Arten von Push-Services bzw. Push-Clouds (Apple APN, Google GCM, BlackBerry Push, Microsoft MPNS, SMS, E-Mail) uniform verwendet werden können.

Extrem hohe Sicherheit für die App und die Backend-Kommunikation

Die Plattform verfügt über alle benötigten Arten der Multi-Faktor-Authentifizierung und ist PCI- und FIPS-140-2-zertifiziert. Außerdem können alle App-Daten (Datei und SQLite) auf dem Gerät mit RSA und AES/TripleDES verschlüsselt werden.

Zukunftssicherheit bei Änderungen/Updates der mobilen Plattformen

Kony garantiert eine SLA von maximal 30 Tagen, bis die Plattformupdates von Mobile-Betriebssystemen unterstützt werden. In der Regel ist die vollständige Unterstützung aber wesentlich schneller erreicht.

Bausteine der Plattform

Betrachtet man die Bausteine aus Entwicklersicht, sind die wichtigsten wohl die JavaScript-APIs (z. B. die allgemeinen Widget-, Phone-, Accelerometer-, Cryptography-, Camera-, Geolocation-, Gesture-, DataAccess-, Network-, I/O-, Math-, Notification-, I18n- usw. APIs, sowie spezifische wie die Beacon-, HealthKit-, Apple-Pay-, NFC-, Bluetooth-LE-APIs, die lediglich auf einzelnen Plattformen verfügbar sind bzw. nur dort einen Sinn ergeben). Man kann aber auch über das „FFI“ (Foreign Function Interface) eigene native Libraries einbinden und mit einem JavaScript-API wrappen.

Auf einer höheren Ebene, wenn man die Komponenten der Kony-Plattform aus Sicht des ganzen Entwicklungsprozesses sieht, sind es Kony Visualizer, Studio und MobileFabric (sowie das 3rd Party Product ­SOA­STA TouchTest), wie in Abbildung 1 dargestellt.

hebach_kony_1.tif_fmt1.jpgAbb. 1: Die Komponenten der Kony-MADP-Plattform

Kony Visualizer ist die Komponente, mit der das User Interface und die User Experience einer App designt und getestet wird. Hiermit wird schon früh in der Entwicklungsphase ein konkretes User Interface gebaut, das stetig...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang