Философия "удобства" интерфейса и ее практические выводы

Публикация № 1089678

Программирование - Работа с интерфейсом

интерфейс

0
Как ни странно, но во многих случаях "удобство" интерфейса легко и просто измеряется числовыми величинами и соответственно можно вычислять, примерно во сколько раз один интерфейс "удобнее" другого.

С течением времени во всех программах регулярно происходит смена интерфейса на "более удобный, дружественный и наглядный".

При этом возникает вопрос, насколько новый интерфейс "удобней" предыдущего. Казалось бы, что попытка ответить на этот вопрос бессмысленна, т.к. это дело вкуса и сколько людей, столько и мнений.

НО! Главным моментом в оценке интерфейса является то, что интерфейс делится на два ПРИНЦИПИАЛЬНО И СИЛЬНО отличающихся вида:

1) универсальный интерфейс

2) прикладной интерфейс

Прикладной интерфейс -  это интерфейс рабочего места, когда пользователь на своем рабочем месте многократно в течении дня выполняет не очень большой (в пределах нескольких десятков) заранее ему хорошо известный набор/перечень  операций.

Для примера, такой интерфейс у рабочих мест по различной обработке первичных документов, у кассиров, у рабочих мест, которые занимаются постоянным выпуском различной ежедневной, еженедельной отчетности, и т.п.

Универсальный интерфейс - это интерфейс рабочего места, когда пользователь на своем рабочем месте выполняет очень разнообразные и возможно заранее ему неизвестные  в течении дня операции.

Такой интерфейс у экономистов, программистов, руководителей отделов, руководителей предприятий и т.п.

И конечно же, попытки рассуждений про "удобство" для универсальных интерфейсов (типа интерфейса операционной системы) и на самом деле - это просто троллинг.

Но! Удобство интерфейса для ПРИКЛАДНОГО ИНТЕРФЕЙСА легко и четко измеряется, потому что у прикладного интерфейса понятие "УДОБНЫЙ" должно быть равно понятию "ЭФФЕКТИВНЫЙ"!

Далее речь буду вести ТОЛЬКО о ПРИКЛАДНОМ ИНТЕРФЕЙСЕ и просьба это четко понимать и не пытаться мои рассуждения применить к УНИВЕРСАЛЬНЫМ ИНТЕРФЕЙСАМ.

Итак, как определить удобство ПРИКЛАДНОГО ИНТЕРФЕЙСА.

У прикладного интерфейса есть два этапа, в которых его эффективность оценивается по разному.

  1. этап обучения
  2. этап профессиональной работы.

Так вот, "УДОБСТВО" прикладного интерфейса легко и просто измеряется

1) СКОРОСТЬЮ ОБУЧЕНИЯ пользователей С МИНИМАЛЬНОЙ ЧУЖОЙ ПОМОЩЬЮ с этим интерфейсом, т.е. периодом времени за который пользователь достигнет стадии, когда он уже не будет задумываться, а уже будет четко знать, какой перечень "кнопок" и в каком порядке он должен "нажимать" для выполнения хотя бы 90% требуемых от него операций.

2) СКОРОСТЬЮ профессиональной РАБОТЫ пользователя, т.е. количеством выполненных пользователем операций за период времени, обычно за день, конечно же при условии, что поток операций заранее превышает способность пользователя их все выполнить.

Далее я буду уже четко подразумевать под "удобством" или "эффективностью" прикладного интерфейса именно две вышеприведенные, довольно четко определяемые, скорости. 
Т.е. "удобство"/"эффективность" - это скорость.

Т.е., если пользователю с ПРИКЛАДНЫМ интерфейсом стало работать "гораздо удобнее и приятнее", но при этом скорость его работы упала более, чем в 1.5 раза, то к черту такое "удобство" !

Пример такого "удобства" - дать возможность пользователю прикладного интерфейса вводить даты для задания периодов (даты начала и конца) отчета мышкой через "календарь", а не цифрами с клавиатуры в поля дат.

Ессно, что пользователи бывают разные и оценка "удобства" должна происходить примерно на пользователях примерно одинаковых способностей.

И при этом "удобство" прикладного интерфейса ведь не нужно измерять с точностью до 1%.
Мне кажется что, ЕСЛИ эффективность прикладного интерфейса у примерно одинаковых пользователей отличается в пределах 30%, то это одинаково "удобный" интерфейс.

Т.е. если фирма наняла программистов и те переписали программу под "современный и более удобный, более дружественный и т.д., и т.п." интерфейс, но при этом после обучения и освоения нового интерфейса, скорость работы пользователей ЯВНО (более чем в 1.5 раза) не выросла, то деньги на новый интерфейс выброшены зря, т.к. погрешность "измерения скорости работы пользователей" - это и есть 30-40%.
Ведь и на самом деле "скорость работы пользователей" - это величина, зависящая от слишком многих факторов и со временем может меняться в ту или иную сторону на 30-40% не зависимо от интерфейса.

 

ВЫВОДЫ.

Одним из способов решения проблемы "удобства" прикладного интерфейса является использование специализированных "клавиатур" или других устройств  обмена информацией (таких как смартфоны), которые удобны для данного рабочего места.
В этом случае конечно же рассуждать не о чем - интерфейс д.б. "заточен" под конкретное устройство обмена информацией.

Поэтому дальнейшие выводы будут про рабочие места с прикладным интерфейсом, на которых только клавиатура, мышка и опционально сканер штрих кода.

Дальше выскажу, скорее всего шокирующие Вас, свои практические выводы из вышеперечисленных философских рассуждений.

 

ВЫВОД 1.

Прикладной интерфейс пользователя в идеале должен состоять из двух,  довольно сильно отличающихся по оформлению друг от друга, режимов:

- режим обучения

- режим профессиональной работы.

 

ВЫВОД 2.

В программе, в которой есть рабочие места и с универсальным, и с прикладным интерфейсом, эти интерфейсы должны быть СОВЕРШЕННО разные.

Т.е. нельзя "обычный многооконный мышекликательный" универсальный интерфейс ставить на рабочее место, подразумевающее прикладной интерфейс.

 

Далее сначала аксиома:
===========================================================
в БОЛЬШИНСТВЕ СЛУЧАЕВ при выборе как работать, когда пользователь в интерфейсе что-то может сделать нажатием клавиши на мышке ("нажатием кнопки" на экране) или нажатием клавиши на клавиатуре, то он будет часто стараться сделать это именно мышкой.
===========================================================

На моей практике, вместо слова "часто" должно быть написано "ВСЕГДА!". Но возможно кому-то из вас более везет с пользователями ...


ВЫВОД 3.

Прикладной интерфейс должен быть написан так, чтобы пользователь не мог использовать мышку!

При этом, конечно же, набор управляющих клавиш должен по минимуму содержать именно сочетания клавиш и тем более не содержать тройных сочетаний клавиш.

Т.е. нужно максимально использовать нажатие или одной клавиши, или в сложном случае нажатие последовательности или сочетания двух клавиш для выполнения одной операции.

Как только пользователь пытается что-то сделать мышкой, то его производительность в прикладном интерфейсе (когда он заранее уже четко знает что же он хочет сделать) падает в разы (а на моей практике и в десятки раз) по сравнению с выполнением этой же операции через нажатие заранее определенной последовательности клавиш клавиатуры.

На моей практике, пользователь, который уже освоил свою работу, выполняет последовательность из десятка операций используя только клавиатуру меньше, чем за секунду (при условии, что компьютер успевает их отрабатывать), а вы сами знаете, что даже простое нажатие последовательности не очень больших (обычных таких) кнопок или пунктов меню на экране, занимает как минимум В СРЕДНЕМ 1 СЕКУНДУ НА 1 КНОПКУ/ПУНКТ, а часто и 2 секунды, даже просто из-за риска "промахнуться" среди других рядом нарисованных элементов.

Конечно же, все вышесказанное является моим субъективным мнением. которое может быть ошибочным.

0

См. также

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. Ta_Da 08.07.19 14:34 Сейчас в теме
Алан Купер "Психбольница в руках у пациентов" - там можно почитать про когнитивную сложность (и разработку интерфейсов программистами в целом).

В частности, вы предлагаете заставлять людей, которые в повседневной жизни пользуются мышкой и сенсорными экранами без использования клавиатуры, а также, в случае необходимости, печатающих двумя указательными пальцами, глядя на клавиатуру, использовать исключительно эту самую клавиатуру, потому что подсчитали, что "скорость увеличится".

Любая мало-мальски сложная задача (т.е. сложнее, чем конвейерная обработка товаров, например на кассе продуктового магазина, где собственно и может быть крайне важным скорость выполнения операции), будет решаться с большими усилиями (хотя, возможно и быстрее, если сидеть с секундомером), чем с помощью мыши. Как только задача выходит за рамки "проносим товар через сканер штрихкода", превращается в мучительный и долгий поиск товара в интерфейсе из 80ых, с поиском нужного названия/штрихкода/кода товара в полуобщей тетрадочке, лежащей возле оператора.

P.S. судя по картинке к публикации, предположу что "управляемые формы не нужны и очень медленно работают" ?
2. lmnlmn 50 08.07.19 15:59 Сейчас в теме
Вы могли бы пояснить вывод №1? Если в режиме обучения интерфейс разительно отличается от рабочего варианта, то чему пользователь научится? Не смог себе представить что вы имели в виду.
4. user1235822 08.07.19 19:58 Сейчас в теме
(2) Про режим обучения наверно нужно написать отдельную статью.

Ситуация ярко проявляется, если фирме есть более 100 торговых точек,
многие из которых расположены в достаточно захолустных районах области. :-)
Но и при гораздо меньшем числе пользователей с прикладным интерфейсом, думаю
режим обучения будет полезен.

В такой ситуации постоянно идет процесс смены опытного пользователя на новичка
на каком-н. рабочем месте (в какой-н. торговой точке).
И при этом практика показывает, что
1) наличие распечатанных инструкций не помогает - предпочитают не читать, а звонить
в поддержку, т.е. нам - ИТ-шникам. :-)
2) новичка на рабочем месте обучать либо уже не кому, т.к. предыдущий опытный
пользователь ушел в отпуск/заболел/уволился, либо если есть второй опытный
пользователь, то он загружен под завязку.
Соотв-но - звонят в тех. поддержку и нужно все рассказывать заново и регулярно
с перерывами в несколько дней :-)

При этом при всем руководство обычно на стороне пользователей, т.к. они дают
доход, а ИТ-шники должны им создавать максимально комфортные условия для их работы.

Поэтому идея следующая...

При появлении очередного новичка в Н-ском районе,
когда делаешь ему логин и пароль входа, заодно у него ставишь галочку
в режиме работы - "режим обучения".

Вы надеюсь играли в современные навороченные игры - там обязательно при запуске
игры включается режим обучения, когда интерфейс игры остаются практически
такой же как в игре, но разве что основной экран уменьшен, а в освободившееся
окно постоянно выводятся различные контекстные подсказки.
Также регулярно, в те моменты, когда не требуется быстрота действий, появляются
разные контекстные информационные сообщения, которые нужно убирать кнопкой "ОК".

Так и в режиме обучения программы должно происходить что-то аналогичное.
Также описания кнопок в режиме обучения должны быть длинными и рассчитанными
на ту..., в смысле новичков.
Т.е., например, не надпись "Ins - новый", а "Клавиша Insert - ввести новый чек",
при этом возможно как-то показать в одном из сообщений, где же на клавиатуре
эта клавиша Insert, Delete, Esc и т.д.

Ну и есть еще много моментов режима обучения, но это лучше в отдельной статье рассказать.
Fox-trot; +1 Ответить
5. Ta_Da 08.07.19 20:02 Сейчас в теме
(4)
Т.е., например, не надпись "Ins - новый", а "Клавиша Insert - ввести новый чек",
при этом возможно как-то показать в одном из сообщений, где же на клавиатуре
эта клавиша Insert, Delete, Esc и т.д.

угу, вместо того чтобы на экране нарисовать большую кнопку "Ввести новый чек", заставляем пользователя тыкать кнопку Insert на клавиатуре, а режим обучения позволяет кивать на то, что пользователи "ту.. новички".

При этом при всем руководство обычно на стороне пользователей, т.к. они дают
доход, а ИТ-шники должны им создавать максимально комфортные условия для их работы.


Вы все-таки почитайте Купера, т.к. у вас классическая ситуация с разработчиками, которые пилят интерфейсы так, как удобно им и пользователями, которые вынуждены в этих условиях "выживать".
7. serega_sun 14.07.19 18:16 Сейчас в теме
Кто-то читал эти подсказки...
Обычно: "Мне программа выдала табло с каким-то текстом, я нажала "Да" и теперь ничего не работает"
3. oldcopy 120 08.07.19 17:09 Сейчас в теме
"Философия" автора вообще с трудом поддается логике.

Вывод 1 вообще непонятно из чего сделан. Я еще соглашусь, что обучающий интерфейс может быть в чем-то упрощен, но опять таки - чему он тогда будет учить? Основной задачей обучения работе в интерфейсе должно являться формирование механической памяти, когда пользователь уже не думает, где расположена та или иная кнопка, а нажимает ее не раздумывая.

Вывод 2 тоже весьма спорный. Интерфейс должен обладать двумя вещами - преемственностью, т.е. пользователь должен по максимуму использовать уже имеющийся опыт, и простотой, чем проще интерфейс - тем более положительно психологически он воспринимается, так как уменьшается его кажущаяся сложность и пользователь уже не так боится залезть куда-то не туда или накосячить.

При этом отличие от универсального интерфейса может быть, скажем интерфейс кассира, а может и не быть, если это одна из ролей 1С. Но интерфейс кассира, несмотря на то, что он радикально отличается от интерфейса 1С, обладает преемственностью, так как построен на общих принципах построения такого рода интерфейсов. Грубо говоря интерфейс 1С вызовет у кассира растерянность, а интерфейс РМК будет восприниматься как нечто привычное.

Вывод 3 - вообще бред. Разные задачи и интерфейсы обладают разными способами ввода и не всегда клавиатура является оптимальным. Если говорить о кассе, то там широко используются программируемые клавиатуры, но это далеко не тоже самое, что клавиатура обычная. По своей сути это скорее аналог сенсорного экрана, где кнопки клавиатуры дублируют экранные кнопки интерфейса. Но клавиатура удобна только если таких кнопок немного, в той же розничной торговле их с пяток будет (основных), а основной способ ввода данных о товаре - это вовсе сканер ШК.

Если глянуть в общепит, то там клавиатура становится полностью неуместна, листать меню гораздо удобнее на сенсорном экране, там это давно уже стандарт де факто. Но очень часто сотрудники используют мышку, потому что дамам с ногтями по экрану стучать неудобно. Раньше, когда сенсоры были резистивные, вместо мышки использовались личные карты, которыми щелкали по экрану. На емкостных экранах такой способ не проходит, поэтому в ход пошла мышка.

Или обратите внимание на способ авторизации сотрудников и ввода данных о клиенте. В рознице это обычно штрих-код, который есть как на бейджах сотрудников, при помощи которых они авторизуются на кассе, так и на дисконтных и скидочных картах. Потому что сканер ШК в рознице есть всегда. А общепит наоборот использует магнитные карты, потому как сканер ШК в общепите редкость (сейчас появился только "благодаря" ЕГАИС) и откровенно неудобен, так как требует обоих рук, а во второй руке у официанта может быть телефон (принимает заказ с доставкой), поднос, блокнот и т.д., ридер позволяет работать одной рукой, как и сенсор, поэтому и прижился в общепите как стандартный метод ввода.
dabu-dabu; rusmil; Ta_Da; +3 Ответить
6. user1235822 09.07.19 09:07 Сейчас в теме
(3) Спасибо за развернутый коммент.
Пожалуй и правда, для ясности нужно указать нюанс с использованием специализированных устройств обмена информацией.
Статью подправил.
Оставьте свое сообщение