Taking desktop applications to mobile devices
mobilising desktop applications
The abundance of smartphones on the market, and our need for greater convenience and flexibility at work means that, for many organisations, enabling enterprise mobility is now firmly at the top of their agenda. David Akka, UK MD at Magic Software, looks beyond the user interface and design of applications, and focuses on the practical considerations in mobilising desktop applications.
The growing trend for smartphones is, I believe, based on sound business principles. Mobility is not only the route to more flexible working practices but also to greater efficiency; this was borne out by a recent study by analyst house IDG, which showed that 65% of employees who use personal mobile devices for business, report greater productivity.
Moreover, in recent years, the traditional concept of the mobile worker has evolved beyond the traditional stereotype of the ‘road warrior’, equipped with smartphone, laptop, pager and a myriad of other devices. Our ‘always on’ world means that it’s just as important to have access to data on mobiles within the physical realms of the organisation. Think, for example, of the customer service manager who is rushing between meetings and needs to make a quick decision on a customer account based on data via their smartphone. Increasingly, executives across many business functions need to access critical data in real time from different applications, with the same speed and ease with which they can from their desktops. Here, we explore some key challenges that need to be considered in order to extend core applications to mobile devices successfully.
Taking desktop applications to mobile devices demands a fresh approach; issues ranging from variations in screen size, multi-handset platforms, back-end connectivity and associated challenges such as performance, are signalling a new era of innovation in development. The overarching principle of transitioning traditional desktop applications to mobile devices is to work with the intrinsic features of mobile devices, so that the user can digest information quickly and easily – it’s not simply about replicating the desktop experience on the mobile.
Whilst there are some limitations to the scope of data that can be accessed and delivered to a mobile, equally there are a host of features, be it GPS or barcode scanning, which can open up new possibilities for how mobiles can deliver a fast, efficient and dynamic user experience. CPU performance tends to be more limited on mobile phones but it’s not about developing ‘desktop-lite’ versions of an application, it’s more about working with the innate advantages that the mobile device offers to create new ways of working and more innovative processes.
Re-engineering the desktop experience
When working on a desktop at a workstation equipped with keyboard and mouse, we can move between different screens quickly to access data from different sources, using our mouse or keyboard to flip between email clients, CRM, ERP or financial systems.
On the mobile, all the information we need at our fingertips has to be digested into one or two screens at the most. This means it’s essential to think about the processes involved in the background and look for ways to make these as efficient as possible, and try and ‘mash up’ all relevant data regardless of the source application into one simple screen. The mobile device screen size also needs to be taken into consideration so that displays aren’t overloaded with information, but presented only with data that is relevant for that task or process.
Taking as an example a purchase order which needs to be processed; the normal desktop process may require checking an ERP system to see that there is sufficient budget to be allocated, checking what the sales figures are, or running a report to see the estimated sales for that quarter. Already, we need to see figures relating to budget, sales and estimated profit which require an estimated three-to- four ‘flows’ of information to carry out this one process.
On the mobile device this all needs to be consolidated into one screen, to make it workable. This means creating a business process that allows for all relevant information to be presented in order to make a decision whether to accept or decline the PO request. In this way, incorporating back-office integration as part of the mobile technology is one of the most important considerations in ’going mobile’. The capabilities to composite data, logic and flows from multiple systems into one screen will help to empower users to make decisions without having to tab through different screens, and ensure wider adoption of mobile applications.
The immediate access to relevant data, in real time, also adds to the value of the application. As well as the application providing a simpler interface on the front end, mash-ups need to provide access to data virtually anywhere in near real time. Offline connections will need to be considered so that, should the user lose connection, they can continue to use the application without any disruption. Ensure, if required, that the applications can synchronise with the server and refresh data with the latest data on the server.
The user interface – keeping data input to a minimum
A central prerequisite in taking desktop applications to mobile devices is about re-engineering processes to keep data input to an absolute minimum, remembering that it’s not just a matter of scaling down an application for a mobile device. Despite huge advancements in the past few years, most mobile devices are simply not designed for heavy data input. What’s more, by nature, when we’re using a mobile we typically have a shorter attention span, so a general rule of thumb is to aim to keep each process no longer than 30-40 seconds. Processes should be intuitive, straightforward and task-oriented.
This can be achieved by working with the extra features in smartphones; be it GPS, compass, camera or voices capabilities, which can help to overcome this and limit the amount of data entry required by the user. For example, a salesperson out on the road may need access to data on which leads are within a certain radius. In the past he would have had to call into the office to access data from a CRM system. Now, by using the GPS sensor on his mobile, he can trigger a process which presents him with data on everyone he could potentially visit within a half-an-hour drive.
Which platform? The shifting mobile landscape
To add to the challenges, the mobile landscape is continually shifting. At present, Android dominates the consumer market, but will the iPhone be the platform of choice for the enterprise? Selecting the right development platform is of course fundamental to the success of ‘going mobile’, but this also carries with it some large degree of risk. You don’t want to create applications for one kind of device and platform only to find that this is obselete in a few years’ time.
However, enterprises don’t necessarily have to make these ‘all-or-nothing’ choices. New platform-agnostic development platforms overcome the need to try and anticipate where the mobile future lies. These engines use precompiled and preconfigured business logic that contains coding functionality and services. This allows developers to bypass the intensive code-writing stage and means that developers can work independently of the underlying platform. It’s an approach which can also automate and synchronise a mobile application with other diverse applications, be it ERP or CRM, without the need for manual line-by-line scripting.
Final tips – the practicalities
Beyond the user interface and design of applications, there are some key practical considerations in mobilising desktop applications – for example, factor in security, design applications to keep data storage to a minimum and consider encryption technologies to protect sensitive data. If a device is lost or damaged, it will be important to enable fast deployment of an alternative. Does your organisation have the support mechanisms in place to be able to deliver this?
Taking all this into consideration, these are interesting times for enterprises taking the next step towards greater mobility and the functionality of smartphones is driving a host of new innovations in the design of applications. In the race to mobilise desktop applications, it’s important to consider how the mobile features can themselves enhance the user experience and how multiple systems can be presented in one screen in order for mobility to be truly successful.
David Akka MSc, MBA is the managing director of Magic Software Enterprises (UK) Ltd. He has been with Magic Software since 1998 and is one of the organisation’s foremost authorities on cloud computing and SOA methodologies. In his five years as managing director of Magic Software UK, David has transformed the sales subsidiary into a high performing business unit within the global group.