Не так давно меня зафрендил Андрей Шапиро (
x_raizor ). Сделал он это найдя мою запись про
пользовательские ошибки. Я в том посте обещал рассказать и про то, как пользовательские ошибки можно предотвратить. Начинаю выполнять.
Одним из интерфейсных решение для предотвращения ошибок пользователя является ограничение. Рассмотрим пример.
У меня дома есть шкаф. Хороший такой, гнутый.
Хотя шкаф у меня уже давно, пару дней назад я прищемил себе палец его дверцей. Произошло это потому что я попытался открыть обе дверцы сразу, а так как шкаф в этом месте впуклый произошло следующее.
Ошибка возникла во время определения действий. Нужно было открывать шкаф, как обычно, одной рукой.
1. Формирование цели.
2. Формирование намерения.
3. Определение необходимых действий.
4. Исполнение действий.
5. Восприятия состояния окружающего пространства.
6. Интерпретация окружающего пространства.
7. Оценка результатов действия.
Предотвратить такую ошибки могло бы ограничение. Если бы у шкафа была только одна ручка, я бы физически не смог открыть сразу две.
Ограничения - пожалуй самый опасный способ предотвращение ошибок. Неправильные ограничения могут навредить больше, чем последствия пользовательской ошибки. Именно из-за этого плохие ограничения так часто вызывают гнев пользователей.