This article is part of an Essential Guide, our editor-selected collection of our best articles, videos and other content on this topic. Explore more in this guide:
1. - Maximizing enterprise mobile apps: Read more in this section
- How to avoid common mobile development pitfalls
- Choosing between REST and SOA for mobile applications
- Industry-based strategies for mobile development
- Advice for integrating CMS with mobile technologies
- Best practices for mobile application and data movement
- How altering your mindset can help you best meet customer needs
Explore other sections in this guide:
- 2. - Using Mobile Backend as a Service
- 3. - HTML5 for mobile use
- 4. - What is going on with mobile apps?
How do architects need to shift their mindset when trying to meet mobile user expectations?
The first shift when it comes to meeting mobile user needs is to begin thinking in terms of open APIs. The discussion needs to be furthered around cloud mobile backend services and API programs and how to expose system functionality in a way that is easy to consume, as well as around thinking about enabling a broader set of developers to build on top of the systems you create.
Perhaps the more profound architectural implication of mobile and mobile user expectations is how to address multichannel scenarios. This is a scenario where I haven't seen enough dialogue yet. In many ways, it ends up being a refinement of what service-oriented architecture (SOA) has been about all of this time.
If we stand back and think about the difference between a mobile phone, tablet and a desktop computer, they are different form factors that are not just different screen sizes. The devices are used in very different ways over the course of the day.
Perhaps the more profound architectural implication of mobile and mobile user expectations is how to address multichannel scenarios.
Gartner has done research on how often people use their smartphone to access business systems and how long they do it for. The reality is that consumers, if given the option, will use their mobile phone throughout the day to work with business systems, but they do it in very short bursts and it's very task-focused. They need to add a client record, for example, or a supplier record. The user puts the phone back in their holster or pocket and he or she goes on to the next thing.
With a tablet, consumers end up using the device fewer times. Tablet usage is closer to the amount of time someone uses a desktop Web browser or desktop application, but they use it for much more extended periods, and they anticipate having access to a broader range of functions. Those functions are going to be delivered in a different way than they are on a desktop.
No one wants to go through menus and layers of user interfaces to get to the functionality in a tablet-based application, but they are looking for a broader set of capabilities than they have in the mobile phone. If someone needs to add a client record, for example, before they finish the approval, they anticipate they are going to be able to use a multi-gesture, go off and do the secondary task, and then immediately go back to the context of the first task.
If you think about this from a system point of view, what this requires is a set of reusable components of business logic, which you might think of as features, which are then expressed in different combinations and in different presentation layers for different devices. So, it is kind of a classic SOA model. You have existing backend systems and data sources that are increasingly expressed through services. There is a business logic layer representing features and capabilities, which then can potentially be combined in different ways and expressed through different presentation layers and different devices. Then, there are Web APIs on top of that, which mobile application developers and Web developers would use to access the business functions themselves.
For anyone who has been architecting large-field SOA systems for a long time, this is a natural next step, but I think it is potentially a useful refinement of the SOA model and it's pushing organizations into contemplating well-architected systems so they can support multichannel effectively. Today, the tools to do that are primarily still confined to mobile development platform, but overtime we at Gartner believe that will open up significantly.
Editor's note: This answer is excerpted from an interview with Gordon Van Huizen, Gartner research director, conducted by SearchSOA associate site editor Maxine Giza.