What You’ll Read In This Article:
Usability means users need to be able to complete their tasks quickly and with freedom of discomfort and a positive attitude towards the use of the product.
Nielson’s heuristics provide the foundation for evaluating ERP user experience. It means enabling a person to discover or learn something for themselves.
Researchers from Bentley University share users’ opinion on ERP software. Here’s what one had to say: “I feel like it’s an impassive, sometimes uncooperative, coworker.”
New Features in ERP:
We’ll look at some features that SAP and Oracle have released or are working on releasing. But will it be too little, too late?
Usability of ERP software has come to a tipping point and the “big two” (SAP and Oracle) are racing to make changes to their user interface. Smaller, agile, and user-friendly ERP software companies are biting into their market share and have shown significant revenue increase in recent years.
Usability, or lack thereof, has been a thorn in the side for many companies over the years. It’s hindered efficiency and user adoption in the organization. Companies have sacrificed this inefficiency and adoption in exchange for integrating business processes and getting everyone in the organization to use the same platform.
But that only goes so far. As a new generation of people enter the workforce, a generation groomed on friendly apps and slick devices from Apple and Google, their tolerance for such unfriendly interfaces will be small.
Something has to change.
Most ERP systems, such as SAP and Oracle, are built on a three-tier architecture: the database layer, the application layer, and the client or user interface layer.
These tiers are also widely known as Data, Business/Logic, and Presentation layers. These ERP applications are commonly deployed in a distributed and widely dispersed manner.
While the servers may be centralized, the clients are usually spread to multiple locations throughout the business.
Historically, software developers have focused most of their effort on ensuring that the data and business/logic layers of a system were stable and functional, with less focus on the presentation/user-interface layer.
This is particularly true of ERP systems where, as the business’ system of record, the absolute reliability of the data and application logic necessarily take precedence over ensuring a simple and efficient user interface.
Which means, “Houston we’ve had a problem.”
What is Usability?
Usability is at the core of how software applications are designed and distributed to the masses for use. It plays a critical role in the success of e-commerce websites and the thousands of applications launched each week in the App Store.
To elaborate, usability is the ease of use and learnability of a human-made object. In the computer world, the most widely accepted definition comes from the ISO standard 9241-11. It defines usability as the “extent to which a product can be used by specified users to achieve specified goals with effectiveness, efficiency and satisfaction in a specified context of use.”
Simply stated: users need to be able to complete their tasks quickly and with freedom of discomfort and positive attitude towards the use of the product. Which is what we, as end users of any app or website look for. But does your ERP system do this?
When software developers and designers create software, they must also take into account the heuristic evaluation, or usability inspection, that helps identify problems in the user interface design. What is the definition of heuristic? Heuristic can be defined as: enabling a person to discover or learn something for themselves.
Jakob Nielsen’s heuristics are probably the most-used usability heuristics for user interface design. Nielsen developed the heuristics based on work with Rolf Molich in 1990. The final set of heuristics that are still used today were released by Nielsen in 1994. Let’s look at each of Nielson’s heuristics in detail, as in his book Usability Engineering:
Visibility of system status
The system should always keep users informed about what is going on, through appropriate feedback within reasonable time.
Example: If it takes a long time to load a screen, display a progress bar and/or an estimate of the time it may take to load, so users know what to expect.
Match Between System and Real World
The system should speak the users’ language, with words, phrases and concepts familiar to the user, rather than system-oriented terms. Follow real-world conventions, making information appear in a natural and logical order.
Example: When designing a website for children, use terms with which they are familiar and display information in formats they are used to seeing.
User control and freedom
Users often choose system functions by mistake and will need a clearly marked “emergency exit” to leave the unwanted state without having to go through an extended dialogue.
Example: Provide the functionality to Undo and Redo actions and to easily exit the system.
Consistency and Standards
Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions.
Example: Use icons with which people are familiar, rather than creating new designs that mean the same thing.
Even better than good error messages is a careful design which prevents a problem from occurring in the first place. Either eliminate error-prone conditions or check for them and present users with a confirmation option before they commit to the action.
Example: If a user cancels her account, offer her a way to re-establish the account within a certain time period.
Recognition rather than recall
Minimize the user’s memory load by making objects, actions, and options visible. The user should not have to remember information from one part of the dialogue to another. Instructions for use of the system should be visible or easily retrievable whenever appropriate.
Example: On a web form, allow easy access to previously entered information, such as serial numbers, so the user does not need to recall the information or write it down.
Flexibility and efficiency of use
Accelerators — unseen by the novice user — may often speed up the interaction for the expert user such that the system can cater to both inexperienced and experienced users. Allow users to tailor frequent actions.
Example: An accelerator can be a keystroke shortcut, such as Macintosh’s Command+Q to quit an application.
Aesthetic and minimalist design
Dialogues should not contain information which is irrelevant or rarely needed. Every extra unit of information in a dialogue competes with the relevant units of information and diminishes their relative visibility.
Example: Background graphics can make viewing text difficult.Help users recognize, diagnose, and recover from errors
Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution.
Example: If the user enters an invalid email address on a web form that requests the address, the error message could read, “That email address is not in our records. Please enter an email address in this format: firstname.lastname@example.org.”
Help and documentation
Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation. Any such information should be easy to search, focused on the user’s task, list concrete steps to be carried out, and not be too large.
Example: If there is not enough reason to produce an entire Help section, and there are a couple form fields that may be confusing to some users, it is appropriate to include “in-line help” in the form of a link that opens a a small help dialogue next to the form field. Alternatively, next to a form field text box or field label, provide users an example of how to input the information using the required formatting, such as entering a phone number as xxx-xxx-xxxx.
Real World Examples vs. Nielson’s Heurisitcs
[quote] I feel like it’s an impassive, sometimes uncooperative, coworker.[/quote]
Keeping Nielson’s heuristics in mind, lets’s examine how some ERP systems perform against these heuristics.
Researchers from Bentley University conducted interviews with 33 end users at three organizations in a northeastern U.S. State in 2010. These organizations used different ERP systems (software name not revealed) and the users had varying levels of system experience. While these interviews are a few years old, the information is still relevant today. Just as there are hundreds of companies running unsupported Windows XP, there are thousands of companies still running ERP software that was released as far back as 2000. Oracle’s current ERP release (R12) was released in 2007.
The interviews below reveal the link between collaboration and usability of the system by demonstrating the absence of key properties and violations of Nielsen’s heuristics.
In theory, ERP systems are designed to assist users. The shared goal between the system and user is often equivalent to the user’s goal (like billing a client). Hence, it is important that the user know what the business goal is before performing any task. Here is an excerpt from a superuser:
User 1: “And the first thing is to forget about the system for a sec. Keep your keyboard away, discuss as a group, individually, collectively, whatever, what you are trying to do conceptually. Then execute.”
I’ve witnessed this during my Oracle implementations where key stakeholders from the business took part in the initial system design. The business process has to first be defined, then the system was designed to meet this business process (read: custom code).
Even though users know the business goal and the logical steps in the plan for achieving it, those steps may not be easily mapped to the functions provided by the ERP systems. The intrinsic complexity of the interrelated business processes coupled with complex interfaces makes it difficult for users to perform a very simple action, like locating a function.
User 2: “It (the system) doesn’t tell you what steps to take next. You have to basically know what the next step is for your process, for what your job title is to do.”
As a result, users spend a significant amount of time in training, communicating with colleagues, and using trial and error approaches to learn the steps for their tasks. These steps are described by users as “unintuitive,” as they often do not match the logical steps that users associate with the business processes. As a result, users frequently create “cheat sheets” that document the procedures and steps required for a task. With practice, users may no longer need these notes, but they continue to rely on them for performing non-routine tasks:
User 3: “I have a little checklist, so when I do ACH payments, I just have screen charts and just little directions that I need to go back in and redo it. I have just directions on step-by-step with the screen chart. This was just so much easier.”
The need for memorization and notes is in violation of several of Nielsen’s usability heuristics. The match between ERP systems and the real world is not particularly good, and, clearly, ERP systems require recall rather than supporting interactions based on recognition. In addition, the lack of navigational and procedural guidance violates heuristic #1: system status is typically not available, leaving users unsure of their progress in performing a task.
I’ve seen users create a ton of cheat sheets and I’ve created a ton of cheat sheets for users. While our training and implementation plan leads to a flawless implementation, users simply don’t want to have to wade through pages of job aids to find a quick answer to their problem.
Tell me if this sounds familiar:
User 4: “If I had a new person in purchasing, I’d need to tell them what the company code was and how our GL chart of accounts worked and what our cost-center structure is – a lot more details in order for them to be able to enter just one invoice. And then it’s spider webs off of that as far as whether it’s a fixed asset or pre-paid, etc. So there’s a lot more information that needs to be shared there if we had a new employee in any one of those areas.”
Since the system maintains the business information, it could easily present it to users if it had been designed to do so, right? This example suggests another violation of Nielsen’s heuristics: the match between the system and the real world is not as good as it could be.
Information on progress and feedback to the user are important and the system should provide it when the user needs help. However, the system must first be able to detect and recognize that need for help, but ERP systems typically play a passive role:
User 5: “Now, the thing is that in this case, the system is not reaching out to you saying that you obviously need help. It’s me having to go find it there. Just to go back to that GL account scenario, rather than just telling me you had to put something in, if it knew automatically what that one was supposed to be, and once you failed, say three times, or X times putting in the wrong one and then at that point, it would query you – you obviously need help here. And then it would send you to a help desk function.”
ERP systems often fail to utilize the contextual information they possess regarding the organization, user, business process, and task. An error message may simply report that there is a problem without offering any diagnoses or suggestions, or even isolating where that problem exists. While some error messages provide possible solutions, users often find them to be too general to be helpful:
User 6: “No, it doesn’t tell me detail, but it tells me that it cannot be performed at this time.”
User 2: “It’s just the [dinging] sound, yes! Nothing comes up and you know that you’re looking at the wrong order in the wrong [location]. It doesn’t come up with a pop up screen that says this is the wrong order.”
Some users try to seek solutions by reading system-provided help documents, but this is not a productive use of time, as the documents are often not specific to the task at hand and do not consider the context of the activity. As a result, users typically ask someone else (coworkers, superusers, IT staff ) for help:
User 5: “I would just call someone because again, I have spent time trying to figure it out and go through the menu path, and I feel like I always get more lost and I’m just trying to save time, so I just usually pick up the phone and call someone.”
These examples illustrate violations of Nielsen’s heuristics and in an error situation, the users find it impossible to use the system to identify needed status information, and the system is often unable to help users recover from errors.
A collaboration between two parties will likely fail if they do not maintain good communication. Communication requires sharing knowledge, which, in ERP systems, includes business data, the procedure for a task, status and progress reporting, and context. To communicate and share knowledge, the system should speak the users’ language and use the vocabulary of terms with which they are familiar. However, the terminology used by some ERP systems is drastically different from the users’ and little or no explanation is provided about what terms mean:
User 5: “I don’t know how it’s chosen that for vendors it’s XK, and for purchase orders it’s ME prior to the numbers. I do know, obviously, the numbering system as far as O1 is for creation, O2 is for change, and O3 is for display. But have no idea what it means to the actual function!”
User 7: “Sometimes when I get an error message and I don’t know why I’m getting it then that’s when it’s questionable about what’s going on. Because usually it’s in codes, and I don’t understand that.”
Incomprehensible terms and error messages do not “Speak the user’s language” nor “Contains familiar terms and natural language.”
To maximize the long-term success of a collaboration, each party needs to learn from and adapt to the others. In interactions with ERP systems, users are the ones who must do the adapting. An alternative would be for the system to also adjust to its users’ behaviors by taking into consideration their previous actions. This would enable the system to automatically populate previously entered data, list functions in the order of frequency of use, offer an option of repeating a frequently performed task, etc. However, such capability is currently lacking:
User 7: “I don’t think it does something to make it easier due to the replication of me doing something. So, if the system had enough intelligence that it noticed that I am always printing the details for all the items that are on the overall report, and then it would say let me offer you, do you want to print all of this? You seem to be doing this always.”
The above examples illustrate the lack of collaboration between ERP systems and its users, and the frequent violations of Nielsen’s usability heuristics can be framed in terms of the non-collaborative behavior of these systems. A true collaboration aimed at enhancing usability requires a partnership, the absence of which is best summarized by a superuser in this way:
User 8: “So with the system, it’s somebody that just smirks at you. And when you make mistakes, it looks at your with the same kind of dopey look on its face . . . And it starts forcing you to kind of work around and work over and work under. And that’s the frustrating part about it that again is the biggest pain in the backside. So, I would say, it’s not a good partner, I feel like it’s an impassive sometimes uncooperative coworker.”
What’s Being Done by SAP and Oracle
The long rivalry between SAP and Oracle may finally come to an end and there probably won’t be a winner. As smaller software companies modernize ERP systems, Oracle and SAP and are rushing to catch up. But will it be enough and will the changes get to market on time? Ten years ago, companies essentially had two choices when going ERP: Oracle or SAP. Not anymore.
Today, there is a list of ERP software companies showcasing their offerings and experiencing rapid growth. Some of which include:
Gone are the days of brute force ERP implementations. These upstarts focused on the “pain points” of companies and have created user-friendly interfaces and software that is easy to deploy.
While these upstarts are adding customers every day, it’s encouraging to see Oracle and SAP making efforts to change their applications. Nielson’s heuristics have been out for 20 years. One has to wonder: why are changes just being made now?
Below are some of the new features they plan to incorporate, or have incorporated, in their latest releases.
Both companies have created visual processes that allow users to easily see how to perform an entire process from end-to-end by providing a graphical map of a particular workflow. Users can see the entire work process at a glance to instantly determine where they are in the process and the steps required to complete it.
Dashboards provide executives and managers across business units with key performance indicators. Dashboards don’t require users to be familiar with the software and can use these graphs to gain direct access to key information. It also improves collaboration across the business.
Better User Interface
Designers of ERP software are finally paying attention to the needs, wants and limitations of the product’s end users throughout the design process. Not only are designers trying to determine how users will use the product, they also test their assumptions with real users. The goal is to optimize the product around the way the users want and need to use it, rather than forcing users to change they way they work to accommodate the software.
Systems that are easily configurable, allowing users to set preferences, enable or disable a feature, or change the user look and feel allows users to work with the system in the way they want to without the need for extensive programming. It also allows users to eliminate extraneous information on application screens to reduce confusion.
These days, if you’re application isn’t available on mobile devices, you’re application is dead in the water. If users are out of the office or away from their laptop, they should be able to query information and use application functions to perform tasks such as checking inventory or placing a purchase requisition. This flexibility helps broaden the user base to non-core users and fosters collaboration.
Usability is something that Oracle and SAP are finally focusing on.
But is it too little, too late? With a generation raised on user-friendly apps, websites with sleek user experiences, and software created by Apple and Google entering the workforce, their tolerance for poorly designed software will be close to nil. With the number of customers SAP and Oracle have, transitioning them to upgraded versions of their respective software will take years. It will also cost money for their customers to migrate to these new versions.
Will these upgrades be enough to keep their customer base or will customers make a move to modernized ERP software systems?
Time will tell.
And the clock is ticking.