Monday Jul 21, 2008

UI whirlwind

Tomorrow, I head out on the 7:34am (ugh) flight out to Broomfield, CO to have a whirlwind meeting about the Ops Center UI currently in development. User Interface design has always been one of my passions, like may others I appreciate well structured, well designed user interfaces and in xVM Ops Center and xVM Server its something we are focusing on.

We are now at a point where opinions and concepts have diverged, so phone and email doesn't work, so face to face it is!

Our hosted inventory service was our first attempt to bring a more usable experience to the browser, it was built using mostly server side technology which generated client side javascript.

Sun Inventory UI

One of the main challenges was scale, the Inventory service at Sun is intended to be a simple asset management service, that is free, that reflects the software and hardware you have registered with us. Of course success has its problems in terms of scalability and some pretty fast footwork had to be done to allow some of the normally most basic UI components to scale up to the real use. For example having a table scale into thousands of entries is no big deal when the UI client is local or across a persistent network connection, putting it in a browser required some thought in terms of protocol and memory management. Overall it came out pretty well but like all early attempts of this style of interface, there is room for improvement which is happening release after release.


xVM Ops Center 1.x attempted to build on the inventory service, using the same concepts and taking advantage of some of the work that was done in scalability. From a style perspective we deliberately kept it very similar to the inventory service hoping that the synergy would be appreciated between the two applications. The richness of functionality and layering of user interaction in the flows however caused us significant design challenges and compromises were made to make things operational that turned out to be far from ideal. The core challenge has always been around the user model. Ops Center is a systems management application at its core and many of these applications struggle to identify with what leads from a user experience the hardware / software under management or the action the user wishes to take. Obviously both are needed, but ultimately which leads, asset or task. In Ops Center 1.x we tried to apply a task based model but instead ended up with a hybrid model, where at times the hybrid nature was inconsistent. Overall the user experience was a great step forward but we knew we had to something more in the next release.

xVM Ops Center 2 is a major upgrade and re-work of Ops Center 1.x. At the outset we had the core objective of adding virtualization management and a high performance user interface that would be familiar to users and would hopefully require minimal training to operate. I will comment about the functional capabilities and how we achieved some of them in future posts, but from a UI perspective we have completely reworked it.

The first basic decision was to place considerable more focus on information segmentation and the general flow in which a user operates. Next we had to develop the UI in a way that we knew we could make perform. Creating AJAX applications still seems to be much more towards the art end of the computer science scale and we made the decision to focus much more on Javascript expertise and development.  Leveraging open source toolkits we are able to create sophisticated user interfaces that are actually looking really good. These interfaces are a complete departure from the Ops Center 1.x interfaces although we have been careful to ensure that the concepts are similar to someone who has used the previous versions.

The screenshots here are far from final and represent some views into our ongoing work on Ops Center 2. The left hand side of the browser window offers a familiar accordion  style category selection model, where the user can select from the category of information they are looking for. Within a category, the user may select their area of interest, this could range from a group of virtual guests to a physical network configuration. The Center pane reflects the relevant content about the selection and optional content tabs are available based on the amount and type / category of content. The right hand of the user interface reflects the contextual tasks or workflows the user can undertake. What is great is that all of this works in the browser and is pretty "snappy".

Wizards are used when complex configurations with many steps are required and we have really tried hard to make the most complex actions as simple as possible, although granted this is an area for continual refinement. 

The wizard to the left shows a virtual guest being created through xVM Ops Center. The great thing about this, is that if you were creating a virtual guest using our standalone xVM Server interface, it would look exactly the same (except for the name in the top right hand corner).

Airline travel beckons followed by many discussions around user interactions, layout style and modality.


Perspectives on Systems Management, Virtualization and a whole host of other things, mostly related to technology of some sort which kinda of defines life for me.


« February 2017