IT Employment

10 things that make software user-friendly

A product that's difficult to figure out, inefficient to use, or poorly supported is not going to win much of a user base. See whether you agree with these criteria for user-friendliness.

Lately, I have touched a nerve with a few TechRepublic readers regarding the issue of user-friendliness -- specifically, user-friendliness surrounding the Linux operating system. Of course, this debate isn't limited to Linux. User-friendliness can be applied to every operating system, end-user application, proprietary in-house application, and more.

But what makes an application user-friendly? Here are10 criteria by which you should be judging everything you roll out to your end users, as well as anything you might be using yourself.

Note: This article is also available as a PDF download.

1: Simple to install

This applies to everything from operating systems to browser plug-ins. Installation is the first point of contact for users, so it had better be a friendly process. Otherwise, they're going to be jaded the second they begin using your tool. It doesn't matter whether it's an operating system or a single-client user application, the installation should be simple and well documented. The second the installation becomes complicated, users will bail and move on to something easier.

2: Easy to update

As with the installation, an application's update process should be easy. If updates are complex, users will more than likely skip the process. This can often leave behind a trail of bad results, as many updates patch security holes, memory leaks, and other problems. Updates need to be simple enough to ensure that users continue to benefit from the hard work of the creators of the software. When users don't update, thus exposing issues, the software becomes less and less reliable and secure (as well as missing out on new features).

3: Intuitive

Software is only as good as its GUI. If the GUI is not well thought out and well executed, people will have issues with using the product. A well-designed GUI can often overcome a less-than-friendly underlying structure (or poor coding). But don't bank all your hope on a good GUI -- the software still needs to work as expected!

4: Efficient

Not only should a piece of software work as expected, it should also be efficient. It should be optimized for specific architecture, it should have all memory leaks plugged, and it should work seamlessly with underlying structures and subsystems. From the users' point of view, the software should be an efficient means to completing their jobs. Software should not get in the way of completing a task, nor should it set up any roadblocks for users. The efficiency of a piece of software is tied up with its intuitiveness. A good example is the change Microsoft made to the Office interface. Switching from the standard interface to the Ribbon interface caused end users to waste precious work time simply trying to figure out where features were located. This was an inefficient (and inefficiently executed) design choice.

5: Pleasant, easy-to-navigate GUI

You might be thinking, "The Microsoft Office Ribbon Interface is horribly NOT intuitive, but it certainly is pleasant looking." However, the look and feel of a GUI is a slippery slope that designers tend to tumble down. When a designer opts to go with trends instead of what works, it makes for an unpleasant experience for the end user. Instead of going with trends, add your own take on what is proven. The tried-and-true drop-down menu design has worked for years but is long overdue for an update -- but this update should not come at the expense of intuitiveness. A GUI's primary purpose is to make an end user's job easier... and little more. If that can be achieved with an edgier design, go for it. But if your edgy design is counterintuitive and inefficient, it fails the user-friendliness test.

6: Easy to remove

Along with being easy to install and use, a piece of software should be easy to remove. Without a simple removal process, that software becomes cumbersome. And cumbersome is not user-friendly. As much as developers don't want their users to remove their software, the removal process might be the last impression your software makes. Don't make that impression a negative one.

7: Doesn't need third-party software

One of my biggest problems with the Windows operating system is that more often than not, it requires third-party software to keep it running. This third-party software comes in the form of antivirus, anti-spyware, and other protection-based tools. Without these tools, your computer is vulnerable to whatever the malevolent powers that be want to throw at you. This is not user-friendly, as it creates levels of complication that most average end users can't deal with.

8: Easy to troubleshoot

No software is perfect. And when something goes wrong with a piece of software, it's important that the end user can call support and that support can resolve the issue. If the software offers nothing in the way of troubleshooting, how is the end user or the administrator going to be able to keep the software running? Windows 7 attempts to help the user out when a program crashes and does a fairly good job with it. In Linux, if you have problems with an application, you can always run it from the command line to see some of the issues presented. There are also third-party tools that can be used. But again, depending upon a third-party debugging tool is not user-friendly.

9: Adheres to standards

Standards are created for a reason -- to make interconnectivity between applications or hardware easy. Problems begin to arise when developers do not adhere to standards. This has never been so obvious than with Microsoft Office. Microsoft has practically shunned the world of universal standards in favor of its own standards. This causes issues with other applications communicating with its software. OpenOffice is one office suite that does follow standards, but it often suffers because Microsoft doesn't comply with standards set by governing bodies. When users are affected by a lack of compliance to standards, they'll face an unfriendly experience trying to get their tools to communicate with tools that do follow standards.

10: Effective error handling

What happens when a piece of software encounters an error? Does it just go away without warning? Does it try to rectify the issue? Does it simply time out and then go on about its business? When a program comes across an error, it should make the error known, at least to the developers. It's not the end users' responsibility to report bugs, but giving them the option to report bugs can go a long way toward helping that software improve. When a program runs into an error and simply bails without warning or recourse, users are left with their eyes bugged out and their hands in the air. At least let users know there was a problem and what they can do to help solve it -- such as sending a bug report to the developers.

How do you define user friendly?

Do these criteria fulfill your idea of what makes for a user-friendly software experience? If not, what would you remove or add to this list? Share your thoughts with your fellow TechRepublic readers.


About

Jack Wallen is an award-winning writer for TechRepublic and Linux.com. He’s an avid promoter of open source and the voice of The Android Expert. For more news about Jack Wallen, visit his website getjackd.net.

56 comments
Alchemist-Joat
Alchemist-Joat

Intuitive is great. However, there needs to be documentation. Of course this documentation needs to explain the features and how to use them. What is very important (and what seems to be missing from much documentation) is the documentation also needs to explain why one would want to use the features and how any feature interacts with other features.

Excelmann
Excelmann

1. I can use my keyboard to navigate the entire app as well as execute any and all commands-- not in a fits & starts mode of constantly having to go to the pointing device. There is no reason I should ever have to use the pointing device unless I choose. 2. Web apps should allow you to go back easy and effortlessly.

john3347
john3347

This list is accurate and should be read and absorbed by every developer in the world. Of these items, the 5 MOST IMPORTANT - and also most ignored - are intuitive, intuitive, intuitive, intuitive, and INTUITIVE! One step should logically and intuitively lead to the next and the user must not need to rely solely on memory to know how to "find" whatever they are looking for or wishing to perform within any application. Developers quickly lose sight of their audience when they begin to write applications aimed at impressing the user with how smart the developer is, instead of making the application intuitive and easy to learn and use.

NickNielsen
NickNielsen

I just purchased a new USB hard drive, a WD My Passport SE. 750 GB for under $100 (prices sure have come down, but that's another discussion). I connected it to my PC the same way I have connected all the other external USB drives I have, and am suddenly faced with Windows' New Hardware Wizard. WTF? I need to install drivers? Yes, I do, because WD has a virtual CD on the drive that wants to manage it for me. What's with this? I bought a storage device! I don't need it to manage my backups or anything else! All I wanted it for was to archive some older (larger) files! The most user unfriendly part came as part of the driver installation: a) the instructions for installing the drivers gave a procedure that couldn't be followed; b) the drivers weren't in the location specified; and, c) installing the drivers also installed a startup app...that broke Windows. When I rebooted, I got an error: "We are unable to load your profile. You have been logged in to the default profile. Insufficient system resources to complete the requested action." (or words to that effect) Login took 10 minutes. Thought about it, fired up CCleaner, checked the startup keys, killed the new app, rebooted, and everything was fine. I finally found a way to turn off the virtual CD, but that stinkin' partition is still on the drive and I want it gone. But, by that time, I had already copied over 100GB onto the new drive. One of these days, I'll have enough free space on a couple of other drives (and the time) to empty the new one. Once I have an empty drive, the next step is [pre]dd.exe if=/dev/zero of=\\?\Device\Harddisk2\Partition0 bs=1M --progress[/pre] followed immediately by [pre]dd.exe if=empty_dos_table.mbr of=\\?\Device\Harddisk2\Partition0[/pre] Take that, WD! edit: )

nikunjbhatt84
nikunjbhatt84

the 7th point: Doesn?t need third-party software, seems awkward. if a particular software is made for a particular task, the developer can not provide facility to protect the software from malwares. it is the user's responsibility to keep their devices and OS malware free by anyway. microsoft has created some called "standards", and now it has opted off from those "standards" by implementing the new feature called "ribbon" in the new ms office suits, and its really hard to find commands in this new "intuitive" interface for the old users. shouldnt they provide backward compatibility (menu)? sometimes i have to design according to the user/client's preference rather than implementing easy-to-use-for-users because they are already familiar with the old interface and they dont want to WASTE their time to learn new interface. so, ultimately, if the user is not satisfied with your designed interface, your work, weather it is more intuitive and easy-to-use, is of no use. i have also used linux and it had provided much richer user interface than windows 7 before almost 8 yrs of window 7 release. response time should also b considered. nero, visual studio, photoshop r the big programs which r resource hog and therefore slow. platform independent is also important.

prugsa.kilgore
prugsa.kilgore

Well written assessment. To keep in mind all the time is that GUI is designed to make the user's job easier. It has to be easy to install and update. It has to be intuitive for users to use and navigate from one screen/task to the other. I agree with one of the comments that intuitive and user friendliness in the eyes of the beholder; therefore it is very important before releasing the product, we must have other sets of eyes help troubleshooting and play around our GUI. We all think differently. We have different ways of accomplishing the same thing differently. Developers have to be open minded. The more feedback we get the better GUI product we are going to have. After all, once the product released customers will be the one who uses it not us.

a.portman
a.portman

11. Stays out of the system tray. HP, Adobe and QuickTime, this means you too. People are amazed when I clear up the startup mess and they find out their new computer really is fast. 12. Ask if I want a desktop icon and keep it where I want it. 13. NO ADDED SPYWARE. 14. Cross platform-ability. I use windows, web, smartphone and Linux. I would like to share whatever you do easily. 15. Say what you do/Do what you say. 16. Offer meaningful support. I am ok with a forum or a knowledge base, as long as it has the answers and I can find them.

weston2k
weston2k

Number 9: "Microsoft doesn?t comply with standards set by governing bodies" - who are you refering to there? If you had a multi-billion dollar software company and it's I.P. to protect, would you take the standards of some self-appointed busy-bodies, or would you go your own way? More anti-ms clap trap. Your bio say it all.

RF7000
RF7000

I would also add #11 portability #12 web site and forum supporting the code. #13 source code availability (open source) #14 price

brendan
brendan

Technically if you're main complaint about antivirus etc is the need to use third party programs, Microsoft actually offers free versions of all those programs itself. They can't bundle them with the OS because of the whole Antitrust ruling but they make them easily available.

gscratchley
gscratchley

as a former collegue used to say "'friendly-ness" is in the eye of the friend", or, as I infered from one poster: who is the 'friend' of the developer? I think 'user-friendly' means "just like I would have designed it" Glen

devshop
devshop

As an ISV, I couldn't agree more. And here's two things to add to the list. First, keep the GUI consistent so that when the user learns to enter data in one form, the next form is the same. The comfort level goes WAY up when they can look at the next page and say, 'Oh, just like before!'. Second, if you've got a lot of "cool" features in the app, don't make the user use them or even look at them to use the simple parts. For example, I always include a designer for building reports in every system. However I make sure there are plenty of pre-built reports on the Print menu so that the user doesn't have to spend half a day setting up a report to simply print their data. The designer is there (and documented) if they want to spend some time in the future customizing their reports, but it's not required for the overall functionality of the app.

garystafford
garystafford

Accurate assessment. Often, the problem is in the eye of the beholder. We, as developers, consider our software user-friendly, based on our own opinions, not those of the customer. We sometimes forget user = customer. Feedback, feedback, feedback = good software.

The 'G-Man.'
The 'G-Man.'

This was an inefficient (and inefficiently executed) design choice. How so? - new users find it easy to use and learn the product faster - that was the whole point. Old version users are the ones that had the issue - this is a different issue altogether!!

MichP
MichP

Windows never was intuitive. My company gave training sessions on how to get around in Windows when 3.1 was being adopted. But now most people have used mice and icons long enough that we don't think about it. I have learned to right-click to find options, but there are a lot of people that still never think of that. Which is why I do NOT want to use a ribbon in the software I write, no matter how much Microsoft is pushing it (at least not for several years).

BlueCollarCritic
BlueCollarCritic

@NickNielsen I soo hate it when this happens and it does happen to me with any USB drive (by any manufacturer so far) that is greater then 1TB in size. I realize this is illogical in weston2ks world but at this stage of the game if a user is running a currently supported OS then they should be able to plug in a USB drive they bought since the OS tehy are using was released and have it work without a lot of hassle.

john3347
john3347

This is another example of a developer trying to show off how "smart" they are rather than just making a product (either hardware or software) that just does what the user (who spent the money for the product) wants - reliably and as simply as possible. One more reason to steer away from Western Digital.

Slayer_
Slayer_

Choose Disk Management. Pick your hard drive from the list. In the partition chart at the bottom, right click your CD partition and choose Delete Partition. If you are running Vista or W7, you can also choose to increase the size of the main partition to fill the void.

a.portman
a.portman

Wouldn't "add-ons" be third party software? Aren't these add-ons what makes everybody's software, mine?

Kim SJ
Kim SJ

Yes, it is good for MS, but it costs the planet billions. Aren't we entitled to complain about bullies?

NickNielsen
NickNielsen

Ignoring or "enhancing" the existing standards from day one, almost before PC-DOS 1.0 was released with the IBM PC.

seanferd
seanferd

Standards the vastly predate MS? You know, back when MS was not even a million dollar company?

N_Payton
N_Payton

user friendly also involves response time. For the last ten years, our vendor's interface(state government) software used to be mainframe (green screen) based, and it took about 3 mintues for all the data fields to be entered onto that screen, and another minute to 90 seconds of turn-around time for a full screen of data to be uploaded and processed, and a new entry screen returned. but the Data entry process was complete on a single (very busy) screen. When they decided to rewrite the software in a web-based interface the designers of the replacement software took response time into account, and pledged an average < 2 second response. how did they do that? by handling the data more granularly. now, our users (who used to grumble about the 90+ seconds of lag) have found that in order to do the same thing as before, they have to fill in nearly twice as many data fields, and they're scattered over 6 (or more)context-sensitive tab pages which submit/update the database with nearly every tabkey press. So... while our data workload has increased only slighly, the effort to record the data has skyrocketed to an average of 15 minutes of clicking tabs, and dropdowns, and autofill fields, and waiting for context-sensitive content to show up. They are in fact meeting their 'average

TWrite
TWrite

You are on the right track, Gary. One necessary rule: Give the customer what they want, not what you think they want. (I know that a lot of you believe that the customer does not what they want.) There is a big disconnect between customer and developer (usually). Put yourself in THEIR shoes; think outside of your box and inside their box. What works for my work, based on feedback from clients, is meeting THEIR needs for data and presentation. If they do not have the data they need or cannot retrieve it in a form and format they can easily understand, the program/application is useless. One caveat: Do not let your customer capture data that they think they MAY need in the future. If they cannot see a specific need in the foreseeable future, it becomes frustrating for them to have to enter it. A final note on standardization. Make sure the DATA is standardized, otherwise the information quickly becomes hard or impossible to present. This leads to incomplete or incorrect data, both of which are as bad as no data.

ksfrogman
ksfrogman

It takes longer to find features, then remember where they are. The user is bombarded with too many options of how to do the same thing. Once I learn their damn ribbon layout, then yes, I might find it quicker to perform a function, but this does not detract from my frustration with Microsoft. Once I have become comfortable with the ribbons, they will change it again. What's next? IMHO, the average user would like simple things to be simple. A word processor should be simple, elegant and eloquent, not sloppily robust.

BlueCollarCritic
BlueCollarCritic

"Office Ribbon This was an inefficient (and inefficiently executed) design choice. How so? - new users find it easy to use and learn the product faster - that was the whole point. Old version users are the ones that had the issue - this is a different issue altogether!! " The original staement is correct. This WAS ineffecient for the end result was that more people were anywhere from unhappy to totally pissed off with the change to the Ribbon then those who found it positive. This is because there were more existing users who worked with office pre-Ribbon then new users who came on board with Office 2007. Microsoft SHOULD have made the Ribbon an option. If yoiu need proof as to how many people disliked the ribbon simply look at the number of PAY for use (not just FREE) utilities/apps there are to undo the Riboon mistake in Office. If the Demand is not there then the Supply will not be either. Another proof on this mistake is the change with the Ribbon in Office 2010. if the original Ribbon was so perfect why was it changed in Office 2010?

Jaqui
Jaqui

intuitive is different for every single person. There is absolutely no way that ANY software can be intuitive for EVERYONE. it is a term that should cause gales of laughter for everyone when it's used to describe software. derisive laughter.

NickNielsen
NickNielsen

Booted to Mint, found files hidden from Windows system. Deleted. Done. B-)

seanferd
seanferd

Do you need them to safely use the OS for its intended purpose? Or are they just something used to do another job for you, rather than propping up the OS?

weston2k
weston2k

Who are the governing bodies to which he refers? That's just two fingers to them. I shouldn't have mentioned the multi-billion dollar aspect, if you own a software company of ANY size why would you restict your design to someone elses standards? Unless you are interested in a level of interoperability of course. Why oh why is it such a shocker that a paid-for piece of software like office doesn't follow standards that would encorage people to go down a different route other than paying for it.

weston2k
weston2k

Office was the mentioned standards violation in the article, can you actually find a pre-MS Word standard that would be fit for purpose today? Consider this: Jpeg doesn't follow any previous image file standards, how could anyone forsee such a thing, so the jpeg group had to come up with it's own, do we critize them for inovating?!!!

The 'G-Man.'
The 'G-Man.'

If the last version is so perfect. Has to be as it was released, no?

ksfrogman
ksfrogman

Something that is not intuitive, becomes more so if it builds on the foundation of what is already familiar to a user. Driving a car may not have been intuitive at age 15, but once I learned, I could drive other cars, because the steering wheel and foot pedals were in the same place. Microsoft needs to stop changing their already crappy software, but I know they cannot resist the desire to add more and more features the average user will not use. The useful features and commands get buried in the mess, and become more difficult to find. Microsoft Outlook 2010 is a prime example. I just want to check my mail and write some replies. I shouldn't have to sift through ribbons, tabs, and eye candy to find the send/receive button.

boxfiddler
boxfiddler

I haven't met 'intuitive' yet, that is. Easy-to-learn is probably a better way to put 'intuitive'.

NickNielsen
NickNielsen

I read the comment as an insult. With your clarification, I do see your point, and understand it perfectly. I think we're disagreeing more on interpretation than on substance.

weston2k
weston2k

I was making a point, not an insult. Businesses would rather pay microsoft for their products, year after year rather use linux. That's why you (or anyone) would have trouble getting a pure linux job. Mentally deficient is an insult however. So I'm done with this conversation. Plus we're never gonna resolve this, so I say we just agree to disagree, no harm in that.

NickNielsen
NickNielsen

I'm all for accommodating the mentally deficient, but anybody who thinks you can get a tech support job that doesn't require any Windows work at all is, at best, only minimally sentient.

weston2k
weston2k

that your critism is 10 years out of date. If you use it at work so much and it's still so crap why don't you have a more up to date example than office 97? And doesn't it say a lot that you, even as a 10 year linux user can't get a job away from Microsoft?

NickNielsen
NickNielsen

I didn't say "hadn't used." That you choose to misunderstand the point says much...

weston2k
weston2k

That explains why your previous critisism of MS on this thread is 10 years out of date!

NickNielsen
NickNielsen

[i]...if you own a software company of ANY size why would you restict your design to someone elses standards? Unless you are interested in a level of interoperability of course.[/i] Microsoft obviously isn't interested in interoperability, not even with its own products. I knew there was a reason I hadn't bought a Microsoft product (except for work) in the last 10 years.

NickNielsen
NickNielsen

You may be able to save the file in .docx format, then open it using the compatibility pack with Word 2003, but what happens when you go back to 2007? Did you lose formatting? You probably did. I've had problems with Word 2003 considering simple documents saved in .doc format by Word 2007 as "corrupt". As a.portman notes, OpenOffice has no problems with them. Microsoft has been, and is, notorious for incrementally adjusting their "standards" without notice to, or consideration of, the end user of their software.

a.portman
a.portman

I think this is pretty far off the original thread, but OpenOffice has always been able to open and save in a wider range of file formats than MS Office of the same 'vintage'. That for years Word has not been able to open a Works document is just being rude to your customer base.

weston2k
weston2k

Purhaps MS is the common example of bad forward compatibility because so many people can relate to having that problem with MS software in the past. '97 and XP is a good example, but things have got better since then. I can write a file in 2007 and open in 2003 for example. I'm sure Open office probably has had the same problem, it's just because it's free, if you can't open a file, you just update.

NickNielsen
NickNielsen

Successive versions of Office do not follow Microsoft's own standards for Office file formats. For example, MS tells us that Office 97, Office 2000, and Office XP all use the same file standard for Word documents. Yet, if I open and save a document with Word XP, I can no longer open that file with Word 97. This is compliance?

seanferd
seanferd

I could be happily using Office 97, if I had a copy.

Jaqui
Jaqui

I couldn't write an application that you would find intuitive, but I could write one that you can easily learn. I think that the latter is far more accurate a statement than claiming it's intuitive.

Editor's Picks