Естественность, согласованность интерфейса. Принцип «обратной связи». Простота интерфейса. Свойства интерфейса. Правила создания интерфейса.
Создание качественного интерфейса предполагает реализацию принципа «интересы пользователя превыше всего» и соответствующую методологию разработки всего программного продукта. В англоязычной литературе для описания такого подхода используется термин User-centered Design ( UCD )- «Разработка, ориентированная на пользователя». Эта технология, кроме всего прочего, предполагает как можно более раннее проектирование интерфейса с последующим его развитием в процессе разработки самого программного продукта.
Свойства "хорошего" интерфейса пользователя заключается в том, что пользователь всегда чувствует, что он управляет программным обеспечением, а не программное обеспечение управляет его чувствами. Для создания у пользователя такого чувства «внутренней свободы» интерфейс должен обладать целым рядом свойств, рассмотренных ниже.
Естественность интерфейса.
Естественный интерфейс - такой, который не вынуждает пользователя существенно изменять привычные для него способы решения задачи. Это, в частности, означает, что сообщения и результаты, выдаваемые приложением, не должны требовать дополнительных пояснений. Целесообразно также сохранить систему обозначений и терминологию, используемые в данной предметной области. Использование знакомых пользователю понятий и образов (метафор) обеспечивает интуитивно понятный интерфейс при выполнении его заданий.
Согласованность интерфейса.
Согласованность позволяет пользователям переносить имеющиеся знания на новые задания, осваивать новые аспекты более быстро и благодаря этому фокусировать внимание на решаемой задаче, а не тратить время на уяснение различий в использовании тех или иных элементов управления, команд и т. д. Обеспечивая преемственность полученных ранее знаний и навыков, согласованность делает интерфейс узнаваемым и предсказуемым. Согласованность важна для всех аспектов интерфейса, включая имена команд, визуальное представление информации и поведение интерактивных элементов. Для реализации свойства согласованности в создаваемом программном обеспечении необходимо учитывать его различные аспекты.
Согласованность в пределах приложения.
Одна и та же команда должна выполнять одни и те же функции, где бы она ни встретилась, причем одним и тем же образом. Например, если в одном диалоговом окне команда «Копировать» означает немедленное выполнение соответствующих действий, то в другом окне она не должна требовать от пользователя, дополнительно указать расположение копируемой информации. Другими словами, используйте одну и ту же команду, чтобы выполнить функции, которые кажутся подобными пользователю.
Согласованность в пределах рабочей среды.
Поддерживая согласованность с интерфейсом, предоставляемым операционной системой (например, ОС Windows), ваше приложение может опираться на те знания и навыки пользователя, которые он получил ранее при работе с другими приложениями.
Дружественность интерфейса (принцип «прощения»).
Пользователи обычно изучают особенности работы с новым программным продуктом методом проб и ошибок. Эффективный интерфейс должен принимать во внимание такой подход. На каждом этапе работы он должен разрешать только соответствующий набор действий и предупреждать пользователей о тех ситуациях, где они могут повредить системе или данным, еще лучше, если у пользователя существует возможность отменить или исправить выполненные действия. Даже при наличии хорошо спроектированного интерфейса пользователи могут делать те или иные ошибки. Эти ошибки могут быть как «физического» типа (случайный выбор неправильной команды или данных) так и «логического» (принятие неправильного решения о выборе команды или данных). Эффективный интерфейс должен позволять предотвращать ситуации, которые, вероятно, закончатся ошибками. Он также должен уметь адаптироваться к потенциальным ошибкам пользователя и облегчать ему процесс устранения последствий таких ошибок.
Принцип «обратной связи».
Обратная связь с пользователем состоит в том, что каждое действие пользователя должно получать визуальное, а иногда и звуковое подтверждение того, что программное обеспечение восприняло введенную команду; при этом вид реакции, по возможности, должен учитывать природу выполненного действия. Обратная связь эффективна в том случае, если она реализуется своевременно, то есть как можно ближе к точке последнего взаимодействия пользователя с системой. Когда компьютер обрабатывает поступившее задание, полезно предоставить пользователю информацию относительно состояния процесса, а также возможность прервать этот процесс в случае необходимости.
Простота интерфейса.
Интерфейс должен быть простым. При этом имеется в виду не упрощенчество, а обеспечение легкости в его изучении и использовании. Кроме того, он должен предоставлять доступ ко всему перечню функциональных возможностей, предусмотренных данным приложением. Реализация доступа к широким функциональным возможностям и обеспечение простоты работы противоречат друг другу. Разработка эффективного интерфейса призвана сбалансировать эти цели. Один из возможных путей поддержания простоты - представление на экране информации, минимально необходимой для выполнения пользователем очередного шага задания. В частности, необходимо избегать многословных командных имен или сообщений. Непродуманные или избыточные фразы затрудняют пользователю извлечение существенной информации. Другой путь к созданию простого, но эффективного интерфейса - размещение и представление элементов на экране с учетом их смыслового значения и логической взаимосвязи. Это позволяет использовать в процессе работы ассоциативное мышление пользователя.
Можно также помочь пользователям управлять сложностью отображаемой информации, используя последовательное раскрытие (диалоговых окон, разделов меню и т. д.). Последовательное раскрытие предполагает такую организацию информации, при которой в каждый момент времени на экране находится только та ее часть, которая необходима для выполнения очередного шага. Сокращая объем информации, представленной пользователю, уменьшается объем информации, подлежащей обработке. Примером такой организации является иерархическое (каскадное) меню, каждый уровень которого отображает только те пункты, которые соответствуют одному, выбранному пользователем, пункту более высокого уровня.
Гибкость интерфейса.
Гибкость интерфейса - это его способность учитывать уровень подготовки и производительность труда пользователя. Свойство гибкости предполагает возможность изменения структуры диалога и/или входных данных. Концепция гибкого (адаптивного) интерфейса в настоящее время является одной из основных областей исследования взаимодействия человека и компьютера. Основная проблема состоит не в том, как организовать изменения в диалоге, a в том, какие признаки нужно использовать для определения необходимости внесения изменений и их сути. Существуют три вида адаптации фиксированная, полная и косметическая.
При фиксированнойадаптации пользователь явно выбирает уровень диалоговой поддержки. Простейший вариант такой адаптации основан на использовании правила двух уровней, согласно которому система обеспечивает два вида диалога:
- подробный (для начинающего пользователя);
- краткий (для подготовленного пользователя).
Правило двух уровней может быть расширено до правила N-уровней диалога.
Однако такой подход имеет несколько недостатков:
- не учитывается тот факт, что навыки накапливаются постепенно;
- пользователь может хорошо знать одну часть системы и совсем не знать другую;
- пользователь сам определяет уровень своей подготовки, что снижает объективность оценки.
При полнойадаптации диалоговая система стремится построить модель пользователя, которая по мере обучения последнего и определяет стиль диалога в зависимости от этих изменений. При этом одной из основных проблем является распознавание характеристик пользователя. Для ее решения необходимо определить, что использовать в качестве таких характеристик: время, затрачиваемое пользователем на ответ, количество его обращений за помощью или характер ошибок и тип запрашиваемой помощи.
Косметическаяадаптация призвана обеспечить гибкость диалога без учета поведения пользователя, но и без однозначного выбора им конкретного стиля диалога.
Такой адаптации можно достичь за счет применения следующих методов:
- использование умолчаний;
- использование сокращений;
- опережающий ввод ответов;
- многоуровневая помощь;
- многоязычность.
Использование умолчаний.Сущность умолчания состоит в том, что система использует некоторое изначально заданное значение какого-либо параметра, пока пользователь не изменит его. В этом случае имеют место два аспекта адаптации системы:
во-первых, начинающий пользователь имеет возможность использовать большинство параметров системы по умолчанию;
во-вторых, система может запоминать значения, либо заданные при последнем сеансе работы (например, имя редактируемого файла), либо наиболее используемые.
Для удобства начинающих пользователей значения, используемые по умолча-
нию, могут выводиться на экран вместе с соответствующим вопросом системы, например: «Дата регистрации документа? [текущая]».
Самый распространенный способ принятия значений по умолчанию - это нулевой ввод, то есть простое нажатие клавиши «Ввод»в качестве ответа на вопрос системы. Если используется командный язык, то пользователь просто пропускает параметр, используемый по умолчанию.
Использование сокращенийпредполагает, что пользователь вместо полного имени команды может вводить ее любое допустимое сокращенное обозначение. Идея опережающего ввода ответовзаключается в том, что пользователь имеет возможность на очередном шаге диалога вводить не один ответ, а цепочку последовательных ответов, упреждая возможные вопросы системы.
Один из методов обеспечения многоуровневой помощи состоит в том, что сначала на экран выводится сообщение начального уровня, а затем пользователь может уточнить полученную информацию, используя переход на более низкий уровень по ключевому слову. На таком принципе основана работа многих современных Help-систем, обучающих гипертекстовых систем.
Сущность многоязычности интерфейса состоит в том, что структура и семантика диалоговых сообщений, которые выдает и получает пользователь должны отвечать нормам родного языка пользователя и не зависеть от того на каком языке разработаны инструментальные средства, которые он использует.
Возможный подход к реализации многоязычности - создание средств реакции системы на действия пользователя (сообщения-запросы, подсказки, сообщения об ошибках) отдельно от синтаксиса языка программирования (инструментальных средств).
Эстетическая привлекательность интерфейса,проектирование визуальных компонентов является важнейшей составной частью разработки программного интерфейса. Корректное визуальное представление используемых объектов обеспечивает передачу весьма важной дополнительной информации о поведении и взаимодействии различных объектов. В то же время следует помнить, что каждый визуальный элемент, который появляется на экране, потенциально требует внимания пользователя, которое, как известно, не безгранично. Следует обеспечить формирование на экране такой графической среды, которая не только содействовала бы пониманию пользователем представленной информации, но и позволяла бы сосредоточиться на наиболее важных ее аспектах.
Обобщая изложенное, можно кратко сформулировать те основные правила, соблюдение которых позволяет рассчитывать на создание эффективного пользовательского интерфейса.
- проектирование пользовательского интерфейса следует рассматривать как самостоятельный этап в создании приложения, и его выполнение должно начинаться как можно раньше;
- необходимо учитывать возможности и особенности аппаратно-программных средств, на базе которых реализуется интерфейс;
- целесообразно учитывать особенности и традиции той предметной области, к которой относится создаваемое приложение;
- процесс разработки интерфейса должен носить итерационный характер, его обязательным элементом должно быть согласование полученных результатов с потенциальным пользователем;
- средства и методы реализации интерфейса должны обеспечивать возможность его адаптации к потребностям и характеристикам пользователя.