Entries for month: November 2010

Wireframing and Prototyping: Why I Like Axure RP

In the numerous conversations I've had with peers on prototyping and wireframing, various tools are often discussed. While most of these tools are decent for smaller projects, I have found them lacking for larger projects. Most seem to be copies of Balsamiq (which is a compliment to Balsamiq itself), or cost prohibitive for small and medium companies. iRise, for example, is one of the top-rated wireframing tools on the market but requires a minimum investment of $20,000. That's just a touch out of my reach.

About two years ago I came across Axure RP. I gave the trial product a spin and was impressed. I'll tell you why, and why I continue to use it today for nearly all my wireframing and prototyping needs.

First, the product works on Mac and PC (sorry Linux users). Second, the product is $589 per user. If you are looking for free or incredibly cheap, then Axure RP probably isn't for you. If you're looking for high-quality wireframing with a multitude of functionality that improves your workflow and enhances the artifacts you deliver to your team and customer, and the $589 price doesn't scare you away, keep reading.

The first thing you will notice about Axure RP is the UI. If you've ever worked with Visio it's very similar. However, the application, as a whole, doesn't feel as heavy as Visio, and is definitely simplified for a specific purpose: creating website and web application wireframes.Axure RP UI It also provides a Sitemap panel, allowing you to easily add pages and structure to your site, and navigate through the wireframe with ease. Since the panels are fully re-sizable, you can adjust these to fit your viewport as the site's size increases. For very large projects you can pop any of the panels out and display them on additional monitors. I have found this very helpful in content-heavy sites that have many pages.

There is also a widgets panel which allows you to drag and drop components onto a page to describe the UI. The default sets are a bit limited, but Axure provides additional libraries you can add. There are also a number of libraries developed by the Axure community. AxLib, for example, seems popular. Axure also provides a good tutorial for creating your own widgets and widget libraries.

For prototyping, Axure allows you to create interactive prototypes using JavaScript-like functions. There are handlers for OnPageLoad, OnClick, OnMouseOver, OnMouseOut, etc. This allows you to provide rich prototypes of RIAs to your customer and team very quickly, with little or no programming capabilities. You can also provide conditional logic and set variables, if you want your prototypes to be even richer.

If you are working on a large project, you will likely find a use for the Masters, which are essentially templates that you can define for reuse. 

Finally, Axure RP will help you document your wireframes. You can add annotations, which are customizable for your workflow, as well as comments. When you are finished your wireframe, you can generate a specification from your results with a few clicks. This specification utilizes the annotations and notes, so it does requires some up-front work. But the end result, with some practice, can potentially save tens of hours on a project!

There's a lot to learn if you want to maximize Axure's potential. Since I do not work with it daily, I still do not utilize all of it's features. I have found that the training articles on Axure's site have been very helpful in getting up to speed on new features I need, as well as learning about new stuff I didn't realize I had a need for previously.

As a final note, a question I am almost always asked on Axure: "Is the generated code for the prototypes good enough to use?". While the generated code is better than some, I am picky about my code and would never consider using it for actual development purposes. I suppose some HTML cleaner tools might be good enough to fix the code, but I generally feel it is easier to start from scratch that to try to make something work. A prototype should be considered a functional example, and not a base for starting production work.

There's a lot more I could discuss on Axure. Maybe in the future I'll post some additional articles on usage and particular features I find valuable. For me, Axure has been the most productive tool for delivering wireframes quickly and with the least frustration.

Mostly, I hope I introduced you to a tool you didn't know about and find a valuable addition to your workflow.

No Comments Tags: Process & Tooling