When you think of the many virtues of OpenStack, and enterprise virtualization in general, user experience may not be the first thing that pops into your head. But maybe it should be.

One of my favorite sessions at OpenStack Summit in Atlanta was a group presentation focusing on the work of the OpenStack User Experience (UX) group. Generally speaking, this group focuses on developing methods to understand the needs of OpenStack users and what their requirements are and adapting these requirements into OpenStack's interface through iterative testing and design. By its nature, user experience tends to focus on graphical components, so it's unsurprising that much of the work to date has been on OpenStack's Horizon dashboard. But the UX group is hoping to expand their work to apply the intelligence gathered about user requirements to both the command line interface as well as the native API itself.

The video of this session is about half an hour and well worth the watch if you're working on development of OpenStack, or of any open source project with a variety of user types and use cases.

To accomplish this, the UX group has begun developing personas to map out common user traits and understand the needs of users when categorically grouped, and how these different groups might interact with the software to achieve their goals. Personas are simply fictional characters that map to distinct user segments. In design work, using personas isn't novel, but they are an often-overlooked tool in open source software development.

So why use personas, as opposed to thinking about users in terms of market segments? There are two main arguments: one, there are simply too many market segments to effectively design software while considering them all simultaneously. OpenStack users might have different roles (consumers, operators, vendors, etc.), different affiliations or industries, different levels of technical background, different geographic locations, and any number of other variables that define who they are and what their needs are. But second, there is a lot of overlap between these categories, to the point where defining certain characteristics that users may have in common and formalizing those shared characteristics into a common profile makes sense from the perspective of logically planning for their needs.

Much of this work builds on previous work in personas done by Dave Neary. A video of his talk on this topic at the OpenStack Summit last year in Hong Kong is also available.

Finally, Dave Neary's initial talk at the OpenStack Portland Summit that kicked off the effort provides some good background on how and why personas can be used, both in OpenStack and in the open source community at large.

Interested in learning more about personas or in getting involved in the process of building personas for OpenStack or using them to improve the user experience? There are a number of resources out there available to you. The OpenStack Foundation maintains a mailing list for persona development. There is also a good deal of information available on the OpenStack Personas Working Group wiki page, including information on how to get involved and attend an upcoming meeting if you wish to learn more.