Answer by Thomas Daly:
Like many others in the field, I've been searching for the Holy Grail of prototyping tools. Let me something out of the way first. Yes, pencil, paper, stickies, whiteboard are the first tools one should reach for to wrangle high-level concepts and quickly iterate through ideas. I don't think there will ever be a time when that is not considered a critical step in the design process.
Now that that is out of the way, let's talk about how to share the experience vision with your fellow teammates or stakeholder(s), whether they're sitting in the office next to you, or sitting 5,000 miles away, without the need to describe it with words (which is important, but much less visceral than actually clicking, tapping or swiping your way through a prototype).
That being said, what I have seen most often are exceptionally bright, talented designers that are much more akin to hands-on film directors—or choreographers asdescribes earlier in this thread—that know exactly what a great layout is, and how the UI should behave.
So, assuming that most of us in the field that are tasked with designing experiences do not have the front-end dev skills (and please correct me on that one if you see it differently), we need a way to rapidly convey our vision, without getting bogged down by becoming experts in the front-end technologies of the day, which are ever evolving.
What has worked for me and the teams I've led?
In the past, I led a small UX team that was Omnigraffle-centric. But there came a point when we realized we were doing way too much work using static wireframes. (I love graffle, and use it for sketching things here and there, but no longer use it for prototypes).
We made the switch to Axure RP Pro, and never looked back. This was after exploring the other options out there:
- Balsamiq – great for quick UI sketches, but not great for anything too deep
- Protoshare – beautiful UI, beautifully clean HTML output for prototypes (not production-ready) but ran into many walls with the components and the interactivity that can be achieved with the tool. — I wanted to love it more, but it just didn't make the cut.
- Fireworks – just way to clumsy. It's still got too many Macromedia-esque UI design patterns and although our design team used Photoshop & Fireworks for visual design, it still did not move quickly enough in the prototyping phase.
- InDesign – Using EightShapes "Unify" system. Turned out that using Unify for design deliverables is amazing, and I use it every day, but for wireframing and prototyping it's just not the right tool at all. Way too complex, and the widgets you end up creating are static and cannot handle multiple states.
So far, Axure RP Pro has been the workhorse tool. It's got incredible team collaboration and has a SVN client built into its core so team members can check pages and master widgets in/out (very powerful). The HTML output can be saved directly to a public DropBox folder (how I've been doing it for years!) and become immediately available to all team members and stakeholders across devices.
I've used it to prototype very complex websites, iPhone apps, iPad apps, 10ftUI (ten foot user interfaces) for set top boxes and connected TVs. There is nothing else out there like it, and most of the juice that can be squeezed out of it is not out-of-the box, so there is a learning curve. I've found a way to prototype nearly everything I've envisioned, and whatever cannot be done in the prototype, gets a supplemental written spec (which Axure also handles gracefully via inline interaction notes that can be turned on/off depending on the audience you are presenting.
Since Axure exports to HTML, and can run in any browser without the end-user needing to install a special viewer applications (like Antetype seems to require), it makes user testing super easy. We have conducted internal user tests as well as unmoderated remote user testing with services like Usertesting.com. You can build something in a day, have people testing it the next day, and have the updates done the same day. VERY powerful.
So my vote goes to AXure (at least for now) for the reasons I've stated, as well as for the reasons others have posted earlier in the thread (like industry acceptance/popularity, range of fidelity possible.)
Enjoy! I'm happy to help anyone trying to figure out whether to make the move to Axure.
BTW, I'm not affiliated with Axure in any way. Just a happy user!