For the last couple of years I have been thinking about User Experience (UX) design in software projects. I really got into this when I worked at Businesslink for a while on their secure registration system and several other applications. The commitment to quality and ease of use was great and we had time to do real useability tests in “fishtanks”. The frustration of a user saying “I don’t know how to register” when the registration link was in front of them was immense and a good learning experience.
I learnt: identify the use cases, breakdown the problem into small chunks and then present as little information on the screen as possible. This way the user cannot accidentally leave the process and the “signal to noise” ration is low which increases the users’ understanding of what is being asked of them.
In this traditional “Web 1.0” space there is also a good range of accessible literature, for example CockBurn’s “Writing Effective Use Cases” and Krug’s “Don’t make me think“. It was simple enough to give these books to the development team and they would quickly be building good interfaces.
When I first started looking at Rich Internet Application technologies a couple of years ago I was very worried. How could I as a software project manager ensure the quality of the user experience in RIAs and how could my team build software using it.
On the second point I think a lot has changed over the last two years. I went to Flex and the City last month and whereas two years ago almost no one was even using source control most attendees where now using continuous integration technologies. Meanwhile in the standards based space we can see great progress in the maturity of component libraries and presentation tier technologies such as GWT, JSF and Wicket. The technical risk of using these technologies has dropped dramatically.
At Flex in the City Michael Chaize from Adobe demonstrated some really useful applications built using Flex (which compiles to Flash for execution in the browser) where the power of RIA technologies really helped the user accomplish their goals. There were also some applications where I thought, “shiny, but would anyone actually use it”.
Over the last few years we have seen applications servers and cloud hosting solve most of the problems of the middle tier. So coming back to the title of this post I think that the new battleground for software teams will User Experience. I don’t have any answers yet but I shall certainly be blogging more on the topic over the next couple of years. If you are interested in UX or project management please click the Subscribe button to recieve notification of updates.