After you’ve taken the time to fully-consider your application architecture, you’ll be well on your way to a successful modernization effort. However, if you want to ensure that your organization is prepared not only for the needs of today, but can anticipate and better respond to an evolving landscape in the future, you’ll want to spend some time future-proofing your current effort.
Future-proofing, in this context, does not mean that you can successfully predict every single change in technology and your industry. It does, however, mean that you should anticipate that change will occur, and that you future-proof through:
- Making performance a feature
- Baking operational intelligence into your apps and API
- Design APIs and Services that can be leveraged beyond mobile
In the final section of this playbook, we’ll look at each of these, in turn.
The phrase “performance is a feature” is meant to convey that your apps should be designed and built not just to work, but work well. They should be tuned to be as fast and lightweight as possible, to use only the data needed and to provide the best performance experience for end users. And while performance is a complex, multi-faceted topic, there are a number of high-value areas that you can focus on to ensure built-in performance for your effort:
||What it is
||Why it matters
||When building RESTful services, favor services that return or require only the base minimum of data needed.
||Smaller payloads result in faster network operations
|Data & Asset Compression
||Ensure that all data, images and other assets are compressed (for example, with gzip) on the server
||Smaller assets and data payloads result in faster network operations, especially on lower bandwidth mobile connections
|Network latency monitoring & management
||Be aware of and instrument how your legacy systems, cloud services and mobile apps perform in the wild. Favor offline and caching approaches for mobile apps where latency is a real consideration
||High latency conditions can often render apps non-functional, and your employees or customers, frustrated
|Push & user notifications
||Use mobile push notifications, SMS and email to provide critical updates or trigger an interaction
||An effective notification pattern keeps users out of your apps unless they have a reason to be there, resulting in better-utilization of network requests
Monitoring & Management Considerations
The second way to future-proof your modernization effort is to bake operational intelligence into your apps and API, so that you can monitor actual usage, identify trouble-spots or issues, and spot trends and opportunities that you might otherwise miss. Monitoring falls into a few categories:
||What it is
||Why it matters
|Analytics, monitoring and measurement
||Instrumenting the various features of your apps and API
||Provides insight on actual app and feature usage
|Logging and auditing
||Crash monitoring and logging; Exception tracking; Network monitoring and logging
||Can help catch bugs before they become widespread; Provides insight on device usage, network conditions in the wild
||Whether in-app or otherwise, providing customers and end-users an opportunity to self-report issues with an app or experience
||Sometimes, your own tools will miss bugs, or missing features your users identify as bugs. Feedback adds a human factor to app monitoring.
Design with the Future in Mind
Finally, when it comes to future-proofing your mobility efforts, you should be aware of how the definition of mobile is changing, and how other emerging trends may affect your business in the future. In every case on this list, or even your own internal list, the key is to build flexibility into your API from day one, by creating an API that is:
Decomposed into essential units of work, using a microservice or serverless approach.
Easy to create new services from existing services with little friction.
That applies to anything in this list below, or anywhere your organization might innovate in the future.
||What it is
||How do I design for it?
||Voice and Messaging as the UI of the future; Replaces traditional form-based patterns and interactions with conversational flows
||Model services around objectives, not interactions. For example, consider authentication: Are your existing auth services compatible with voice or chat patterns?
|Progressive Web Apps (PWAs)
||“Installable” web apps that leverage the web, but behave like mobile apps
||Embrace web technologies and cross-platform solutions, even for your native mobile apps
|Augmented and Virtual Reality
||Interaction patterns that overlay computing on the physical world (AR), or which introduce wholly-virtual environments (VR)
||Look for user interactions and processes that would benefit from contextual overlays. Prepare for heavier use of computer vision as input to your apps.
|IoT / Industrial IoT
||Embedded device connectivity, from the field to the smart home, to the shop floor and beyond; An explosion of network connected and aware devices accessing, creating and acting upon your core data
||Don’t assume that the mobile device is the most network- and process-constrained device you’ll ever need to support; Decompose APIs as much as possible to support IoT use-cases
Future Proof with Progress
App development is always evolving, and the challenges extend far beyond mobile. In addition to NativeScript and Kinvey, Progress offers a complete app development platform that covers:
- Web Apps
Rapidly build modern web apps, including PWAs, using the industry leading Kendo UI widgets.
- Desktop Apps
Make any app look better and do more with the legendary Telerik UI tools.
NativeChat, from Progress, is the easiest way to train a bot and add it to your web or mobile app.
Progress DataRPM provides an innovative solution for detecting and predicting industrial equipment failures.
Progress Labs is hard at work creating tools to make AR/VR easy to add to any app.