I read a post recently, “Seven Guidelines for Designing High Performance Mobile User Experiences“, over at Smashing Magazine (one of my favorite design sites) and wanted to add my thoughts on how this list might be viewed from an enterprise mobile product designer’s perspective. I’ve listed out their seven guidelines and have added my commentary and feedback on each one, below. If you have additional thoughts or suggestions, I’d love to hear from you in the comments.
1. Define UI Brand Signatures
This includes a combination of the application’s differentiators, key functions and core UI elements. Generally, we find it helpful to immerse ourselves in the existing workflow or process, gain an understanding of the variety of users who will be interacting with the application and take stock of the brand & design guidelines, in that order.
The article highlights a great point in that the ‘core signature elements need to be the most responsive’. This is important both due to the frequency in which these elements will be encountered and viewed by a user as well as the need to surface functions in consistent positions while abiding by the platform’s human interface and design guidelines.
2. Focus the Portfolio of Products
More often than not, we begin a client engagement designing first for an iOS device. For enterprise applications that are to be made available across several devices and platforms (and even form factors like kiosks, televisions, etc), we continuously evaluate our design and feature selections to ensure that the user experience is optimal for each user across the desired range of devices.
We’ve occasionally run up against challenges where we fully design and understand the role of a feature in an iOS application, but the corresponding implementation approach is quite different on Android and/or BlackBerry. For this reason, we prefer to complete the design, development and testing of the initial application in order to further refine additional platform-specific designs and allow time for user feedback.
3. Identify the Core User Stories
We’re constantly searching for the primary use cases which ultimately align with the core user stories that aid our engineers throughout an application’s development. Armed with these primary use cases, we can more accurately balance the number of features with a simple, elegant and functional design. As has been said many times before, simplicity is key and it is often the most difficult “feature” to deliver without the benefit of product iterations.
Often, the perception or illusion of simplicity doesn’t translate to actual simplicity of usage. This becomes much more evident in an enterprise context when users are challenged to leave their comfort zone (e.g. pencil & paper, clipboards, etc) and interact with a lesser-understood smartphone / tablet device.
“Design is not just what it looks like and feels like. Design is how it works.” – Steve Jobs
4. Optimize UI Flows and Elements
As a majority of the applications we design and develop integrate with back-end systems, we have to seamlessly handle data transmission, processing and validation. In the case B2B e-commerce apps, we look to accommodate real-time price look-ups and cart-specific promotions, tax and shipping calculations while balancing the disruption to the user’s flow. And with varying network connectivity states, we need to accomplish this in a way that is straight forward when connected and intuitive especially when not.
Speed also becomes an incredibly sensitive and important factor, both in terms of application performance as well as UI responsiveness. For this reason, we amplify our effort to speed up applications by leveraging caching design patterns, platform-specific syncing approaches, visual cues in the form of tooltips and call-outs as well as simple data upload progress bars.
5. Define UI Scaling Rules
We treat this guideline like any other design task by ensuring that the source imagery, graphics and designs are of sufficient resolution to accommodate a majority of the screen resolutions we may be implementing against. On iPhone, we’re certainly designing imagery for the high-resolution retina display and making use of this effort to produce design assets for any corresponding iPad application component. For Android, we’re sensitive to the varying screen sizes and densities (xlarge, large, normal) but also look to incremental Android platform versions to see where we may be able to benefit from a UI scaling perspective.
6. Use a Performance Dashboard
This design-centric performance dashboard is a really interesting concept and something we don’t currently incorporate into our Ideation process. I also like how this artifact looks to communicate performance and design across a number of functional areas like marketing, design and engineering. I’m including it here as reference in case it’s of use to you:
7. Champion Dedicated UI Engineering Skills
In my opinion, UI performance is an under-emphasized area of focus for business-centric mobile applications. For this reason, we look to pair up with our engineering teams to ensure that we intelligently and efficiently load and handle images, graphics, assets, etc and validate our UI decisions from a technical perspective. As we continue to grow, we’ll need to add additional competency for front-end coding within the design team itself. And since I’m always scouting for talented mobile product and graphic designers, reach out to me if you have interest in joining the team!
Mobile Technology Strategist, Lextech Global Services