Лекция 19. Комплексный подход к разработке пользовательского интерфейса. Общие принципы создания интерфейсов. Интерфейс человек-компьютер как отдельный компонент системы.

 

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

Стратегия разработки интерфейса человек - компьютер.

Интерфейс человек-компьютер как отдельный компонент системы.

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

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

Учет возможностей аппаратных и программных средств.

Разработчики систем, как, естественно, и другие специалисты, пользуются в работе своими старыми навыками. Этот внутренний консерватизм усиливает­ся, а не ослабевает вследствие стремительного раз­вития за последнее время аппаратных и програм­мных средств. Однако невозможно разработатьи ком­поненты интерфейса, не понимая возможностей и ограничений основных элементов, из которых он может быть по­строен.

Последовательность разработки.

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

Использование принятых принципов разработки интерфейса.

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

Понимание задач и пользователя.

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

Привлечение пользователей.

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

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

Однако единственный способ оценки доступности интерфейса - это посмотреть, как на самом деле пользователь взаимодействует с системой в нормаль­ных рабочих условиях. Процесс проектирования интерфейса противоречит традиционному взгляду на разработку программ как на линейный процесс, состоящий из нескольких этапов:Анализ - Разработка - Компоновка Реализа­ция.

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

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

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

Оценка.

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

- простота освоения и запоминания операций системы;

- быстрота достижения целей задачи, решаемой с помощью системы;

- субъективная удовлетворенность при эксплуа­тации системы.

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

Сохранение полученных рабочих навыков по исте­чению некоторого времени - это другой критерий (связанный с первым), который определяет объем знаний, достаточный для возобновления деятельности после некоторого перерыва в работе.

Быстроту решения задачи можно оценить ско­ростью или точностью. Заметим, что при оценке ско­рости учитывается не быстродействие системы, а вре­мя, необходимое для достижения поставленной цели. Поэтому для системы ввода данных важна не ско­рость работы с клавиатурой, а контрольная цифра, которую можно указать, например, так: "банковский служащий должен за час обработать не менее 20 счетов с ошибкой менее 1 %".

Критерий субъективной удовлетворенности отра­жает мнение пользователя о системе и удобстве ра­боты с ней. Этот критерий трудно оценить количе­ственно, но его можно выразить, например, с по­мощью частоты, с которой пользователи обращаются к дополнительным устройствам. Хотя все три критерия можно отнести к любым областям применения, для конкретных применений важным будет какой-либо один из них. Для систем, подобных системе управления авиатранспортом, важ­ными являются факторы точности и скорости. Для систем, рассчитанных на широкое применение, основ­ным требованием является отсутствие предваритель­ного обучения перед началом работы, поскольку час­то отсутствует возможность организовать такие за­нятия. При работе с системой, подобной электрон­ной почте, пользователи должны чувствовать себя так же удобно, как и при работе с более простыми системами, иначе они просто откажутся от них.

Установить значения для каждого критерия - это только часть трудностей; разработчик должен уметь измерять реальную производительность системы в соответствии с поставленными целями. Для прове­дения этих измерений использовалось несколько ме­тодик. Системы могут автоматически создавать и со­хранять копию конкретного диалога, заносить в си­стемный журнал время, затрачиваемое на выполне­ние различных этапов задания, или количество и тип ошибок. Пользователям предлагается ответить на во­просы или заполнить различные анкеты, чтобы мож­но было определить, удовлетворены ли они работой системы. За работой системы можно наблюдать визуально и даже записать на видеокассету для последующего анализа.

При использовании всех этих методов трудно быть уверенным в том, что получен действительно пра­вильный результат и что любые замеченные вами отклонения присущи системе, а не определяются каким-либо внешним фактором. Статистические мето­ды, которые часто используются, требуют более стро­гого подхода к трактовке природы испытуемого объек­та и способа проведения измерений. Общеизвестны трудности выбора вопросов анкеты, на которые мож­но дать точные и четкие ответы. Люди могут сущест­венно изменить свое поведение, если узнают, что за ними наблюдают или их "испытывают".

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

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

Контрольные вопросы

1. Каковы общие принципы создания пользовательских интерфейсов?

2. Почему интерфейс человек-компьютер рассматривается как отдельный компонент системы?

3. Каковы различные определения интерфейсов компьютерных систем?

4. Каковы типичные классифицирующие факторы для GUI-ориентированного приложения?