Лекции по ЧМВ-дополнительные (1022759), страница 3
Текст из файла (страница 3)
Человек может одновременно запоминать сведения о 5...9 предметах. Время хранения этой информации около 2 секунд в кратковременной и около 30 секунд в долговременной. памяти. Поэтому люди разбивают поступающую информацию на порции, которые они могут одновременно хранить в памяти. Между порциями должны быть паузы. Существуют рекомендации по допустимому времени ответа интерактивной системы:
-
0,1...0,2 с - для подтверждения физических действий (например, нажатие клавиши или щелчок манипулятором мышь),
-
0,5...1,0 с - для ответа на простые команды,
-
1...2 с - при ведении связанного диалога,
-
2...4 с - для ответа на сложный запрос, если задержка не влияет на другую работу пользователя, то допустимо увеличение этого времени до 10 с,
-
более 10 с при работе в мультизадачном режиме, когда пользователь воспринимает данную задачу, как фоновый процесс,
-
при ответе более чем через 20 с пользователь может "забыть" о задании, заняться другой задачей и вернуться к данной, когда ему будет удобно.
Если приложение используется группой пользователей, то желательна адаптация системы к особенностям клиентов. Существуют три вида адаптации :
-
Фиксированная, когда пользователь явно выбирает уровень диалога. В простейшем случае используют два уровня - для начинающего и подготовленного пользователя.
-
Полная, когда система анализирует действия пользователя и подбирает под него оптимальные параметры диалога. Подобных систем, реализованных в полном масштабе, пока нет.
-
Косметическая, когда гибкость диалога обеспечивается без учета поведения пользователя, но без его прямого участия. Достигается с использованием умолчаний (система использует предопределенное значение параметра, пока пользователь не изменит его), сокращений (пользователь может вводить системно установленное сокращенное название команды), опережающего ввода ответов (пользователь вводит цепочку ответов, не дожидаясь запросов системы), многоуровневой помощи (система вводит сообщение начального уровня, которое пользователь может уточнит, запросив помощь следующего иерархического уровня), многоязычности (диалоговые сообщения выводятся на языке пользователя, команды используют другой язык).
В основу ГПИ положены три метафоры:
-
Рабочий стол. Это экран монитора, на котором присутствуют объекты в виде графических образов (пиктограмм и окон). Для изменения рабочей среды пользователю достаточно изменить свойства объектов рабочего стола не с помощью команд, а методом прямого манипулирования объектами. Современные ГПИ могут быть многооконными.
-
Работаешь с тем, что видишь. В каждый момент времени пользователь может работать только с теми документами, которые он видит на рабочем столе.
-
Видишь, что получишь. Выполняя какие-либо действия, пользователь сразу видит их результат.
3.2. Объектный подход к проектированию ГПИ
В ГПИ используется концепция интерфейса, управляемого данными (DCD - Data-centered Design). Первичными являются данные, а не средства работы с ними. Осовной программный объект - документ, который представляет собой абстрактное средство хранения и обработки данных. С понятием объекта связываются аспекты:
-
Свойства объекта.
-
Операции над объектом.
-
Связи (или отношения) между объектами. Различают набор объектов (с общими свойствами), объединение объектов (изменение оного объекта влияет на другие объекты), композиция объектов (образует новый объект), контейнер (содержит в себе другие объекты).
3.3. Компоненты ГПИ
К компонентам ГПИ относят:
-
Рабочий стол.
-
Пиктограммы.
-
Окна.
-
Манипулятор мышь.
-
Клавиатура.
3.4. Взаимодействие пользователя с приложением
К операциям взаимодействия относятся:
-
Навигация. Самая простая навигация осуществляется с помощью манипулятора мышь. Можно указателем мыши переместиться в любую позицию на экране. Вместо мыши может использоваться световое перо. редко применяется клавиатурная навигация, когда положение фокуса ввода можно задать нажатием предопределенных клавиш. Основные клавиши навигации:
Клавиша | Перемещение курсора | Перемещение курсора для комбинации Ctrl+клавиша |
Стрелка вправо | На один элемент вправо | На один более крупный элемент вправо |
Стрелка влево | На один элемент влево | На один более крупный элемент влево |
Стрелка вверх | На один элемент или стоку вверх | На один более крупный элемент или стоку вверх |
Стрелка вниз | На один элемент или строку вниз | На один более крупный элемент или строку вниз |
Home | В начало строки | В начало данных |
End | В конец строки | В конец данных |
Page Up | На один экран вверх | На один экран влево |
Page Down | На один экран вниз | На один экран вправо |
Tab | На следующее поле | На следующую большую область |
-
Выбор. Это прямое указание пользователем идентифицируемого объекта. Как правило, выбор бывает явным. Но возможен и косвенный выбор, осуществляемый по логическому правилу из текущего контекста. Например, при прокручивании ползунка линейки скроллинга выбор наблюдаемой в окне области происходит автоматически. Выбор может быть единичный и множественный. Если при множественном выборе выделяются рядом расположенные объекты, то такой выбор называется также непрерывным или выбором области. Раздельный выбор используется для объектов, которые пространственно или логически разделены. Для расширения области выбора можно использовать префиксные клавиши: Shift для соседних объектов, Ctrl - для разделенных объектов.
3.5. Правила взаимодействия с объектом
Просмотр. Осуществляется с помощью следующих основных операций:
Команда | Действие |
Открыть (Open) | Открывает первичное окно объекта. |
Закрыть (Close) | Закрывает окно |
Свойства (Properties) | Отображает свойства объекта в окне |
Помощь (Help) | Отображает окно с контекстной информацией об объекте |
-
Редактирование. Основные операции редактирования:
Команда | Действие |
Сохранить (Save) | Сохраняет все изменения на диске. |
Сохранить как (Save as) | Сохраняет все изменения на диске в файле с новым именем. |
Закрыть (Close) | Сохранить внесенные изменения после согласия пользователя. |
Повторить (Repeat) | Дублирует последнюю команду. |
Отменить (Undo) | Отменяет результат последней команды. |
Восстановить (Redo) | Восстанавливает результат последней отмененной команды. |
OK | Реализует внесенные изменения и закрывает окно. |
Применить (Apply) | Реализует внесенные изменения, но не закрывает окно. |
Отменить (Cancel) | Отменяет внесенные изменения и закрывает окно. |
Пауза (Pause) | Приостанавливает процесс. |
Продолжить (Continue) | Возобновляет приостановленный процесс. |
Останов (Stop) | Останавливает процесс. |
3.6. О вежливых программах
Профессора Стэндфордского Университета Клиффорд Насс (Clifford Nass) и Байрон Ривз (Byron Reeves) занимались изучением реакции человека на компьютер. Применяя классические методы социальной психологии, они обнаружили в поведении людей нечто интересное. Результаты их работы, опубликованные в книге "The Media Equation", показывают, что человек реагирует на компьютер так же как на других людей. Из этого исследования следует важный вывод: Если мы хотим, чтобы наша программа понравилась пользователям, мы должны сделать ее поведение похожим на поведение человека. Насс и Ривз утверждают что программы должны быть “вежливыми”, потому что вежливость – это универсальный человеческий признак.
Продукты производства с высокими познавательными способностями, такие как программы, тоже должны следовать этому правилу и быть вежливыми. Некоторые продукты высоких технологий ведут себя так, как будто сказав “пожалуйста” или “спасибо”, можно быть грубым, но это не вежливость. Если программа скупа на информацию, скрывает результаты своей работу, заставляет пользователя искать где находятся простейшие функции, и винит его в своих собственных неудачах, то пользователю она точно не понравится. Это произойдет независимо от “пожалуйста” и “спасибо”. Это также не зависит и от того, насколько находчивой, представительной, метафоричной, наполненной содержанием или персонализированной она будет.
Вот список того, что улучшает качество взаимодействия как с другими людьми, так и с программами.
-
Вежливая программа интересуется мной. Большинство программ не знает ничего о том, кто ею пользуется. Действительно, ни одна из программ на моем персональном компьютере не помнит ни меня, ни моих привычек, несмотря на то, что только я и никто другой постоянно, снова и снова пользуюсь ею. Каждая программа должна стараться запомнить мои привычки, и в частности, все, что я ей говорю.
-
Вежливая программа относится ко мне иначе, чем к другим. Невежливая программа контролирует действия пользователя, которые кажутся ей некомпетентными. Нет ничего страшного в том, чтобы программа выразила свое мнение о том, что я сделал ошибку, но она ни в коем случае не должна судить мои действия. Например, программа может утверждать, что я не могу отправить заказ, пока не введу свой номер социального страхования, но если я все таки захочу отправить заказ без него, программа должна сделать так как я сказал.
-
Вежливая программа предусмотрительна. Большинство программ не делает этого. Они лишь кратко отвечают на мои вопросы, не пытаясь проявить предусмотрительность в отношении другой информации, даже если она напрямую связана с моими целями. Если я попрошу свой текстовый процессор распечатать документ, он никогда не сообщит мне, что бумаги осталось мало, или что в очереди уже находятся 40 других документов.
-
Вежливая программа обладает здравым смыслом. В программе можно встретить пункты меню предлагающие простые, безвредные функции рядом с чрезвычайными, отменить которые невозможно.
-
Вежливая программа предвосхищает мои нужды. Мой web-браузер проводит большую часть своего времени в пустом ожидании, пока я просматриваю загруженные страницы. Однако он может очень просто предвосхитить мои потребности и подготовится к ним, вместо того чтобы тратить время впустую.
-
Вежливая программа отзывчива. У меня на компьютере обычно установлено разрешение экрана 1024х768. Когда я провожу презентации, мне необходимо временно сменить разрешение на 800х600 чтобы оно соответствовало низкому разрешению моего видео-проектора. Многие из запущенных программ реагируют на смену разрешения изменением размера, формы и положения на экране своих окон. Однако когда я меняю разрешение обратно, окна не возвращаются к своим размерам. Информация об этом легко доступна, однако программа не заботится о моих очевидных нуждах.
-
Вежливая программа умалчивает о своих проблемах. Программы должны молчать о своих проблемах и интересоваться вашими. Программа не только должна молчать о своих проблемах, но и должна уметь решать их сама.
-
Вежливая программа хорошо информирована. С другой стороны, все мы должны знать, что происходит. Когда я ищу информацию в Интернет через поисковую машину, я не могу быть уверен, что не наткнусь на неработающую ссылку. Я выбираю нужную мне ссылку и получаю противное сообщение об ошибке “404 Link Not Found”. Разве поисковая машина не может периодически проверять каждую ссылку? Если ссылка неверна, ее можно удалить из списка, и мне не придется тратить время на ожидание ее загрузки.
-
Вежливая программа восприимчива. Я раскрываю на весь экран окно любой запущенной программы. Затем я использую Панель Задач для переключения между запущенными приложениями. Но программы, которые я запускаю, не замечают этот факт. Я так часто максимизирую окна, что мои предпочтения должны быть ясными и однозначными. Другие пользователи работают с программами в маленьком окне, чтобы видеть Рабочий Стол. Так просто для программы понять это и предугадать действия пользователя.
-
Вежливая программа уверена в себе. Я ожидаю от служащих, с которыми я общаюсь определенной смелости и уверенности в себе. Если я прошу компьютер удалить файл, я не хочу чтобы он спрашивал у меня “Вы уверены?” Конечно я уверен, иначе бы я не спрашивал. Я хочу, чтобы он имел смелость в своих убеждениях и удалил файл.С другой стороны, если компьютер имеет какие-то подозрения, что я могу ошибаться – что может быть всегда – он должен предусмотреть это, и подготовиться к возможному восстановлению файла, если я вдруг передумаю. В любом случае, программа должна быть уверенной в своих действиях, а не перекладывать ответственность на меня.
-
Вежливая программа не задает лишних вопросов. Adobe Photoshop например осыпает пользователя множеством ненужных маленьких вопросов, каждый в отдельном окне. Невежливая программа задает множество раздражающих вопросов. Когда выбор предлагают насильственно – это тяжелое испытание. Выбирать можно разными способами.
-
Вежливая программа является подстраиваемой. Когда система ручной обработки информации переносится на компьютеры, что-нибудь всегда теряется. Чаще всего система компьютеризируется для увеличения объемов обрабатываемой информации, а не для изменения свой функциональности. Однако системам, работающим вручную, присуща гибкость – свойство, которое на так просто выделить среди остальных. Хотя автоматизированная система ввода заказов может обработать в миллион раз больше заказов, чем простой служащий, служащий всегда может подстроить работу системы. В автоматизированной системе эта возможность исчезает. Нет практически никакой возможности изменить работу той или иной функции. Принцип здесь простой – позволить пользователю делать все что он захочет, но подробно записывать все его действия, так что ответственность остается.
-
Вежливая программа приносит удовлетворение. В программировании трудно достичь удовлетворения. Компьютер не сделает ничего, пока вы не затратите огромных усилий на написание программы. Поэтому программисты создают свои программы точно такими же. Их программы заставляют пользователя вводить всю возможную информацию, а сами и пальцем не пошевелят. Если бы кто-то из людей вел себя подобным образом, вам бы он очень не нравился.Мы можем сделать программы значительно более вежливыми, если они будут работать для того, чтобы предоставить пользователю всю возможную информацию без значительных усилий с его стороны.
-
Вежливая программа внушает доверие. Друзья доверяют друг другу, потому что зависят друг от друга, и всегда готовы пожертвовать собой. Когда компьютеры ведут себя совершенно неуправляемо и неохотно выполняют задания пользователей, ни о каком доверии и речи быть не может. Я доверяю банковскому служащему, потому что он улыбается мне, но я всегда пересчитываю свои деньги после банкомата, потому что попросту не доверяю тупой машине. Программы раздражают нас не из-за недостатка возможностей, а из-за отсутствия вежливости.