User Experience and User Interfaces are not the same!
"I want to show you something, but please ignore what it looks like. I'm still working on that." or "Is this the data you want… oh, please don't look at the layout, I'll fix that later."
Since MultiValue developers are so data focused these days, this is a common comment when demoing a solution or application. The whole concept that a user can simply "ignore the design" because our application works better and faster than anything else with a better "design" is a major failing.
On the other side of the coin, the concept of "make it look nice, we'll fix the speed later" is a chronic problem with a lot of other software as well.
These two polar opposites of application development have caused our business systems to become ugly and nonfunctional. The introduction of a new concept called "User Experience" (UX) was provided to address this.
We have heard for many years that we need to convert our beloved console (green screen) applications into something with a better User Interface. The problem here is that the user doesn't want just a new interface, but a new User Experience.
So, what is the difference? Doesn't a new UI give a user a new experience? Isn't that the same thing?
When looking at the UI, most people look at the "Interface Design" and the "Visual Design" — mainly the "Visual Design."
This is not "the end all to be all" of a better UX (User Experience) and is the reason most conversions fail. Just making something pretty and well laid out isn't enough when you lose functionality and speed. Visual Design can provide more functionally and additional data on a display. It can even make your application pleasing to the eye, but this can be done with fonts and colors just as easily as pictures and buttons. And it can be overdone very easily.
As developers start looking at how to make something look "pretty," they start looking at the interface design to go with the visual design. By adding buttons, drop-downs, hover areas, among other things, the interface becomes easier to work with… in theory. This introduces the mouse, touch, and other input devices, which then become the primary input devices.
This in turn affects User Experience, and not always for the better.
So what is User Experience?
User Experience is:
- Visual Design
- Interface Design
- System Performance
- Ease of Access
- User Flows
- Data Flows
- Environmental Flow and setups
This probably sound familiar. We do this every day. But what you are thinking is likely a misconception as well.
As application developers, we have a tendency to focus on the "process" and not the "person." User Experience (UX) starts with "User", not "process."
Most of your console (green screen) applications are based around the process, and not the user. You expect the user to follow the process to get the work done. This has always been the main hang up for converting a console application to a GUI application.
Most console applications are based around the user doing a specific process from start to finish, instead of designing the application around the "person," who can do more than one process at a time.
When you are in a warehouse doing inventory control, a user can usually count, bin tag, and pick material all at the same time. According to the business, this is actually three separate processes. If you do these as three separate processes, more than likely you are wasting a lot of your employee's time.
If you implement a warehouse application, is that multicolor drop-down list of selectable numbers (that looks really cool) the best input method, or does a simple keyboard provide a better experience. Is a mobile device better in a manufacturing environment than a piece of paper?
It's not always about the technology, but how it is used that makes the user experience better. Tablets, smart phones, and wearable devices all make the user experience nice. The drawback to them is that they can't do everything.
Sometimes a simple old desktop computer, printer, and keyboard provide a better experience that trying to do everything on a mobile device.
User Experience is not confined to the computer or device either. User Experience has a lot of environmental prep as well. For example, let's look at inventory control systems again. When something is placed on a shelf, the user needs to know where to put it.
In most places, there are "bins" or "location assignments" that are implemented. These are typically barcodes or some type of unique location identifier that the user can assign or be told to place the inventory into. This is all defined and setup in advance to make it easier for the "person" to retrieve or put things away in.
That last thing to keep in mind is that it is not ONLY about the "User." The developer still has to design the application to address the "process" needs. A business can't succeed without its unique process, procedures, and data. If you don't fulfill this critical business need, then the whole application will fail as well.
If you create a "user" centric application, many times you can combine more than one business process into one simple application. This makes the User Experience pleasing, but developers sometimes have to impose specific process requirements on the User.
Let's look at a classic user — the delivery driver. All they want to do is drop off what they are carrying and get back on the road to the next stop. They don't want paperwork. They don't want to problems. They don't want to spend any more time at any one location than they have to.
Although the business process may require the driver to take pictures after they unload, get the customer to sign off on the receipt, and/or document time, date, when, who, why, and how things were done when items were unloaded. This is all inconvenient to the user, but is critical to the process of delivery.
As you can see User Experience (UX) is more about overall business systems, processes, and users than about a specific task or style of user interface.