Topic : Prototyping

27
Apr 12

Luke Wroblewski on Mobile Inputs

This week I attended Luke Wroblewski’s day-long workshop on Mobile Inputs at the UX Immersion 2012 conference. Here are my notes:

Mobile Input Controls

  • New mobile inputs are not just disruptive — They introduce completely new ways of doing things and totally new things to do.
  • Some designers will tell you not to use text inputs because people won’t type on a smartphone, but people send 4 billion SMS messages every day.
  • When people have something they want or need to do on their smartphone they will use text inputs if they have no other choice.
  • That said, avoid having people type any time you can, but don’t avoid text inputs when you can’t. Always encourage input, don’t limit it.
  • Think of people as one eyeball and one thumb when you design. Their partial attention requires a very focused design.
  • Think of a smartphone as a content creation device, not just a media consumption device. The most popular apps are content creation apps — Facebook, Twitter, Instagram, Draw Something.
  • Try to use the standard input types for mobile websites because they have been optimized for the operating system.
  • When you use standard input types, good things happen, because people already know how to use them. But don’t be afraid to go beyond the standard ones.
  • Try not to use select menus in Android if contents are longer than the screen because people may think their choice is limited to what is on the screen.
  • Try non-standard input types when there are too many taps, like the four required to use the select menu picker in iOS.
  • A stepper is easier than a picker if you have a small range (3 to 5) of numeric choices.
  • Only present input controls when people actually need them. Use progressive disclosure. Don’t hit them with everything up front in a long form.

Touch Target Size

  • Design for a physical size, not a pixel size, due to differences in screen resolution and pixel density. Apple, Android, and Microsoft have extensive documentation and recommendations.
  • Use a minimum spacing between tappable objects as recommended by the operating system developer.
  • Studies show that 80% to 90% of people are right handed, and that about 50% of left-handed people use their right hand to for their phone. Most apps can get away with being designed for right-handed users.

How to Make Input Less Error Prone

  • Use the correct keyboard version for email addresses, URLs, and numeric values like zip codes and credit card numbers. For mobile web this is supported by HTML5 input types.
  • Turn off auto-capitalize and auto-correct for login screens.
  • Use input masks to change people’s input to the correct format. For email addresses, use an input mask that puts @yourdomain.com at the end of whatever the user types and show the person this is what is happening.
  • Use smart defaults (for example, the no tax checkbox is selected by default on eBay mobile).
  • Top align field labels because of field zoom.
  • Don’t remove critical features, like password recovery, from a login screen.
  • Consider just showing the password instead of masking it as asterisks, or show it by default and give the user the option to hide it.
  • Apply the concept of “touch first” and only go to the keyboard when there is no other way to collect the information.

Mobile Web vs. Native Apps

  • It’s not about which is better, it’s about what’s right for the use context and business goals.
  • A mobile website has near universal reach; a native app is a much more richer experience (although HTML5 and jQuery Mobile are changing that rapidly).
  • Designers working on the mobile web should look at apps for examples of controls you could try on mobile websites. The creators of Android and iOS built new operating systems from the ground up so they have had to think about making controls better.
  • Many device features like geolocation and access to a device’s compass are now available to web browsers through APIs. Even greater access to a device’s hardware features is coming in the future.
  • Facebook and Twitter get half of their content from mobile devices, and half of Facebook’s mobile content is from the mobile web.
  • The more app usage occurs, the more mobile web use occurs, and vice versa. They both drive each other.
  • The more people engage with a brand through the mobile web or apps, the more they engage with the desktop experience. Recognize they are all part of a holistic experience.

Mobile Web Advantages

  • Cross-platform reach and near universal access with one code case.
  • Faster development time because well-known web technologies like HTML, JavaScript, and CSS are used.
  • Larger developer pool available.
  • You can update your app at any time and don’t have to wait for Apple App Store review or for people to download the app to get the latest features.

Native App Advantages

  • Deeper hardware access.
  • Multi-tasking.
  • App sales and in app sales.
  • Integrated access with other locations like stores is easier (at least today).
  • Faster performance because much of the UI is already on the device.

Design From a Mobile Mindset

  • If you approach a checkout flow from a desktop perspective you’ll just get a shorter form.
  • If you approach it from a mobile mindset you’ll think about whether or not this person is in a physical store with a device that has a camera and can scan barcodes. Mobile devices can streamline the in-store checkout process.

Voice/Audio Input and Proximity Sensors

  • Android allows voice input to any form that allows text input.
  • Apple has Siri, and it is rumored Apple may open Siri APIs to programmers at the Worldwide Developers Conference in June.
  • Shazam and IntoNow use ambient sounds around a person as audio input.
  • If you put an iPhone next to your face during a call the proximity sensor hides the keypad so you don’t “cheek dial”.
  • With proximity sensors “every object in the world is now an input”.

Device Sensors for Input

  • Instapaper speeds up or slows down scrolling speed when you change the pitch of the device, allowing people read at their own pace without swiping.
  • Nearest Tube uses device motion, GPS, and the compass to show nearest London Underground station.
  • Google Goggles and FitBit are also examples of using hardware features as inputs.
  • The Android Galaxy Nexus, the first phone to come with Android 4.0 installed, uses facial recognition for its Face Unlock feature.
  • A proposed addition to the GetMediaUser API would open this to web browsers.
  • While Windows 8 is a desktop operating system, it allows people to create logins by logging custom gestures on lock screen images, for example drawing a line from a child to a pet on the picture. This is a very human solution to login problems. It’s like telling the computer “Hello, it’s me, let me in.”

Gestures for Input

  • Multiple finger gestures: two-finger drag moves an object, three-finger drag moves an entire pane in an app, four-finger drag moves the user between apps, and five-finger drag invokes operating system functions. However, these are emerging pattern, not universal rules.
  • Teach in context to help people learn how the app works when they need to know it, not in some large upfront tutorial (the Clear app does both).
  • Use content as navigation to remove as much chrome as possible.

Luke Wroblewski is the author of Mobile First. You can follow him on Twitter at @lukew

26
Apr 12

Mobile UX Design With Rachel Hinman

This week I attended Rachel Hinman’s day-long workshop on The Mobile Frontier at the UX Immersion 2012 conference. The conference, a new gathering arranged by User Interface Enginnering, featured deep dives on mobile and agile development. Here are my notes:

There are Many Similarities Between Mobile and Desktop UX Design

  • Many of the tools and techniques we use are the same.
  • We sketch.
  • We prototype.
  • We need to learn what our users need and want.

But There are Also Differences

  • A phone is not a computer.
  • There is no sense of having windows or UI depth.
  • There is a smaller screen for user input and new inputs based on context and device sensors.

How a UX Designer Transitions to the Mobile Mindset

  • Buy a device and integrate it into your life.
  • Know the medium and become mindful.
  • Participate in the experience.
  • Brace yourself for a fast and crazy ride.
  • This is an emergent area of user experience so nothing we do will be constant for long.
  • Embrace ambiguity, it’s fun and exciting.

Context is complex but is essential to great mobile experiences

  • The mobile context is about understanding the relations between people, places, and things.
  • Relationships between people, places, and things are spatial, temporal, social, and semantic.

Designing for Contexts

  • Design for inattention and interruption.
  • The mobile use experience is snorkling, the desktop user experience is scuba diving.
  • Reduce cognitive load at every step in the experience.
  • Ideate in the wild — you can’t innovate in mobile from behind your monitor.
  • Ruthlessly edit content and features down to what’s essential.

Sketching

  • It’s a good way to develop ruthless editing skills.
  • You can change a design quickly at little cost.
  • No expert skills needed.

Prototyping

  • The exercise helps designers new to mobile who do not yet know the heuristics and constraints of the medium.
  • It’s essential for mobile UX because the medium is so new.
  • If you are prototyping for a desktop app and a mobile app, allocate to mobile triple the amount of time you devout to the desktop.
  • Prototyping helps you fail early and fast.
  • Because a mobile experience is so contextual and personal, explore techniques like body storming and storyboarding.
  • Prototyping is a great way to fail when it matters (and costs) the least.
  • Desktop prototyping is a luxury, mobile prototyping is essential.

Graphical User Interface vs. Natural User Interface

  • We are at a pivotal moment in the design of user experiences — the NUI/GUI chasm.
  • A GUI features heavy chrome, icons, buttons, affordances; what you see is what you get.
  • A NUI features a little chrome as possible and is fluid so content can be the star.
  • As UX designers we need to work to eliminate chrome, not make the chrome beautiful.

Motion as a Design Element

  • Animations and transitions can teach users how the information unfolds (see Flipboard).
  • Motion brings fun to the party, and who doesn’t want to have fun.

Rachel Hinman is the author of the forthcoming The Mobile Frontier. You can follow her on Twitter at @hinman

30
Mar 12

Book Review: Axure RP 6 Prototyping Essentials

Published: January 2012 (Packt Publishing)
Paperback: 446 pages

I just finished reading the first book I’ve ever seen devoted exclusively to user experience design using Axure RP 6. Axure RP 6 Prototyping Essentials by Ezra Schwartz takes readers through project examples with step-by-step instructions for creating highly realistic interactive prototypes without writing a single line of code.

Unlike other prototyping books that address multiple tools, this one is focused solely on Axure.

Axure RP 6 Prototyping Essentials

Axure RP 6 Prototyping Essentials

Annotated Screen Example

Annotated Screen Example

Schwartz’s book introduces using Axure to create simple website wireframes and prototypes before moving on to more advanced topics like:

  • Using session-persistent variables in simulations
  • Using raised events
  • Conditional logic and behaviors
  • Dynamic panels
  • And much more

The book even addresses topics like simulating keyboard shortcuts for desktop applications through a technique that leverages hidden form fields. It is full of clever and well-illustrated examples.

There are also entire chapters on generating specification documents, using the team collaboration features of Shared Projects, and creating custom UI widgets for shared pattern libraries. There also is a brief section on prototyping for mobile devices (an area of functionality that has been improved in the recent Axure 6.5 Beta).

Axure RP 6 Prototyping Essentials also addresses important areas of the prototype planning process like object naming conventions and other things to consider if you are building highly interactive prototypes or working on a team project. While developers will understand why you need naming conventions for your objects, it’s not something UX designers usually think about, especially if they are more experienced with producing static wireframes. The coverage of pre-planning activities is extremely useful if you are new to Axure.

The book is available in both e-book and printed formats and is a great starting point if you have little to no familiarity with Axure. You’ll quickly see why Axure is one of the most widely used software tools for user experience design. A word of warning — it is helpful if you are familiar with the user centered design methodology and its focus on iterative designing and testing, which is discussed in the first chapter.

Whether your skill level with Axure is novice, intermediate, or advanced, you’ll find valuable techniques and best practices in Axure RP 6 Prototyping Essentials.

11
Mar 12

Great New Features in Axure 6.5 Beta

The beta version of Axure 6.5 was released recently and includes some great new features for mobile prototyping, especially simulating iOS apps.

Axure 6.5 Beta Demo

Axure 6.5 Beta Demo

Some features I’ve already explored:

  • A home screen icon for iOS can be imported into a project as a PNG
  • A splash screen that displays when your “app” first loads also can be imported
  • Full-screen display mode for prototypes launched from the home screen icon
  • Dynamic panels can now be “pinned” to the browser to allow simulation of a fixed tab bar with content that scrolls from underneath it
  • Black or translucent status bar
  • An iOS-style arrow button shape
  • Support for drag and drop
  • Left and right swipe events

Your prototype is still created as HTML and displayed in Mobile Safari but the full-screen mode allows you to simulate a native app’s appearance. To test your design on anyone’s iPhone or iPad just place the files on a publicly available web server or Dropbox and access them with the browser. You have to add the app to the home screen to get the icon on the device and launch in full-screen mode.

The biggest problem I’ve had with the beta is that scrolling actions can pull the simulation away the browser’s edges. This is not a real problem for a prototype being used for usability testing or requirements demonstration, but fixing it would make your simulations seem even more native (it also may be possible already and I just haven’t got it yet).

All in all the new version of Axure is pretty exciting. It’s fast become the best tool short of HTML coding for mobile prototypes.

To learn more about the new 6.5 beta consider attending the Chicago IxDA monthly chapter meeting on Wednesday at Critical Mass. I’ll be giving a short talk on Axure for mobile prototyping.

To view my demo, a screenshot of which is included with this post, point your iOS browser over here.

You can also download my RP file, which was craeted in the 6.5.0.2981 build.

Happy prototyping!

14
Aug 11

Axure for Mobile Prototyping

I recently developed a small prototype for usability testing of some new mobile website functionality using Axure RP Version 6. Here are a few things I learned:

  • If possible, use Axure RP Version 6. It has mobile settings under the Generate Prototype menu that will save you from having to manually add to each page the HTML viewport meta tag every time you generate a new prototype. Screen shots of the settings panel are at the bottom of this post.
  • Generate separate viewport tags for iOS and Android browsers like below:
    1. iPhone: <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=2.0, user-scalable=yes"/>
    2. Android: <meta name="viewport" content="width=480, target-densityDpi=device-dpi"/>
  • For iPhone, you can design your prototype at 320 pixels wide for older devices. iPhone 4 will scale it up to 640 pixels wide so the prototype has the same appearance no matter what version of the iPhone your participant is using.
  • For Android smartphones, design the prototype at 480 pixels wide. Tablets are another story and my testing did not include them.
  • To create accordion effects on interface widgets, a common design pattern on mobile websites, you can use Dynamic Panels and Axure’s OnShow event with the Move action. See the advanced dynamic panel tutorial on Axure’s website.
  • If you are opening the prototype on an iPhone from a home screen icon and want to hide the URL bar, use this meta tag:  <meta name="apple-mobile-web-app-capable" content="yes"/>
  • Test on as many target Android devices as you can. The Android viewport tag worked on most devices I tested, but not all. The differences in Android pixel density and screen resolution necessitate more testing than is needed with Mobile Safari on the iPhone.
  • Keep in mind you are building a prototype. It doesn’t need to work perfectly on all devices if you can just ask the test participant to zoom in during the session if needed. You should be explaining that they are interacting with a prototype as part of the test script so this should not be a problem.

For more on the iOS viewport, see Apple’s iOS Developer Library.

For more on targeting different screens size on Android, see the Android Developers Site.

Axure Settings for iPhone

Axure Settings for iPhone


Axure Settings for Android

Axure Settings for Android

18
May 11

Drop Shadows for Menus in iRise

Sometimes you just want your menus to have a drop shadow. So in an effort to push the fidelity of an iRise simulation to a higher level, I recently created a simple menu Master that uses sections to display the kind of drop shadow you’d normally handle with CSS3. It was a little more labor intensive than CSS, but fairly easy to do once the menu bar was laid out.

To make the menus as easy to maintain as possible, the drop shadows are applied in the Master and the shadow color is handled in the Style Manager. Mouse events are used to toggle the drop shadow sections on and off with their associated menus. The screen capture below shows everything you need to know to mimic the effect of CSS3 drop shadows. And if you wanted an even richer display using rounded corners and a gradient drop shadow (like Mac OS X) , a transparent PNG could be used.

Creating Menu Drop Shadows in iRise Studio for Mac

Creating Menu Drop Shadows in iRise Studio for Mac

28
Apr 11

iRise for Mac Alpha Testing

I recently started testing iRise’s Studio for Mac alpha release.

For the most part the interface is consistent with the Windows version. I was able to create projects in both Mac version 8.7 and Windows version 8.6 and open and modify them in each other. The Mac version has support for iBlocs, although the interactions for setting widget properties was a little wonky and unintuitive at first (at least for the iframe iBloc I tested). Datasheets, masters, and other functionality was working as expected.

The biggest bug I encountered was hidden fields not passing values in both Safari 5.0.5 and Firefox 4.0. This is a major bug for me because I frequently use hidden fields to pull datasheet values on to a page without displaying them and then pass them through to other pages on link or button clicks to maintain state within a simulation. Hopefully this one gets fixed soon. The other major functionality missing is no connectivity to the Definition Center, iRise’s central repository for shared projects. This is completely understandable as I imagine the development team is focused on getting Studio stable before tackling Definition Center.

All in all, I’m impressed with the alpha so far and am glad to see iRise finally adding support for the Mac.

iRise For Mac

iRise For Mac

28
Dec 10

The Right Tool at the Right Time

Someone on the Interaction Design Association’s LinkedIn group recently asked how other people were using wireframes at work. This inevitably led to the age-old question of what is “the best” wireframing tool. Not only is there no best tool, but it’s not really a good question to begin with. The question should be what tools are best for the different phases of a design project.

For example, I use iRise on my job at Cars.com. iRise is an extremely powerful prototyping tool that allows you to build dynamic prototypes with real data records behind them. It’s one of the best prototyping tools available, but it’s also time intensive to use and not geared toward the early exploration of ideas.

For early product ideation the good old sketch pad or white board still work best. Sketching is fast, cheap, easy, and accessible to your business partners so they can participate in design exercises.

Balsamiq is also great for rapid idea generation, but you need to have a computer handy with the software installed. And it won’t work for impromptu design sessions in a conference room or coffee shop. The mechanics of working with the program can get in the way of the creative design process.

OmniGraffle and Visio have their place when you need to create annotated wireframes that can be easily printed or shared electronically. Where wireframing fails is in showing interactivity. To demonstrate rich interactions using Ajax or HTML5, it’s probably best to code it in HTML or create a quick Flash prototype.

And, of course, time and financial constraints will also influence what tools you use. For a more comprehensive look at the many wireframing and prototyping tools available, see Holger Maassen’s recent post on UX4.com.

5
Jun 10

Axure: Mac to Windows and Back

I’ve recently been testing how well Axure RP handles project files that are moving back and forth between Mac and Windows.

The initial results have been pretty exciting. All the interactions and conditional layers added on one platform are preserved when editing the project file on the other platform.

Since Axure released version 5.6 for Mac in April this popular prototyping tool can now be used by teams that are split between Mac and Windows users — perfect for a team in which the visual designers use Macs while the UX folks and developers use Windows. Shared projects can be accessed by both platforms for file versioning and page check-in/check-out.

Below are screen grabs from Mac OS X 10.5 and Windows 7. These are from the Movable Web reference project I’m building that will attempt to implement as many of Axure’s features as possible on a fictitious website/blog focused on mobile applications. More on that later this summer.

Axure’s license is user based and allows two installs, which is how I use it on Mac and Windows 7. And the license includes a 30-day free trial so you can test drive it before committing to a purchase. If you are a student with at least a 3.0 GPA you can get a free license through Axure’s Good Student Program and UPA members also can get a discount.

Axure RP 5.6 for Mac

Axure RP 5.6 for Mac

Axure RP 5.6 for Windows

Axure RP 5.6 for Windows

2
Apr 10

iPad Prototyping Tool

Teehan+Lax, the awesome team that brought us the iPhone GUI prototyping PSD, has stepped up again with their iPad GUI PSD.

I used their iPhone GUI PSD about a year ago in an HCI graduate class project and was able to create some very polished comps that our project team used for medium-fidelity prototype testing once we glued the printouts of the app to iPhone shaped foamcore cutouts. I won’t be standing in line Saturday waiting for an iPad, but I know where I’ll be turning if the opportunity comes along for an iPad design project. Enjoy!

iPad GUI PSD

iPad GUI PSD