The future of mobile app development: Omnichannel, cognitive and self-adjusting
It’s hard to see changes when they advance gradually. A few years ago, enterprises were just setting out on their mobile journeys. They had to learn what it meant to support multiple platforms, how to leverage smartphone features and how to distribute apps in app stores.
Fast forward to today, and companies have been largely successful at overcoming these challenges. Now that the basics are mastered, we will enter a new phase of innovation in mobile app development. Here are three trends that will transform the apps we use:
1. From enabling the mobile channel to perfecting omnichannel
With the proliferation of digital interfaces, from mobile and web to kiosks, wearables and chatbots, it’s becoming clear that enterprises must learn how to interact with users across these touchpoints. The fact that the user experience is split across channels is an opportunity — each touchpoint can be exploited for its particular conveniences. To develop for all of these channels, enterprises are standardizing on a common platform for interaction, even as they customize the front-end experience for each form factor.
This not only streamlines development and facilitates reuse, but it also enables new types of cross-channel interactions. For instance, a user may start booking travel on the web, continue her reservation later on her mobile device and receive flight notifications on her smartwatch. She may access the lounge with her smartphone, which recognizes her gold status and unlocks the door. Or, she might verbally agree to pay for her extra luggage while her identity is confirmed in the background by non-obtrusive biometric authentication. Multiple channels work together to create a seamless experience.
Omnichannel touchpoints go hand in hand with developing a common set of microservices (back-end functions) that decompose and isolate features. This allows delivery streams to be autonomous and to auto-scale different components of the application independently, depending on fluctuating capacity demands. Specific microservices can be added to a particular channel experience without needing to deploy a completely new back end, reusing capabilities across channels.
2. From predefined interaction patterns to customer lead engagement
Mobile apps used to be “me too” entities, mimicking the tried-and-true web interaction patterns with a little extra mobile flavor, such as push notifications. However, we now understand that mobile enables a completely different style of interaction. The key insight is this: Instead of the app dictating when and how the user should accomplish a task, the app enables customers or employees to choose when and how to engage and can also proactively guide users as they try to accomplish particular tasks.
To do this, the app leverages the rich world of data, both on the phone and on the web (given user permission, of course), to understand the user’s current context and to anticipate what the user needs next. For example, a hospital app can inform a patient arriving at the hospital that there is a longer-than-expected line for his first appointment and that he should proceed first to the blood lab. Such an interaction can improve hospital efficiency and make the patient experience more pleasing. An app can also give users the flexibility to choose how to engage.
A fan at a golf tournament might use a tournament app to follow only her favorite players, rather than everything that is happening at the tournament. She can get notifications when these players are about to tee off, read statistics about them and interact with other fans rooting for those same players. With the advent of cognitive services, the ability for apps to identify the user’s intent and garner the right experience will become even easier. By knowing what a user is trying to accomplish at any given moment, you can also simplify the interface so it’s easy and rewarding to use. Cognitive services, personalization and event-based programming models are key technologies to build this new breed of apps.
3. From inflexible, hard-to-customize apps to continuous experimentation and adaptation
It’s not always obvious what users will and won’t like. And the answer is never final — user preferences and expectations change over time. Therefore, we must view mobile app development as a continuous, agile process with no clear-cut boundaries between analysis, development and deployment. Setting up a continuous cycle of experimentation, feedback and adaptation is key.
However, adopting this framework for mobile is especially challenging, since the process of updating the app, delivering it to app stores and coaxing users to download the latest version can be lengthy. New technologies have evolved to assist with these challenges, including those that support the incremental rollout of app features, collecting rich usage metrics and then deciding to either proceed with a rollout or to retract changes. Other technologies enable turning features on and off with the switch of a button — known as “feature flipping — distributing different feature sets for different user segments and dynamically updating content and app capabilities. Imagine an automotive app that dynamically configures itself for the specific car you are currently driving, or an app that automatically presents a credit card tab right when your credit card application is approved. These kinds of optimized user interactions require continuous analysis of how features are being used, how users are engaging with the app and whether different capabilities are having the desired impact.
Mobile app development is moving in two complementary directions. As the need for more omnichannel apps grows, technologies for scaling development and deployment become more important — hence the rise of DevOps, microservices and continuous integration. In parallel, users will naturally gravitate to applications that are engaging and help them accomplish what they are trying to do. This means that applications will make better use of user context and technologies that support adaptation such as feature flipping.
Supporting these trends means taking a data-driven approach to app development, continuously experimenting with new features and experiences, measuring outcomes and adjusting development priorities based on outcomes. Combined, these trends will usher in the next generation of apps.