The UX of Complex Software

Imagine giving a person a copy of Intuit QuickBooks.  The person has no accounting knowledge and no experience with this software or competing software.  In other words, this is a layman.  Imagine that their job was to get QuickBooks up and running for a small business with 30 people and 5 million in revenue.

Result: They would likely fail.

They would probably blame the software as not being easy to use.  They would have a mental model of what they needed to do and it wouldn’t be the same mental model as QuickBooks.  The problem, however, isn’t the software.  The problem is that the person has no knowledge of accounting or bookkeeping.

If you were to give the person “consulting”, it would be a waste to show them where the buttons were in the software and how to print reports.  Much more importantly, they would need lessons on basic bookkeeping.  Having the right mental models will make the software seem easier.

This same fact goes towards most complex software.  I didn’t understand Windows Server, Active Directory and Exchange until I understood the basics of DNS, Routers and the Internet Protocol (IPv4).  Human Resources software is more than the buttons, you need to understand people, incentives and motivations.  Marketing software is more than “drag/drop workflow”, you need to learn about marketing, offers and content creation.  Every complex software suffers from this basic problem.  Photoshop is an ineffective tool unless you understand the basics of composition, color theory, balance, typography and general art.

So why is it that most software consulting focuses on how to use the tool, rather than the basics of the craft the tool is meant to help with.  We often think of software users as intermediates or experts; people who know the craft and just need software to help them.  I think the reverse is true.  People buy software because they see that experts use it and they hope they can learn the craft through using the tool.  As if buying expensive saws and toolboxes will make me a carpenter.

There is certainly a place for schools in this education, but very often, I find that people enter a craft well after school ends.  They dive in without any help.  It’s up to the software vendors to help continue the education in our chosen crafts to make people more successful. Make the software easier just misses the point.  We need to make the people better practitioners.

Note:  This is not an excuse to accept difficult software.  This is pointing out that there is more involved than learning the software.

4 replies on “The UX of Complex Software”

I don’t think making software easier to use is missing the point. I do agree that training is required. However, there are some things that software can do to make beginners’ lifes easier, like railing them in the right direction. It’s a balance act, sure, but it can be done.

Quickbooks, by the way, allow a complete novice to do some pretty advanced stuff.

I think Excel is a reasonable good example of a product that is good for almost anyone (regardless of ability). Excel does lack the ability to serve people who have never used it before, but with 1 hour of training, you can learn enough to make it a very useful program for a very long time. Once you have that basic knowledge, the design allows people to naturally learn more complex concepts. This can take people a long way, but not forever. At least in my experience, Excel has two barriers that I encountered which could have be made easier. The first is that the high level advanced statistics are written only for people who already know what they are; there is no logical series of excel steps that would ever teach someone how to use those. The other is macros and VBA. I didn’t know these existed until a few years ago and they have saved me countless hours since. I still have almost no idea how to write VBA, but thanks to the internet I can steal what I need. To be honest, I can think of any software that actually does a great job working with the user from the basics to expert. We need the technology for the computer to evaluate what you are doing and help, as well as the ability to ask questions verbally and have a “Watson” give you a useful reply.

Excel doesnt apply because there is no craft behind it. I was talking about software that requires offline knowledge such as accounting, HR, real estate management, etc etc.

Whatya think?