The case for mobile app engagement in the cloud
Mobile apps are becoming the de facto standard for delivering engaging experiences to users. Apps can be consumer-facing, such as a taxi-booking app, or employee-facing, such as a field inspection app. Mobile app engagement needs certain basic back-end capabilities such as compute, storage, app lifecycle management and security. However, to enrich the user’s experience, you will need to integrate advanced capabilities such as cognitive AI, IoT, video and weather. Mobile apps are the perfect vehicle to deliver engaging and interactive experiences with the support of a rich back-end platform.
The necessity of integrated cloud platforms
CTOs and CIOs have to find a platform that will be full utilized, can cater to an expandable architecture, and doesn’t use their entire capital budgets. In such cases, integrated Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS) cloud platforms such as Bluemix come to the rescue. By definition, cloud platforms are scalable rental models. You pay for what you consume and for the scale at which you operate. Cloud platforms provide the following services:
- Basic compute and storage: Virtual machines, containers and databases
- Specific infrastructural services: Mobile back ends, API management and security
- Cognitive services: Self-learning chat, image recognition and decision systems
- Specialized platforms: Video streaming, IoT and weather insights
Integrated cloud platforms provide several prepackaged or customized services such as object storage and specialized analytics services. They offer basic runtimes such as Node.js, Swift or ASP.net as well as Docker container hosting. Basic storage such as SQL and NoSQL databases are also available on pay-per-use or API usage rates. This amortizes the software license cost over time and usage. Cognitive services such as chatbots and image recognition tools with machine-learning abilities are becoming essential for enhanced mobile app engagement. You now have the ability to start small and pay for just that. You can later enrich the app experience with value adds. Pay for as much as you are consuming, knowing there is more available when the need arises.
When building a mobile app, the most basic services you need are mobile services. These include push notifications, mobile analytics, mobile device tracking and secure back-end connectivity. It’s often either overlooked, or an attempt is made to build these from scratch. They both distract the mobile development team from the core task of developing immersive mobile app engagement.
Mobile services in the cloud are available to the app developer by the ease of just adding an SDK using a CocoaPods, Gradle or NuGet directive. This accelerates the time-to-value because you now have the basics already taken care of from the get-go. After the mobile app is released, an important data point to analyze is user behavior and device composition. Based on this, you can make device-specific decisions such as minimum device OS-level support. It’s often seen as a production readiness afterthought, but mobile back-end services provide the foundation on which you can start delivering higher-value services.
Mobile back ends typically provide the following capabilities:
- Comprehensive security: Protection from mobile-specific threats
- App lifecycle management: Incremental updates and version management
- Mobile analytics: Better understanding of your users
- Back-end logic engine: Help with server-side logic for the app
- Push notifications: Boosted user engagement
- Offline sync: Data sync for offline use cases
Secure enterprise connectivity
There are use cases when the mobile app needs data and services that reside within the enterprise’s on-premises data center. Cloud platforms provide secure VPN connectivity to on-premises data centers. One peculiar problem that’s often seen is that the on-premises system APIs were not written for a mobile use case. Mobile back-ends provide an adapter layer that allows mobile teams to write API mashups or decompose the back-end APIs into mobile-friendly APIs that pass just the limited data to mobile apps. This provides a “variable speed gearbox” that reduces frictions between the back-end API teams and mobile API needs. Adapters also provide a secure place to store back-end credentials rather than embedding them directly in the mobile app.
Taking the app to the next level
Once the basic foundation of the app is built, you can enhance the user experience by adding higher-value APIs. A very obvious choice is integrating a conversation API to build a chatbot that is trained on domain-specific knowledge. You can then integrate a tone analyzer on the user’s conversation to figure out whether the user is happy or annoyed and immediately intervene into the conversation with a real person. Image- and sound-recognition capabilities are also helpful.
Together, IoT and mobile can deliver very powerful interactive experiences, such as engaging users in a game of golf or delivering insurance and weather analytics information to users on the go.