All the same, most businesses are unique, as are their work
processes. For example, two businesses from the same branch could have
significantly different processes, forcing you to go beyond what is familiar
and start to innovate. This part of the design process can be very interesting,
although you have to be careful in how far you go with innovation.
USERS SHOULD BE ABLE TO BE EFFICIENT
Without a doubt, users should be able to be efficient when
using business applications. This is what they are paid for, and this is what
managers expect from the application. User interfaces should allow users to be
efficient and should focus them on completing tasks in the easiest and fastest
way. But this is not always the case. There is an opinion, or at least
practice, among developers that says the user interface should be as complex as
the back end system. No matter how ridiculous this sounds, the problem is real
and might give you a headache. This is one reason why good communication and
collaboration between developers is a must.
Users are efficient when they focus on a particular task. As
mentioned, task analysis can help you identify tasks and determine how users
perform them. If tasks are long, accelerate them by breaking them up into
smaller units. You can also increase efficiency by providing keyboard support
and shortcuts. Think how inefficient it is for a user to have to switch back
and forth between mouse and keyboard. In some cases, you will be designing for
users who are accustomed to working on command-line operating systems and the
applications made for them. They will be keen to have keyboard support. One
suggestion: when defining keyboard shortcuts, keep them consistent with those
of common applications. For example, Ctrl + S should always save, and so on.
Efficiency can also be enhanced through personalization.
Users who can personalize an environment will learn it faster and, more
importantly, will be more confident using it. Personalization can be done in
many ways: choosing widgets for the dashboard; defining shortcut options and
favorites; changing the order of elements; etc.
Pay attention to accessibility. Although many assume that
accessibility doesn’t matter in Web applications, it certainly does. Treat the
application as if it was a public website.
A Web application also has to be efficient in the speed with
which it processes information. So, consider heavy interactions that result
from partial renderings and AJAX requests.
HELP!
An interface should provide meaningful feedback that
describes the state of the system to users. If an error occurs, users should be
notified and informed of ways to recover. If an operation is in progress, users
should be notified about the progress.
We can go even further and declare that user interfaces
should prevent users from making errors. This principle, called forgiveness,
can be followed with confirmation dialogs, undo options, forgiving formats and
more. Forgiveness makes it safe to explore the interface, decreases the
learning curve and increases overall satisfaction.
Because of the complexity of business Web applications, you
would also need to provide a comprehensive help system. This can be done with
inline help, a support database, a knowledge base and guided tours (which mix
video, images and text).
CAN’T GET NO SATISFACTION
Satisfaction is a subjective term that refers to how
pleasant an interface is to use. Every design principle we have described here
affects satisfaction. And a few more
principles are worth mentioning here.
Simplicity is a basic principle of UI design. The simpler a
user interface, the easier it is to use. But keeping user interfaces for
business applications simple is a challenge because the apps often have a lot
of functionality. The key is to balance functionality and simplicity. Restraint
is one of the most efficient ways to achieve this balance: i.e. Finding the
simplest way to solve a problem.
BuildWith.me has a simple and effective user interface,
without sacrificing aesthetics.
Aesthetics, though subjective and somewhat arbitrary, play
an important role in overall satisfaction. Users respond positively to pleasing
user interfaces, sometimes even overlooking missing functionality. But you’re
not creating a work of art. One of the best articles that explains aesthetics
is In Defense of Eye Candy.
In the end, users will be spending a lot of time in front of
a business application, and no matter how usable, consistent or forgiving the
interface is, satisfaction will be critical in determining how good the user
interface is.
Essential Components Of Web Applications
Every Web application is unique, but many of them contain
common features. Although the implementation of any one of these features will
vary, let’s look at the basic concept of the three most common ones.
WEB FORMS
Forms in general are important to Web applications. But as
Luke Wroblewski says in his Web Form Design book, “No one likes filling in
forms.” That includes sign-up forms, including business applications with
dozens of fields.
Minimize the frustration of filling in forms. Provide inline
validation and good feedback. Use defaults when possible. Don’t forget about
novice users. Use wizards to help them complete tasks faster, or use
progressive disclosure to hide advanced (or infrequently used) features.
MASTER-DETAIL VIEWS
This is the technique of showing data in two separate but
related views. One view shows a list of items, while the other shows details of
the selected item. Master-detail views can be implemented across multiple pages
or on individual ones.
DASHBOARDS
Many Web applications have dashboards. A dashboard is a view
of the most important information needed to take action and make decisions. It
is confined to a single page and is usually the starting point of an
application. Dashboards are important because they enable users to access
information and take action without having to dig through the application.
Xero shows a user’s most important financial information
(e.g. bank accounts and credit cards) in its dashboard, making it easy for
users to quickly see the status of their financial data.
HEAVY USE OF TABLES
Because Web applications typically deal with large
quantities of data that are easily accessible and sortable, tables are
unavoidable. But this is not a bad thing. In fact, tables were made for this
purpose. Don’t confuse this with table-less layouts. Effective tables are
easily readable. So, in most cases you will need a meaningful header, an
optimal number of columns, pagination, alternating row colors, proper column
alignment, sorting and filtering capabilities and much more.
Tables can also be interactive, meaning they can generate
additional info and even modify the data they contain.
PulseApp is a good example of how tables can be used to efficiently present and manipulate complex data.
REPORTS
Most businesses work with some kind of reports. Printed reports are usually required, so pay attention to the design of reports. Printed (or exported) reports are usually simplified versions of online reports, optimized for monochrome printers.
FreshBooks has printing, PDF exporting and “Send to email”
features. It also shows a print preview.
Don’t Forget UI Design Patterns
We’re so used to hearing and talking about UI design
patterns that we sometimes forget about them! UI design patterns are helpful
for designing user interfaces. The important thing is to consider them early on
in the design process, ideally at the sketching stage. Because patterns often
solve common problems, the right pattern can facilitate the user’s familiarity
with an interface and increase the speed at which they learn it.
Case Study: Online Banking Application
To take an example from the real world, I will briefly
explain the process of designing the user interface for one small bank’s online
banking system. The team I worked with was hired to improve the system. The
main reason for the redesign was that, according to management, “users
complained and many stopped using it.”
After only a couple of hours spent with actual users, the
main problems were uncovered. Information about accounts and credit cards was
buried in poor navigation. Understanding how much money users were spending and
the state of their accounts and credit cards was also hard. The application,
however, was obvious to bank employees; they were familiar with the terminology
and could interpret the numbers in the application perfectly well.
Give the tight deadlines, we followed the process I have
described, and we partially succeeded. Despite the short time, the major
problems were so obvious that we clearly understood our main task and how to go
about it. We created a dashboard that provided clear information on the state
of all accounts and credit cards. With this new navigation, finding information
became easier. Reports were easier to understand, and several new features were
implemented.
Although we made only a few changes, the changes affected
critical user tasks and resulted in significant improvements to the overall
experience.
Final Thoughts
Designing user interfaces for business Web applications is a
challenging job that is full of compromises. You have to make compromises
between client and user needs; business requirements and users; novice and
expert users; functionality and simplicity. It requires a solid understanding
of users and their tasks, as well as of UI design principles and patterns.
Despite the difficulties, the job is interesting, and you learn many new things
on each project that influence the way you design websites.
While this article reflects some well-known concepts and
things I have learned from designing business applications over the years, I
look forward to hearing your experiences and stories.
Author: Janko Jovanovic
Credits: http://uxdesign.smashingmagazine.com/2010/02/25/designing-user-interfaces-for-business-web-applications/