A case for unpleasant design in software development
- 29 July, 2017
- Article - Software Best Practices
In the world of software development, user experience (UX) design is a hot topic.
Research has shown that UX design can significantly enhance the customer experience, by focusing design efforts on improving usability, accessibility and the user journey. In the age of mobile, the user’s experience can have a huge impact on whether your app will be a success or failure: the difference between millions of downloads and none.
I recently listened to a podcast about ‘Hostile Architecture’ and started thinking about how we can employ this concept in shaping users’ behaviour; pushing them away from certain behaviours and towards others.
Let’s have a look at what is meant by ‘Hostile Architecture’, also known as ‘unpleasant design’. In architecture, unpleasant design has manifested itself in a wide variety of areas.
Here are some common examples:
- Using metal spikes or protrusions to prevent people from sitting or sleeping on sidewalks and in front of shop windows
- Designing seats in a way that prevents people from sitting comfortably for long periods, such as at bus and train stations
- At airports, arm rests are designed in a way that prevents people from lying down, forcing them to sit, straight up, knees facing forward – not the most comfortable position for a wary traveller!
- The use of pink lighting outside shops accentuates skin blemishes and therefore discourages teenagers from congregating outside
- The use of ultraviolet lighting under city bridges and in public restrooms makes it difficult for drug users to locate their veins to inject drugs
What’s important to note is that, in all these examples, the core problem was not resolved, but rather shifted. It forced vagrants to find other places to sit or sleep, teenagers to find other spots to congregate at, that didn’t highlight their, well, spots. Drug users were forced to find other places to get high.
The point is that unpleasant design is meant to deter or frustrate the user to such an extent that the undesirable behaviour is either ceased or displaced.
So how do we apply this to UX design?
Typically, if you wanted to change your users’ behaviours, you probably wouldn’t opt to frustrate them. You might argue that you would rather use an incentive model to elicit the desired behavioural change. However, there are a few examples where unpleasant design might come in handy, such as in fraud prevention and monitoring.
As part of bigger enterprise-level systems, some activities are considered higher risk than others. For instance, users of a payments administration platform might be able to update or change a creditor’s banking details. By manipulating these details, payments could potentially be funnelled away from the intended recipient into a fraudster’s account. If details are changed back after a payment has been processed, and in the absence of proper control mechanisms, the fraud could go undetected.
Let’s assume that all the typical control mechanisms and processes are in place to prevent fraud but that there are functions on the system that are vulnerable to abuse.
How do we design a system that highlights and actively discourages these high-risk actions?
One approach could be to apply the concept of unpleasant design, with the purpose of deterring or frustrating the user to avoid certain undesirable or high-risk behaviours. For example, the high-risk behaviour on the system is highlighted by making the typical audit trail data visible to the users. By doing this, the user is made acutely aware of his actions and behaviour on the system, as well as the fact that this behaviour is being tracked and monitored. And so, you rely on the resulting psychological effect as the deterrent: the fear of being caught.
Understanding your client and their business
Software engineers need to constantly look for ideas and find inspiration from other environments and industries to help drive innovation and rejuvenate our way of thinking about how we design and build systems.