A Monthly Article from our Speakers
Current Article of the month
Designing Successful Mobile Applications
by James Hobart
As with any emerging technology, we are in a period ofdiscovery with mobilecomputing. Usability plays a major role in this discoveryequation. Bestpractices still apply, but they need to be mapped to a newparadigm - themobile interface.
This year many large organizations are deploying mobilesolutions to thefield service workers and attaching mobile solutions toleverage existingERP implementations. The end users who ultimately strive to be moreproductive with this new breed of user interface will largelydetermine thesuccess of these mobile solutions as the wireless internet becomes areality.
Our work on several large-scale enterprise mobile designprojects has led dosome discoveries in the area of usability, which seem torepeat themselvesacross several vertical industries. We have a lot more tolearn, howeverthe following ideas should help shed light on the process of creatingsuccessful mobile interfaces.
Importance of Form Factor
We view the form factor of the mobile device as an integralpart of thepresentation model look and feel of the mobile solution. Ourresearch todate as shown telephone form factors to be overly restrictivein all but thesimplest of tasks. Palm and CE devices allow for a largerinterface howeverour experience to date in running either Java applications or browserapplications has been somewhat disappointing. Specifically,we have foundthat the limited screen real estate and limited processingpower of thecurrent palm devices to be very restrictive for performing moderate tocomplex line of business applications. In addition, we havefound stabilityissues in running the latest release of J2ME (Java 2 MicroEdition) on thesedevices. Mid-size devices like the Epoch Psion allow fordirect keyboardentry and better Java support, however the larger thanpalm/CE form factorcan be a problem in some deployment scenarios.
Decouple the User Interface from the business logic
Many of the new mobile applications will need to support‘occasionally’connected users. This need presents significant datareplication/synchronization issues for enterprise systems.Our experiencehas been that by using a ‘best practice’ of decoupling theuser interfacefrom the data and logic layers, your team will have moreflexible options indeploying your back-end content with a variety of front-endmobile devices.In using this approach, your team can implement an XML-basedmessage formatto exchange data between the server and various client devices.
Rethink your interface design
Transferring your existing client/server or web design into a mobileapplication can be difficult. Mobile devices support a widearray of screensizes and resolutions. You will also need to support bothhorizontal andvertical screen layouts. The most troublesome usabilityissues arise whenwe try to implement complex multi-step tasks so common with enterpriseapplications. For instance the task of capturing the detailsof a salesorder for a mobile sales professional can be very cumbersome and timeconsuming compared to a paper-based method or traditionalfull-sized laptopsolution. Implementing complex tasks such as this require arethinking ofyour design and the methods used to collect the sales orderdata. Use ofadditional defaults, role-based personalization of the userinterface andextensive use of progressive disclosure techniques to shieldnon-importantdata from the user is critical for creating usable complex mobileapplications. In addition, normal navigation and contentdisplay must berethought to deliver clear concise content with minimalnavigation menus sothat the limited display area can be devoted almost entirelyto the contentin front of the user. Of course, complex desktop interactiontechniqueslike drag and drop and multi-window display must becompletely rethought andaddressed with visual design patterns more suited for thelimitations of amobile deployment platform.
Perform Usability Testing
Maturity of best practices and known successful design layoutfor mobilecomputing is still in the formative stages. New mobiledevices are beingintroduced at an ever-increasing rate with little effort given towardindustry standards in display size, button placement, andphysical formfactor. As your team establishes new designs to address yourmobile workforce, you will need to move beyond the environment of each developerpromoting a particular opinion on interface design styles andvalidate yourdecisions with formal usability testing. This process will provide astatistical and factual basis for your design decisions andmore adequatelyensure your design will be successful when deployed in the field. Ourexperience has showed that field workers expect their mobiledevices to beboth intuitive and reliable and expect to use their newmobile applicationswith little or no training.
Implement Mobile Design Standards
Once you have established successful mobile design patternsand validatedyour assumptions with formal usability testing, you will needto documentand capture these best practices to leverage your design workacross allteams in your organization. These standards, checklists and developerresources should be stored in a centralized web-basedstandards repositoryavailable to your developers, product managers and otherstakeholders withinfluence over the user interface of your mobile solutions.A self-managingprocess will need to be implemented which encouragesdevelopers to followand use the standards ensuring consistency and high levels ofquality acrossthe various applications deployed on your mobile devices.
Successful deployment of your mobile applications willrequire a very closeworking relationship with your end users and product managers. Mobilesolutions are deployed on very personal devices that are used whileperforming other tasks such as driving, walking and meeting with otherpeople. If your design forces the user to focus on theinterface and notthe task at hand, lower productivity and poor user acceptancewill likelyresult. Creating a seamless interface with the proper formfactor andmatched with appropriate user tasks can create a veryempowering environmentfor your end users enabling them to gain significantproductivity benefitsfrom the emerging wireless web.