User Experience in the Real World
Nobody likes waiting. Nobody likes being confused. Nobody likes being told they can’t do something they want to do. Unfortunately these are everyday occurrences, and no amount of good intention or technological progression will eradicate these irritations entirely. However, the job of a good web production team, is to minimize these experiences through understanding the needs of the client and end user, visualizing a solution and developing a system that will meet the requirements in an elegant and useful way.
This is a non-trivial problem.
Imagine you are tasked with building a supermarket which will sell a variety of produce to a mixed demographic of customers. Someone else designs the shop for you and you now need to build their vision in a fixed time within a fixed budget – easy! Right? It’s just one brick on top of another.
Due to time and budget constraints you need to reuse some of the materials from the previous building – however this was a swimming pool, so they need to be adapted a little. So you build the structure making sure all the plumbing and electrics are in the right place and things are looking good - you’re ready to start on the internal aisles and areas that the customers will frequent. However, the client has changed their mind and actually part of the supermarket should now contain a zoo and this means you need to knock through an entire wall and try and retrofit it into your original plan.
Time and budget remain the same.
But you persevere; building the aisles, trying out sample produce to make sure it fits – building perfect examples to showcase the wonderful work that is being done to fulfil the designer’s vision. You build a secure and innovative checkout that allows future customers to recognize the true potential of the shop and everything it offers.
Then the client starts putting real produce in, and they’ve decided to keep a herd of wildebeest in the vegetable section and they’re trying to squish giraffes in with the frozen peas. The first test customers come and they’re trying to climb the checkouts rather than use them, and two of them have been eaten by lions in the toiletries aisle. One of the frameworks used to build the aisles has been upgraded and no longer supports the main electrical system, so there is no power and the designer has decided that the floor plan really needs to incorporate a second floor. Somehow all of this needs to be fixed - and the supermarket needed to be opened yesterday and the budget is in the red and the client doesn’t understand why there can’t be crocodiles in the bakery.
Sounds ridiculous doesn’t it? No project would ever run like this… would it?
The truth is that projects rarely run smoothly. There are bound to be issues, scope changes and mismatched expectations, but the goal should never change – to build something that meets the requirements and is usable. So why is it that usability principles and usability testing are among the first things to get shelved when the chips are down?
Perhaps it’s because from the client’s point of view the success of a project tends to be focused on hard delivery objectives – converting more customers, making more sales or attracting more users – and from a business point of view, success tends to be measured in terms of ‘was this project on budget?’ or ‘was this project on time?’ So where does that leave usability?
The Institute for Electrical and Electronics Engineers (IEEE) presented research in 20051 indicating that roughly $1 trillion was invested in the US in IT projects that same year. Of those IT investments, Dr Susan Weinschenk2 estimates that up to 15% are abandoned and at least 50% of programmers’ time is spent avoidably re-working code. The IEEE identified 12 top reasons as contributing to project failure including:
- poorly defined system requirements
- unmanaged risks
- poor communication between customers, developers and users
- inability to handle project complexity
By following usability best practice and accounting for user experience engineering in the original budget, these simple planning errors could be identified early or avoided altogether.
Techniques of usability engineering that could be incorporated into the production life-cycle include:
- user analysis – building user journeys and mapping interaction
- prototyping – developing interactive models that simulate complex areas of interactivity
- usability testing – garnering meaningful data from targeted test users in order to hone design and functionality
The outcomes of these techniques inevitably tie in with the client success parameters – such as raising conversions and preventing user drop-off. However, they also tie in with business principles;
From a developer’s point of view there is nothing more frustrating than having to hack apart a beautifully structured algorithm and rework it to meet expectations that were originally miscommunicated, misunderstood or undefined. By keeping the user in mind at all stages of the project it could just save someone the job of explaining why crocodiles can’t live in the bakery!
By Laura Weatherhead, Web Developer.
1Why Software Fails, Robert Charette (2005) http://spectrum.ieee.org/computing/software/why-software-fails