Mobile isn't the same as the web. You have a large degree of certainty around website experiences: most are consumed using a screen above a certain size, using one of a handful of browsers on one of a very few operating systems – with an always-on, high-speed internet connection.
Because people have become used to high-quality experiences from desktop websites, they expect a similarly top-end performance on their smartphones or tablets. But delivering this on a mobile device is far more complex than on a desktop or laptop.
You must overcome all the issues that arise when you need to design for thousands of combinations of hardware, screen size, operating system and carrier. And that's before you even think about intermittent and slow connectivity, fluctuating demand and the requirement for frequent updates.
Web architectures won't cut it
Websites have traditionally been built using a three-tier approach, comprising layers for services, business logic / application and presentation. The entire 'online' experience has tended to be built at once, resulting in tightly linked layers. Change is expensive, risky, time-consuming and likely to impact customer experience. As a result, non-trivial changes tend to be bundled up, developed, tested and released on a long cycle.
As mobile emerged, because the HTTP delivery method (and some content) is the same as for the web, many organisations bolted mobile onto their existing web architectures. However, the drawbacks of the three-level architecture mean it's at best imperfect, and at worst completely unsuitable for mobile's fast-moving demands.
This is why research firm Forrester has outlined the need for a new, component-based, four-tier approach, which it calls the 'mobile engagement platform'. Central to this is the division between hosting and delivery of content, as well as much looser coupling between the layers. This results in an architecture that is well-suited to mobile service delivery, because it overcomes the challenges of agility, flexibility and scalability – three areas where Forrester finds the three-tier architecture wanting.
The four-tier approach for mobile
Our four-tier approach, based on many years' experience, is closely aligned with the architecture outlined in Forrester's report. It has been used for successful mobile deliveries, and consists of tiers for services, aggregation, delivery and client, each of which contains discrete, high-quality components that complement one another and work together to deliver a great experience.
By dividing the layers in this way, and ensuring the whole structure is loosely coupled, you can swap a component or add something in, without major impact on the customer experience.
The benefits of four tiers
Mobile moves fast: platforms develop, new devices become available and users demand enhanced features. For you to respond quickly, your mobile offering must be agile. You can't afford to wait six months for your IT department to bundle up, test and deploy a series of upgrades. By loosening the links between tiers and building in a component-based way, the four-level approach enables you to respond to evolving needs by making the right changes in the right places, without the need to redevelop, re-test and redeploy your entire app or mobile website.
High-quality mobile offerings don't do everything themselves. Instead, they link up with best-of-breed third-party services: YouTube for video or one of the many payment providers for card transactions. Because it's built from linked components, the four-tier approach makes it easy to integrate third-party services, without needing to make wide-ranging changes to your entire mobile offering.
Get your mobile offering right, and people will start to use it. And as demand grows, you'll need to scale to meet it. The loosely coupled four-tier model enables you to scale the relevant servers and connections to cope with the increasing numbers of visitors you're getting. And once things get too big for your in-house servers, you can easily migrate to the cloud, all the while maintaining a high-quality experience.
A change of mentality
To make such a fundamental change to the way you deliver digital services, you'll need to alter the way your business and technical staff operate. To deliver genuine agility and flexibility, you must get away from a waterfall-based development approach, where people expect enhancements to be bundled up and delivered as part of a six-monthly release cycle. Mobile needs to be delivered using agile methodologies, with enhancements being developed, tested and rolled out as soon as they're ready.
Your organisation needs to understand and buy into agile development, committing the appropriate resources to make it a success. Fail to change the way you operate and you won't be able to enjoy the full benefits of the four-tier architecture.
In our next article on mobile services, David Shepherd will talk through the best delivery techniques to use for mobile services, as well as the blend of skills you'll need in your team to make mobile a success.
- Simon Boichat is IPL's Lead Architect for mobile systems and has been instrumental in mobile deliveries at Nationwide and the Environment Agency