Tuesday Oct 30, 2007

openInstaller User Interface Design

Jen McGinn is an interaction designer in xDesign who is working to improve the user experience with the Java Enterprise System installers. She has an MS in Human Factors in Information Design and works out of Sun's campus in Massachusetts.

Last year, one thing I did was to work with a team of Sun engineers and UI designers to create a set of branded interaction guidelines for desktop applications.

[aside] Two weeks ago, I posted an interview with the folks behind the web application guidelines — those are different, because they focus on UI components used in a browser, not a desktop application. [/aside]

The interaction guidelines that I worked on were not component-oriented, but task oriented. Another colleague led the effort on branded system startup, and I led the branded installation guidelines. We may see those guidelines go public at some point, but until then, you can see them in action in the New Solaris Installer (NSI) and the openInstaller framework — even the OpenDS Installer took on some of the guideline design, even though it's a web application.

The openInstaller project team describes the effort this way: openInstaller is an open source community project building a free and comprehensive next generation installer framework. Initial development of openInstaller was done by Sun Microsystems, but is now available under the open source Common Development and Distribution License (CDDL). What's really cool that's not in that statement is that the framework is all Java + XML. I've looked at their code, and if you know a little Java and XML, you can create an installation program quickly and easily. 

From an interaction standpoint, there are a few things that I'm particularly happy with. One is how software licenses are presented to the user. Another thing that you may notice is the placement of buttons. The most frequent interaction is placed bottom right, and then other buttons are organized by projected frequency of use from right-to-left. This organization supports the visual scan patterns of readers of most languages better than button placements that we often see, which are grouped in the bottom right-hand corner, but require the user to read all of the button labels from left to right, to find the most frequent interaction.

openInstaller screen

From a geeky coolness factor, the openInstaller is written in Java and XML that even I find understandable, and the output of that code is two-fold: not only does it render a GUI, but it renders a command-line CUI, that is comparable to what the user would see in GUI mode. As a result, installers written using the openInstaller framework are easier to develop, maintain, and use.

Monday Oct 15, 2007

The Sun Web Application Guidelines go public!

A few weeks back, I had the opportunity to sit down and chat with my colleagues, Chip Alexander and Karen Stanley, about the Sun Web Application Guidelines.

Picture of ChipChip Alexander is the User Interface Architect for Sun's Web Applications and co-led the user interface design for the Java Look and Feel Design Guidelines: Advanced Topics.  He has 21 years of experience designing intuitive user interfaces and leading user interface design teams, 6 of them here at Sun.

Picture of KarenKaren Stanley is the former Project Manager of the Web Application Guidelines, and has been the lead for making the guidelines available externally. She has worked in the HCI field for 20 years, with experience designing software applications and user interface components, usability testing, and project management.

Jen:  Chip, Karen, how do you describe what the Sun Web Application Guidelines are?

Chip: They are a set of building blocks for web applications that have been designed by user interface specialists, thoroughly thought through and usability tested.  They can be used for developing full web applications, allowing designers and developers to focus on their application's particular needs rather than the design of all the controls and elements inside.

Jen: So how long have they been under development at Sun?

Chip: Over six years -- they were started by Robin Jeffries (now at Google) and Tom Spine (now at AutoDesk). The guidelines came first and then the User Interface Review Board (UIRB) was established to help ensure compliance with the guidelines.

Karen: Tom and Robin started seeing applications built for the web, but every group in Sun was designing them differently. Tom saw an opportunity to align the look and feel of web applications at Sun before things got too out of control, so Sun could show a single face to the world.

Jen: Over the years, who else has contributed to the guidelines?

Chip: I've been the architect for the team for the last 5 years or so, and the project management was done by myself, then by Karen Stanley, and now by Liz Clayton. We have the full list of contributors included in the guidelines.

Jen: I know that the guidelines have been Sun-internal all this time, so why are we releasing them now?

Karen: The project Woodstock components are available under an open source license, but there are no guidelines on how to use them. We wanted the open source community to benefit from the guidelines. We've had a close relationship with the Woodstock team during the development of the components — there's been a lot of give and take, back and forth.

Chip: The Woodstock web app components are based on the guidelines, which explain the specifics of how and when or where to use them. The benefit is that web app developers can draw on our design expertise and years of work, giving them more time to build their applications.

Karen: And to see how the designs were intended to be used. We're trying to share our internal work, so that anyone using the Woodstock components will have examples of the components being used in context. The guidelines provide numerous screen-shots showing the components used in the context of an application.

Jen: So why not publish the guidelines as a book, like Sun did with the Java Look and Feel Guidelines?

Karen: The environment is changing. Mary Lautman, the manager of the Woodstock team, has been asking for these guidelines to go public since the components went open source. The amount of work it would take to publish the guidelines as a book is prohibitive. It would take too long — they would be out of date as soon as they were published. This way, we can update them more quickly. The guidelines can be revised as the Woodstock components are revised. Not creating a book and instead releasing our work to the public allows more agility for Sun and ensures that web app developers always have the most up-to-date tools for building their applications.

Jen McGinn is an interaction designer in xDesign who is working to improve the user experience with the Java Enterprise System installers. She has an MS in Human Factors in Information Design and works out of Sun's campus in Massachusetts.

Monday Aug 06, 2007

Open DS Installer Breaks New Ground

Jen McGinn is an interaction designer in xDesign who is working to improve the user experience with the Java Enterprise System installers. She has an MS in Human Factors in Information Design and works out of Sun's campus in Massachusetts.

Brian Ehret is an interaction designer working on Sun's identity management products. He has a Ph.D. in cognitive psychology and works out of Sun's campus in Colorado.

Recently, I had a talk with Brian Ehret, the UI designer behind the web-based installer for our open source directory server, OpenDS. The really compelling thing about this installer (and it's hard to really make an installer compelling) is that it's launched right from the browser, so the user can configure the directory server properties without manually downloading a local installer application; everything is handled by Java Web Start. I know -- that was the promise of Java all along, and now, here we are :)

Jen: Brian, can you tell me what existed before the browser-based installer for OpenDS?

Brian: The open source project went live on java.net late in June 2006. At that point, you'd download a zip file to install the directory server, and then run "setup", a command-line utility that prompts you for configuration information. We wanted to drive adoption, so that meant making the software easier to evaluate. But we still support the setup utility for people who don't have web connectivity on their install machine or who simply prefer to use command line.

Jen: So how did you get from the traditional installer paradigm, of running a local application, to running the installer from the browser?

Brian: In one of my early meetings with the team, one of the developers mentioned the idea of using Java Web Start for upgrade and it just seemed like a natural use of the technology for installation. Since the primary face of the project is the website, the idea of putting a link up there that would launch a GUI capable of downloading, installing, configuring, loading with data, and even starting the server in a few quick steps seemed really cool. I put it in the spec along with the panel designs and the developers put in the plumbing to make it work.

Jen: Boy, I wish I'd thought of that. What's the user feedback been like?

Brian: I wish I had good numbers on how many people are using the web setup versus the command-line tool, but we don't yet. We did get some feedback on the user experience and that person's feedback was great; we've already made improvements based on his suggestions.

Jen: So, what's next?

Brian: We're now working on adding upgrade capability to the installer so that users can click the web start link and upgrade their servers to the latest weekly build of OpenDS. The idea is to allow them to stay up to date without having to install a fresh server and then have to configure the server all over again. We are also adding some additional capabilities such as configuring data replication between servers. The design spec and an HTML mockup of the installer is up on our project wiki.


xDesign is a software user experience design group at Sun.
Follow us on Twitter : Flickr : Blog (see feeds below)


« October 2016