WireframeSketcher: An Eclipse Plug-In

Presently, I am the administrator of SCM AllFusion Harvest. SCM AllFusion Harvest is a process-based Software Configuration Management (SCM) tool for managing application source code. I manage 130 applications housed in SCM AllFusion Harvest and support 200 users using the product. The development tools we currently use in our development environment are PowerBuilder PBV8, PBV11; Visual Studio 2003, 2005, 2008; and Eclipse Europa.

As the Software Configuration Manager (SCM), I provide the administration of the source code management tool. This includes creating the Harvest environments, developing life cycles, environment phases, processes, users, user groups, access to environments, loading repositories, documentation; maintaining build machines; providing best practices; and training all users on proper source code management using the development tools in our environment.

This article will focus on a product called WireframeSketcher developed by Peter Severin. When Peter first contacted me several months ago to write an article about his product I was hesitant at first:

This is not a product that I personally would use.

I generally write about products that I know, have used and like.

I'm not a developer so I was concerned about accurately defining and describing the product to the user community.

I wanted to be able to write something that would do justice to the product.

After some dialogue with Peter, I decided to write the article from a broad viewpoint with Peter's help in ensuring the product was defined and described accurately to the user community. He understood my reluctance and agreed to support me on the effort to review his product. I'm pleased that we decided to take this approach as it helped me to understand his product better; this article provided a forum by which he could tell the user community how wonderful this product is and how it can help a developer quickly create prototypes for any development work that needs to be tackled. This product streamlines that process and cuts cost, time, energy, effort, and resources for any organization and, in these difficult economic times, saving money can mean saving jobs and keeping overhead down. As I began to understand the value of this product, I quickly realized the need to make sure that the development community at large is aware of this diamond in the rough.

I want to begin with a couple of observations about the product before I get into the product overview. I am a fan of products that:

Are easy to use

Interface easily into other development tools

Work right out of the box without a lot of overhead

If a product doesn't have any of these attributes, I find that most organizations won't use them because they just don't have the time to invest all their resources into learning a product. If they are too labor-intensive, no one will use them and that certainly defeats the purpose of using the tool in the first place.

As I have stated in previous articles, the easier the tool is to use the more likely that folks will use it; especially if it integrates seamlessly with other products. WireframeSketcher falls into the low overhead product category for me. This is a very easy product to use. I felt at first view that this tool was easy to understand, use and implement, so cheers to Peter for understanding the marketplace and developers' needs.

DescriptionWireframeSketcher allows you to quickly create wireframes and mockups right within the Eclipse IDE. Wireframes are put together by laying out pre-drawn widgets using a familiar drag-and-drop interface. There are widgets to represent buttons, combos, trees, tables and many more. While dragging widgets conveniently snaps to nearby edges, which makes the layout task quick and efficient.

Created wireframes have an intentionally bare look to them so they can't be mistaken for a real application (see Figure 1). This is important for getting good feedback on function and not on presentation. In this phase you don't want to spend a lot of your time with customers arguing about the choice of colors or button graphics. It's all about the desired functionality at this point.

Wireframes and mockups can be quickly exported to PNG so that they can be used in your own documents, sent by email, or uploaded into your issue-tracking software. Being able to secure and control your wireframes and mockups is a wonderful feature. It provides efficiency and precludes the loss of any development activity during the design phase.

Wireframe files use an open XML format, which is great for placing them under version control and sharing them with the rest of the team. This is what I'm all about - securing and controlling any asset that at the end of the day either becomes an organization's profit or is an asset that becomes the family jewels, as I like to call them. If it were not for these assets being secured and controlled, the organization's effectiveness to its customer base would be at risk.

Installing the Plug-InThe plug-in is fairly easy to install thanks to the Eclipse update manager. Just add the specified update site and the Eclipse IDE will take care of the rest.

The Eclipse IDE is not the only option and you can install WireframeSketcher on a wide variety of development tools: Aptana Studio, Zend Studio, MyEclipse, Flex Builder and probably other Eclipse-based tools.

Project Explorer is where you can see the contents of your projects. Wireframe files (files with .screen extensions) use a distinctive icon.

Palette is where all the available widgets are. Widgets are organized in several categories for quick access.

Outline view gives a handy overview by listing all widgets used in the current screen.

Properties view lets you quickly inspect and change the properties of selected widgets. Most actions can be done in a single click.

The Eclipse IDE allows you to customize every aspect of this layout. If you prefer the palette on the left, that is easily accomplished. You can do more advanced things like floating the Properties view or auto-hiding the palette.

Widget LibraryWireframeSketcher comes with more than 45 widgets, which should cover most of your needs. There are buttons, check boxes, trees and tables, etc. (see Figure 3).

The text displayed by widgets can be easily changed by simply editing it in place. The Image widget allows you to insert your own resources such as logos. It also can be used as the last resort for inserting elements that are not provided by the library. With just one click you can turn your color image to black and white to make it blend with the overall look of the wireframe.

There are widgets that simplify the task of annotating mockups. You can easily add a post-it note with some comments or insert call-outs that you can refer to later in your own documents (see Figure 4).

Advanced FeaturesA unique feature of this software is how it handles masters. Masters is a common functionality that lets you share bits across multiple screens. When wireframing a website, you'll usually want to use masters for page headers and footers.

With WireframeSketcher users do not have to worry about defining masters up front. Instead, screens are simply created and if the user wishes to reuse a screen as a master, the screen is inserted as a "Master Screen" object anywhere on a new screen.

What is also interesting is that with this approach, users can combine multiple master screens, getting even more flexibility.

Another advanced feature is the possibility to use a wiki-like syntax to style widgets. You can do basic things like making bits of text bold, italic or underlined, but also some advanced stuff like creating links and inserting icons (see Figure 5 and Figure 6). The possibility to insert icons is particularly interesting as it gives widgets a lot of flexibility.

StoryboardingWhat sets WireframeSketcher apart from other products of this nature is its storyboarding mode. Basically, wireframes can be organized in a linear fashion into presentable stories. This feature is the middle of the road between static wireframes and full-fledged interactive prototypes. With storyboards you can easily show how the interface changes as a result of user actions (see Figure 7). Things like dynamic pages controlled by AJAX can be easily formalized with this approach.

Presentation ModeWireframeSketcher comes with a built-in presentation viewer. It works in similar fashion with the slideshow feature found in PowerPoint. Just hit F5 to open your mockups or storyboards in full screen. This is particularly useful when working with a projector and it allows users to get useful feedback without resorting to an external tool.

Behind the ScenesWireframeSketcher was started in 2008 by Peter Severin, a developer based in Romania. Peter runs what's called a MicroISV - a one-man software shop.

The nice thing about this product is that you can talk directly to the developer without jumping through hoops, as is often the case with big companies. The product is essentially shaped by user feedback.

WireframeSketcher is a commercial product; however, Peter freely donates licenses to non-profits and to people involved in non-commercial activities. The commercial nature of this project lets the developer stay motivated and update and evolve the product on a regular basis. If you follow the product blog you'll see that releases are made every two weeks, which keeps the product fresh and up to date with user feedback.

ConclusionEclipse is the tool of choice for many software developers and wireframing should be an integral part of the development process. WireframeSketcher allows developers to effortlessly extend their toolbox with a high-quality wireframing solution. The Eclipse platform makes the same tool available on Windows, Mac OS X andLinux. The availability of WireframeSketcher is not limited to Eclipse and it can be easily installed for Aptana Studio, Flex Builder, MyEclipse, Zend Studio, and other Eclipse-based tools.

I found this product easy-to-use with a straightforward GUI. It makes use of standard activities and functionality that developers use regularly. WireframeSketcher integrates into the Eclipse IDE seamlessly. It's a simple and affordable solution for development shops that I think is worth a look.

Al Soucy is software configuration manager at the State of New Hampshire's Department of Information Technology (DoIT). In that role Al manages software configuration for dozens of PowerBuilder applications as well as applications written in Java, .NET, and COBOL (yes, COBOL). Al plays bass guitar, acoustic guitar, electric rhythm/lead guitar, drums, mandolin, keyboard; he sings lead and back up vocals and he has released 8 CDs.

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.