Do Not Port Your Desktop Application! Think Devices!

Mobile applications should be designed for mobile devices from the start and not ported by removing pieces of a desktop application until it fits onto a device. Mobile device applications may share information sources and broad purpose with desktop applications, but beyond this the two classes of applications have little in common. It is important to decide the scope of the mobile application and then design from the ground up.

A myth that is worth dispelling is that mobile devices will replace personal computers; there seems to be no practical evidence to support this. To be successful in creating great mobile applications, think of mobile devices as augmenting existing software with new mobile behaviors as well as creating entirely new classes of software rather than replacing existing desktop or Web software. People use mobile devices in qualitatively different ways than they use desktop computers.

Think of working with a word processor, doing e-mail, shopping for airline tickets on the Web, or programming with a software development tool. All of these are rich exploratory activities that often involve long sessions at the computer. It is not uncommon during a session with a desktop or laptop computer to pull information together from several different sources and use applications in an ad hoc way. Good mobile device software, on the other hand, provides the user with a focused, task-centric ability to zoom in on needed information during short usage sessions. For example if the user wants to quickly make a phone call they’ll be frustrate of trying to look up an address on a badly designed mobile device address book. 10 seconds is a frustratingly long time to fiddle with buttons and navigate user interface when trying to initiate a phone call. Mobile devices are about portability, about always being on, and about quick access to information and services.

It is important to specifically consider the usage patterns and specific circumstances of the people who are going to be using the software. Is the application going to be used in a delivery truck right after a package delivery is made? Will the application need to be simple enough to be used by people while walking down crowded streets or will people use it while sitting down in someone’s office and looking up complex data? Is the application going to be used during a flight, where communications will need to be cached until connectivity is available? Is the application going to be part of a package, where the same person uses the desktop and mobile device software, or will the people using desktop computers and mobile devices be separate and united only by the data they work with? What is the level of experience the target user has with using other computers and applications? Will the user interface need to be simplified to take user inexperience into account? If your application requires a certain kind of user interface, this may have a strong effect on the hardware and form factors you choose for your application. This will not only help you determine the right features and user interface for your mobile application but may also help you choose the right target hardware for your mobile solution.

Leave a Reply