Enterprise architects' guide to success with mobile apps for business
A comprehensive collection of articles, videos and more, hand-picked by our editors
The purpose of business applications is to support worker productivity. That statement is fundamental to every IT process and central to the mission of all software architects. It follows that application design changes are most likely to be profound where something is driving a significant change to worker empowerment, and nothing is doing that more convincingly than mobility. This tip explores how mobile app design is different, how...
to architect applications for mobile users, and which special issues are likely to arise in mobile applications.
Up to now, most of the focus on mobile devices has been on their 1:1 substitution for a traditional laptop computer -- a mission that is hardly transformational in terms of worker productivity. Enterprises are now realizing that IT can be brought to the point of worker activity, rather than expecting work to be brought to the point of IT access. This is a fundamental change and has to be the factor that drives mobile app design.
Develop with productivity in mind
Traditional applications are not context-aware because they presume the worker has set their context by opening the application from a suitable location. With mobile applications and the goal of empowering workers at the point of activity, it's critical to start with what defines that point. In most cases it will be either the location of the worker or the social framework of application access.
Search giants like Google have known from the start that mobile users are more tactical in their search use. Such users are likely to look for things that are related to their current activity, and that's true for application access as well. It's important for information to be delivered to mobile device users efficiently because they are often trying to access data they need that moment. The user can't perform rich navigation tasks while walking or driving.
It's easy to visualize how mobile device use impacts application design. If a worker empowered by traditional IT is expecting to reconfigure the flow of an area of a refinery, it's normal for them to pull diagrams of the related manifolds and find the correct ones. They'd then likely take these into the field to guide their process.
In mobile empowerment, the worker is more likely to expect the application to know which manifold is located proximate to the worker and show the configuration of that specific manifold. Location-based service, or LBS, is thus an implicit part of the mobile application. Similarly, a mobile worker who has been accessing a specific account on an application will likely want to access the same account on a different application later.
Not only does a mobile app need to be contextually aware, it also must be relevant in an information sense. Some of this relevance comes from interpreting context, but it's also important to use context to filter information properly. Mobile devices' smaller screens make multilevel navigation difficult, so information may need to be formatted specifically for mobile devices, not just adapted at the level of the graphical user interface (GUI).
Front-end-based mobile app design
The most accepted model for mobile empowerment is a Web-browser- or app-based front end to traditional applications. The front-end element can tune the GUI itself, but can also incorporate context into the mobile application if designed carefully. This is done by having the front end acquire and maintain contextual information (state) by the user, and incorporate this information into the messages or transactions it passes back into the application systems.
Most users who apply creative techniques to mobile empowerment find these front-end applications are more than screen scrapers and can be the orchestrating element in their next-generation mobile app design. A worker is represented by a context element in a front-end software component. This element filters worker information requests so they are relevant to the activity at hand and tuned in terms of content and display to worker needs and device limitations.
The notion of a new, mobile-specific and contextual front end to applications can also help solve some specific technical mobile empowerment challenges. Mobile broadband connections are less reliable than wireline connections, for example, so it's important to assure transaction integrity during a session. Connection issues can also result in a loss of state in a multistage user request. It is convenient if the front end can maintain user state and resynchronize the dialog should a connection be reset.
Mobile security and device management are more easily accommodated in a mobile front-end component than they are by making changes to applications expected to support mobile users. If the front-end process is an intermediary between applications and users, it can secure IT resources and validate the state of each device upon connection.
As wireless devices become more significant in empowering workers, the role of a simple Web front-end process in mobile app design will expand radically. The design process will likely become the focus of insuring relevant information to workers and securing IT resources against threats. It's important this new mission is explored the very first time mobile empowerment is raised as a requirement, as it's best to be in front of any revolution.
About the author:
Tom Nolle is president of CIMI Corp., a strategic consulting firm specializing in telecommunications and data communications since 1982.
Advice for building mobile apps for kids
Defining user experience when creating mobile apps
Building mobile apps with purpose in mind