Friendliness

Published in Datamation

Reader's Forum
February 1982

Today the term "user friendly," as applied to EDP systems, has become fashionable in many circles. Considering some of the bad press given computer systems in recent years (e.g.. "To err is human, but to really foul things up takes a computer"), the suggestion that systems can actually befriend their users is attractive.

Over the last decade a change has been occurring in users' expectations of the services that EDP systems should provide. Many users have come to believe that data processing should be more than a passive tool for the solution of predefined problems. They want systems to provide the kind of active support that encourages new ways of solving problems. This can't happen without a new, comfortable, even friendly. relationship between systems and their users.

What exactly is this elusive quality and how can one determine which systems have it and which do not? There is no precise definition of user friendly since the features that a system can offer its users vary widely depending on the system's environment - online or batch - and its application - technical, financial, administrative, etc. Nevertheless, experience suggests that user friendly systems typically share some or all of the following characteristics:

  1. Operational clarity: The purpose and the operational logic of the entire system and each of its component parts should be clear and unambiguous. The complexity of the systems should always be less than or, at worst, equal to the complexity of the task.

  2. Functional flexibility: The system should be able to handle all or most problems in certain well-specified classes, not just those individual problems that the systems analysts happened to specify during system development.

  3. Error prevention: The system should preclude or minimize the possibility of user error.

  4. Error tolerance: When the user does make mistakes, the system should minimize their adverse effects. It should require only that the erroneous data or commands be reentered. Potentially costly mistakes (such as file deletion) should always be reversible.

  5. User skill accommodation: The system should allow users at all levels of skill and experience to work effectively.

  6. System unity: All system components should be based on the same design principles, and the system should be implemented so that it appears to all users as a single system, not as an ad hoc collection of related parts.

  7. Task completeness: The system should be subdivided into reasonable units of work or tasks as viewed by the end user. If it cannot handle all steps of a basic, practical task, it probably should not handle the task at all.

  8. Task security: The system should not lose work that has been successfully completed (even if a subsequent task fails).

In addition to these features, user-friendly systems must provide good performance, be reliable, and be available when the user needs them. User-friendly systems should also be well documented. A clumsy system, however, cannot be improved simply by documenting all of its idiosyncrasies.

Maintainability is, of course, an important issue, but it is not specifically addressed in this context since it is really related to a separate systems attribute, namely, maintenance friendliness. Strictly speaking, the end user is not concerned about the ease or difficulty of the service technician's job.

There are other user-friendly features that could be added to this list, but if you are fortunate enough to be introduced to a system that meets most of these basic criteria, take a few minutes to get better acquainted with it. You may have just found a new friend.

- D. Verne Morland
Munich, West Germany