Участник:ArmorAdmin/Интерфейс пользователя — различия между версиями

Материал из Бронетанковой Энциклопедии — armor.kiev.ua/wiki
Перейти к: навигация, поиск
(О проектировании пользовательского интерфейса)
(О проектировании пользовательского интерфейса)
Строка 5: Строка 5:
 
}}
 
}}
 
== О проектировании пользовательского интерфейса ==
 
== О проектировании пользовательского интерфейса ==
Практически вся моя профессиональная деятельность, начиная с подготовки и продолжая работой, была связана с различными интерфейсами пользователя. В начале это были интерфейсы взаимодействия человека с боевой машиной - различные органы управления и контроля что-то включающие и переключающие, передвигающиеся и поворачивающиеся, сигнализирущие и моргающие...
+
Практически вся моя профессиональная деятельность, начиная с подготовки и продолжая работой, была связана с интерфейсами пользователя. В начале это были интерфейсы взаимодействия человека с боевой машиной различные органы управления и контроля что-то включающие и переключающие, передвигающиеся и поворачивающиеся, сигнализирущие и моргающие...
 
   
 
   
Затем - пользовательский интерфейс различных программ. И если в инженерном деле эргономика практически точная наука и система "человек-машина-среда" изучены достаточно глубоко и выработаны рекомендации по многим вопросам организации рабочего места оператора и, следуя им (рекомендациям), можно добиться хороших результатов (хотя, проблемы есть и никуда от них не деться, многие "инженеры" и сейчас плюют на эргономику), то в программной инженерии всё много сложнее. Вам понравилось моё сложноподчиненное с уточнениями предложение? Отож...
+
Затем пользовательский интерфейс различных программ. И если в инженерном деле эргономика практически точная наука и система "человек-машина-среда" изучены достаточно глубоко и выработаны рекомендации по многим вопросам организации рабочего места оператора и, следуя им (рекомендациям), можно добиться хороших результатов (хотя, проблемы есть и никуда от них не деться, многие "инженеры" и сейчас плюют на эргономику), то в программной инженерии всё много сложнее. Вам понравилось моё сложноподчиненное с уточнениями предложение? Отож...
 
   
 
   
 
О проектировании интерфейса. Разберем простой, но показательный пример, как не надо делать.  
 
О проектировании интерфейса. Разберем простой, но показательный пример, как не надо делать.  
 
   
 
   
На пре-предыдущей работе у меня был ноутбук "Версия", сейчас - "Toshiba". Все ноутбуки (может и не все, но те, что я видел - точно) могут быть подключены к внешнему монитору. Если включаешь ноутбук с подключенным внешним монитором, то работает он, включаешь без внешнего - встроенный LCD.  
+
На пре- предыдущей работе у меня был ноутбук «Версия», сейчас — «Toshiba». Все ноутбуки (может и не все, но те, что я видел точно) могут быть подключены к внешнему монитору. Если включаешь ноутбук с подключенным внешним монитором, то работает он, включаешь без внешнего встроенный LCD.  
 
   
 
   
 
Пока все просто. Но бывают случаи, когда надо переключить с монитора на монитор в горячем режиме, не выключая компьютер. Это, как правило, осуществляется комбинацией специальных кнопок на клавиатуре (Fn + <пиктограммка монитора>), они переключают на другой монитор или на оба сразу.
 
Пока все просто. Но бывают случаи, когда надо переключить с монитора на монитор в горячем режиме, не выключая компьютер. Это, как правило, осуществляется комбинацией специальных кнопок на клавиатуре (Fn + <пиктограммка монитора>), они переключают на другой монитор или на оба сразу.
 
   
 
   
С "Версией" все было просто, нажал комбинацию кнопок - переключился в следующий режим (всего режимов - три).
+
С «Версией» все было просто, нажал комбинацию кнопок - переключился в следующий режим (всего режимов три).
 
   
 
   
С "Тошибой" не все так просто. Не выключая ноутбук, отключил его от монитора, перешел в другой кабинет, открыл и нажал заветные кнопки... Ничего, экран черный. Опять нажал - ничего. Нажал Fn и, удерживая ее, пиктограммку монитора несколько раз. И при каждом нажатии просходило... '''ни-че-го'''. Я проверил индикаторы - ноутбук включен и работает, даже иногда сигналит винчестер.
+
С «Тошибой» не все так просто. Не выключая ноутбук, отключил его от монитора, перешел в другой кабинет, открыл и нажал заветные кнопки... Ничего, экран черный. Опять нажал - ничего. Нажал Fn и, удерживая ее, пиктограммку монитора несколько раз. И при каждом нажатии просходило... '''ни-че-го'''. Я проверил индикаторы - ноутбук включен и работает, даже иногда сигналит винчестер.
 
   
 
   
Несколько попыток оживить монитор не удались и я, не долго думая, выключил ноутбук, благо запущена была только сама "Винда". Включил снова, монитор ожил.
+
Несколько попыток оживить монитор не удались и я, не долго думая, выключил ноутбук, благо запущена была только сама «Винда». Включил снова, монитор ожил.
 
   
 
   
 
Вернувшись на рабочее место, подключил ноутбук к внешнему монитору. Опять нажал кнопки - внешний монитор не работает. Но работает встроенный. Ввел пароль, вошел в Винду, опять нажал кнопки... Чудо! На экране появилась подсказка в виде картинок, что сейчас работает встроенный монитор. Отпустил кнопки, подсказка исчезла. Удерживая Fn, начал нажимать кнопку с пиктограммой - выделяются другие подсказывающие картинки, но больше ничего не происходит. Выделил картинку внешнего монитора и отпустил кнопки. Чудо-2!! Заработал внешний монитор и погас встроенный.
 
Вернувшись на рабочее место, подключил ноутбук к внешнему монитору. Опять нажал кнопки - внешний монитор не работает. Но работает встроенный. Ввел пароль, вошел в Винду, опять нажал кнопки... Чудо! На экране появилась подсказка в виде картинок, что сейчас работает встроенный монитор. Отпустил кнопки, подсказка исчезла. Удерживая Fn, начал нажимать кнопку с пиктограммой - выделяются другие подсказывающие картинки, но больше ничего не происходит. Выделил картинку внешнего монитора и отпустил кнопки. Чудо-2!! Заработал внешний монитор и погас встроенный.
 
   
 
   
Грустная история... И складывается такое ощущение, что идиот здесь все же не я - не смог сразу разобраться в двух кнопках, а тот инженер, который придумал такой способ переключания, исходя из каких-то высоко-рациональных, но понятных только ему соображений.
+
Грустная история... И складывается такое ощущение, что идиот здесь все же не я не смог сразу разобраться в двух кнопках, а тот инженер, который придумал такой способ переключания, исходя из каких-то высоко-рациональных, но понятных только ему соображений.
 
   
 
   
Критерий простой - оператор (пользователь) на управляющее воздействие ожидает увидеть реакцию системы. А ее нет! Все же она (графическая подсказка), конечно, есть, но только на включенном мониторе и только в режиме работающей Винды после ввода пароля, а в режиме блокировки ее нет.
+
Критерий прост — оператор (пользователь) на управляющее воздействие ожидает увидеть реакцию системы. А ее нет! Все же она (графическая подсказка), конечно, есть, но только на включенном мониторе и только в режиме работающей Винды после ввода пароля, а в режиме блокировки ее нет.
 
   
 
   
 
Это не та реакция! Это почти то же самое, что изменить пароль доступа пользователя к почтовому ящику и послать новый пароль... правильно, на этот же ящик.
 
Это не та реакция! Это почти то же самое, что изменить пароль доступа пользователя к почтовому ящику и послать новый пароль... правильно, на этот же ящик.
 
   
 
   
Итак, в чем разница подходов двух производителей? В первом случае пользователь должен всего-лишь догадываться, что существуют такие кнопки, которые позволяют переключиться и все получится само собой, во втором - он должен знать не только о кнопках, но КАК ИМЕННО их нажимать (пиктограммку два или три раза, после чего Fn отпустить, а я, пробуя такой режим, нажал четыре раза и вернулся в исходный режим).
+
Итак, в чем разница подходов двух производителей? В первом случае пользователь должен всего-лишь догадываться, что существуют такие кнопки, которые позволяют переключиться и все получится само собой, во втором он должен знать не только о кнопках, но и КАК ИМЕННО их нажимать (пиктограммку два или три раза, после чего Fn отпустить, а я, пробуя именно так, нажал четыре раза, вернулся в исходный режим м ничего не изменилось).
 
   
 
   
Что самое смешное, в ноутбуке Версии не было никаких подсказывающих пиктограмм, он просто аппаратно работал так, как нужно пользователю, а для тошибовского привлекали программистов, которые ваяли программу с никому, на сам деле, не нужными картинками-подсказками. Затратили больше денег и усилий, получили худший результат. А все почему? '''ДЕЛАЛИ НЕ ДЛЯ СЕБЯ'''.
+
Что самое смешное, в ноутбуке Версии не было никаких подсказывающих картинок на экране, он просто аппаратно работал так, как нужно пользователю, а для тошибовского привлекали программистов, которые ваяли программу с никому, на сам деле, не нужными картинками-подсказками. Затратили больше денег и усилий, получили худший результат. А все почему? '''ДЕЛАЛИ НЕ ДЛЯ СЕБЯ'''. Т.е. просто некий менеджер решил, что будет круто отображать режим на экране, а в этом случае отобразить сначала текущий режим, согласитесь, логично. ''Но не логично с точки зрения пользователя с черным экраном'', т.е. того пользователя, которому на самом деле нужна эта команда.
 
   
 
   
Откидывая всю шелуху про юзабилити и прочее, рекомендую одно простое правило: ''программа должна быть написана '''для себя''''' (или как для себя). Если ты пишешь её не для абстрактного юзера, говоря "они должны делать так-то и так-то" а юзером считаешь лично себя и операции того юзера, который тебе представляется, будешь потом делать сам и не один раз ("ведь это я буду так делать"), то, удобство интерфейса конечной программы много выше, чем обычно это у тебя получается...
+
Откидывая всю шелуху про юзабилити и прочее, рекомендую одно простое правило: ''программа должна быть написана '''для себя''''' (или ''как для себя''). Если ты пишешь её не для абстрактного юзера, говоря «они должны делать так-то и так-то», а юзером считаешь лично себя и операции того юзера, который тебе представляется, будешь потом делать сам и не один раз ("ведь это я буду так делать"), то, удобство интерфейса конечной программы много выше, чем обычно это у тебя получается...
  
 
[[Категория:Личные заметки]]
 
[[Категория:Личные заметки]]

Версия 20:44, 1 ноября 2006

Автор(ы): Чобиток Василий 15:42, 1 ноября 2006 (EET)

О проектировании пользовательского интерфейса

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

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

О проектировании интерфейса. Разберем простой, но показательный пример, как не надо делать.

На пре- предыдущей работе у меня был ноутбук «Версия», сейчас — «Toshiba». Все ноутбуки (может и не все, но те, что я видел — точно) могут быть подключены к внешнему монитору. Если включаешь ноутбук с подключенным внешним монитором, то работает он, включаешь без внешнего — встроенный LCD.

Пока все просто. Но бывают случаи, когда надо переключить с монитора на монитор в горячем режиме, не выключая компьютер. Это, как правило, осуществляется комбинацией специальных кнопок на клавиатуре (Fn + <пиктограммка монитора>), они переключают на другой монитор или на оба сразу.

С «Версией» все было просто, нажал комбинацию кнопок - переключился в следующий режим (всего режимов — три).

С «Тошибой» не все так просто. Не выключая ноутбук, отключил его от монитора, перешел в другой кабинет, открыл и нажал заветные кнопки... Ничего, экран черный. Опять нажал - ничего. Нажал Fn и, удерживая ее, пиктограммку монитора несколько раз. И при каждом нажатии просходило... ни-че-го. Я проверил индикаторы - ноутбук включен и работает, даже иногда сигналит винчестер.

Несколько попыток оживить монитор не удались и я, не долго думая, выключил ноутбук, благо запущена была только сама «Винда». Включил снова, монитор ожил.

Вернувшись на рабочее место, подключил ноутбук к внешнему монитору. Опять нажал кнопки - внешний монитор не работает. Но работает встроенный. Ввел пароль, вошел в Винду, опять нажал кнопки... Чудо! На экране появилась подсказка в виде картинок, что сейчас работает встроенный монитор. Отпустил кнопки, подсказка исчезла. Удерживая Fn, начал нажимать кнопку с пиктограммой - выделяются другие подсказывающие картинки, но больше ничего не происходит. Выделил картинку внешнего монитора и отпустил кнопки. Чудо-2!! Заработал внешний монитор и погас встроенный.

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

Критерий прост — оператор (пользователь) на управляющее воздействие ожидает увидеть реакцию системы. А ее нет! Все же она (графическая подсказка), конечно, есть, но только на включенном мониторе и только в режиме работающей Винды после ввода пароля, а в режиме блокировки ее нет.

Это не та реакция! Это почти то же самое, что изменить пароль доступа пользователя к почтовому ящику и послать новый пароль... правильно, на этот же ящик.

Итак, в чем разница подходов двух производителей? В первом случае пользователь должен всего-лишь догадываться, что существуют такие кнопки, которые позволяют переключиться и все получится само собой, во втором — он должен знать не только о кнопках, но и КАК ИМЕННО их нажимать (пиктограммку два или три раза, после чего Fn отпустить, а я, пробуя именно так, нажал четыре раза, вернулся в исходный режим м ничего не изменилось).

Что самое смешное, в ноутбуке Версии не было никаких подсказывающих картинок на экране, он просто аппаратно работал так, как нужно пользователю, а для тошибовского привлекали программистов, которые ваяли программу с никому, на сам деле, не нужными картинками-подсказками. Затратили больше денег и усилий, получили худший результат. А все почему? ДЕЛАЛИ НЕ ДЛЯ СЕБЯ. Т.е. просто некий менеджер решил, что будет круто отображать режим на экране, а в этом случае отобразить сначала текущий режим, согласитесь, логично. Но не логично с точки зрения пользователя с черным экраном, т.е. того пользователя, которому на самом деле нужна эта команда.

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