Обработка ошибок
Первая и самая лучшая защита от ошибок - это разработка такой системы, в которой ошибки пользователей просто невозможны. Хороший пример такого типа защиты мы видим в любом автомобиле с автоматической коробкой передач. Попытка запустить мотор при включенной трансмиссии может повредить чувствительный и сложный механизм; более того, машина никуда не поедет, а лишь резко дернется вперед. Это плохо для машины, для водителя и для невинного пешехода, случайно оказавшегося рядом с дернувшейся машиной.
Чтобы этого не случилось, любой автомобиль с автоматической трансмиссией оборудован стартером, который не сработает, если рычаг выбора режима не находится в положении «парковка». Поскольку запустить двигатель при включенной трансмиссии невозможно, ошибка никогда не будет совершена. К сожалению, большинство пользовательских ошибок не столь легко предупредить.
Следующий способ исключить ошибки - сделать их затруднительными. Однако в этом случае даже при самых серьезных мерах предосторожности некоторые ошибки обязательно произойдут. Тогда система должна сделать все возможное, чтобы помочь пользователю осознать ошибку и устранить ее. В некоторых ситуациях система может даже устранить ошибку за пользователя, но будьте осторожны: ничто так не раздражает в поведении программного продукта, как чрезмерное рвение в устранении ошибок пользователя. (Если вы работали с редактором Microsoft Word, вы меня поймете: в Word встроены бесчисленные функции, призванные исправлять некоторые распространенные ошибки, но я всегда отключаю эти функции, чтобы
Иметь возможность нормально работать, не занимаясь исправлением исправлений.)
Каждый уровень обработки ошибок, задействованный при проектировании взаимодействия, повышает процент пользователей, получивших позитивный опыт.
Информативные сообщения об ошибках и хорошо продуманные интерфейсы во многих случаях помогут пользователям обнаружить совершенные ошибки. Однако некоторые действия пользователя могут вначале казаться корректными, а потом будет слишком поздно, чтобы система могла их обработать. В таких случаях система должна предоставить пользователю способ восстановления после