Wireframes, however, aren't sufficient for displaying the rich experiences that we are designing. We need to embrace tools that simulate the complex interactions of our designs. In short, we need to replace wireframes with prototypes in our design deliverables.
Making Effective Prototypes
In order to evaluate a prototyping tool or technique, we first need to define what makes an effective prototype. The best prototypes are ones that slipstream right into our design process. We want the ability to quickly take sketches from a whiteboard to something interactive.
Effective prototypes are fast. We want to use techniques that allow for rapid iteration. A prototype should not just be bolted onto the end of a design process. Incorporating the creation of a prototype into your daily design work allows new ideas to emerge and validates concepts quickly.
Effective prototypes are disposable. Just like with any design deliverable, we are creating an artifact intended to express an idea to someone else (stakeholder, developer, user, etc). Once that design idea has been communicated, the prototype deliverable can be discarded. We don't have to feel the burden of creating a masterpiece that will live on, and we certainly don't have to work in production-level code.
Effective prototypes are focused. We want to select the interactions of our design that really need to be prototyped. Look for the parts of your design that have of complexity. Look for interaction patterns repeated throughout the user's experience. Look for the interactions that bring revenue to your product. A prototype that demonstrates these interactions will be the best use of your time and energy. At our upcoming workshop, Good Design Faster we are teaching techniques to evaluate sketched concepts for the inclusion in a digital prototype. Use the promo code NEWS for 10% off.
Selecting the Tool
With the baseline set that a prototyping tool must enable us to create effective prototypes (above), we look at our particular organization to see what will fit.
First, let's take a look at or team make up. Does someone on staff have the ability code? Is a Design Technologist a member of our UX group? Do we have a strong relationship with the engineering department that can help create prototypes? What about contract developers who can help out? Identifying our tech capabilities will point us towards coding a prototype by hand or using drawing-based prototyping software.
How large is our team? Are we a UX team of one, expected to research, sketch and prototype on our own? Are we members of a small, tight team that can nimbly iterate through a design prototype in less than one day? Are we part of a large organization that needs to navigate the murky waters of corporate politics and different perspectives with our prototype? Often, the larger the team, the more detail (read: spec) a prototype will require.
Where is the audience for our prototype located? Are they in the same office, glancing over our shoulders? Are they remote? Are they in a country who's time zone is an entire day away? Answering this question will determine our ability to talk through a prototype versus having it be 100% self-explanatory.
Is our UX team in-house or are we members a consulting firm? If in-house, are we integrated deeply with the engineering team or are we a completely separate department? A UX group that's “outside” often has to justify their design concepts a little more.
What is our budget for a prototyping tool? Like most software, the range of offerings covers the range from free to expensive. The best solutions tend to fall within the cheap to mid-priced range. The super-expensive solutions (both in time and money) are often just not worth it.
How flexible does our prototyping tool need to be? Are we targeting just one platform, such as the web? Are we designing for lots of platforms like mobile, kiosk, television, consumer electronics and the web? Many prototyping tools are created with a single output type (usually web) in mind, so we'll either need to select one that we can tweak to our liking or opt for techniques of creating our own prototypes in code.
With the above criteria in mind, I started a list of prototyping tools on Adaptive Path's blog. Head on over to check it out. I encourage you to comment with your own suggested tools and techniques. My hope is that together we can generate a comprehensive selection criteria and menu of prototyping options.
Read my list of prototyping tools (and add your own!)
Get the FeedAdaptive Path News
Get the FeedSelections From Our Blog
Why I am No Longer Calling Myself an Information Architect
Beyond The Desktop
Five Great Experiences to Nurture
History and Context of User Experience Design
What We're Reading
Good Call-To-Action Buttons
Deliverables Quick Start
Wireframing, Mockups and Prototyping For Websites and Applications
Hyperspeech Transfer Protocol
“Jesus Phone 3.0″ Touches Diabetic Blogger