Разработчики программных комплексов зачастую рассматривают пользовательский интерфейс отдельно от функциональности системы, как дополнение. Пользователи программ, как правило, не разделяют функциональность и пользовательский интерфейс. Для пользователей именно ПИ является программой. Для них, если интерфейс хороший, стало быть, и сама программа хороша и удобна.
Под пользовательским интерфейсом (ПИ) программы будем понимать совокупность элементов, позволяющих пользователю программы управлять ее работой и получать требуемые результаты.
Пользовательский интерфейс часто понимают только как внешний вид программы. Однако на деле пользователь воспринимает через ПИ всю систему в целом, а значит, такое понимание ПИ является слишком узким. В действительности ПИ включает в себя все аспекты дизайна, которые оказывают влияние на взаимодействие пользователя и системы. Это не только экран, который видит пользователь. Пользовательский интерфейс состоит из множества составляющих, таких как:
набор задач пользователя, которые он решает при помощи системы
используемая системой метафора (например, рабочий стол в MS Windows и т.п.)
элементы управления системой
навигация между блоками системы
визуальный (и не только) дизайн экранов программы.
О важности правильного проектирования пользовательского интерфейса свидетельствует такой факт. Почти всегда при внедрении информационных систем общая эффективность организации увеличивается, при этом ряд исследований показывает, что грамотно разработанные ПИ может значимо увеличить эффективность по сравнению с просто внедренной ИС. Исследование компании IBM показало, что проведенный с учетом человеческого фактора полный редизайн одной из их систем позволил сократить время обучения пользователей до одного часа. До проведения редизайна на изучение системы уходила неделя.
Структура и классификация пользовательских интерфейсов
В дизайне пользовательского интерфейса можно условно выделить декоративную и активную составляющие. К первой относятся элементы, отвечающие за эстетическую привлекательность программного изделия. Активные элементы подразделяются на операционные и информационные образы моделей вычислений и управляющие средства пользовательского интерфейса, посредством которых пользователь управляет программой. Управляющие средства различных классов программных изделий могут значительно различаться. Поэтому необходимо провести хотя бы предварительную классификацию интерфейсов и соответствующих им управляющих средств.
На первом уровне такой классификации полезно выделить классы интерфейсов, происхождение которых связано с используемыми базовыми техническими средствами человеко-машинного взаимодействия (таблица 1). Исторически появление таких средств вызывает возникновение новых классов пользовательского интерфейса. Впрочем, с появлением новых средств использование интерфейсов старых классов не обязательно полностью прекращается. Классы интерфейса являются слишком широкими понятиями. Классы, задаваемые базовыми интерактивными средствами, целесообразно разбить на подклассы, например, в пределах графического класса различаются подклассы: двухмерные и трехмерные интерфейсы. По этой классификации широко распространенный интерфейс WIMP (Windows-Icons-Menus-Pointing device) относится к первому из указанных подклассов. Сегодня развиваются такие новые классы интерфейсов, как SILK (речевой), биометрический (мимический) и семантический (общественный).
Таблица 1. Классификация управляющих средств пользовательского интерфейса
Классы интерфейса Внимание!
Если вам нужна помощь в написании работы, то рекомендуем обратиться к
профессионалам. Более 70 000 авторов готовы помочь вам прямо сейчас. Бесплатные
корректировки и доработки. Узнайте стоимость своей работы.
|
Подклассы |
Примеры типов управляющих средств |
Символьный |
Командный интерфейс |
«Вопрос-ответ» |
Командная строка |
||
Графический |
Простой графический |
Экранные формы |
Управляющие клавиши |
||
Истинно графический, двухмерный |
Меню |
|
Графические элементы управления |
||
Прямое манипулирование |
||
Трехмерный |
Конические деревья |
Начал получать распространение и новый вид пользовательского интерфейса – тактильный. Пока эта область еще не достаточно изучена, основанная на тактильных ощущениях аппаратура появилась совсем недавно. Тактильные устройства, в отличие от других интерактивных устройств, способны как "чувствовать", так и передавать информацию. Таким образом, дизайнеры тактильных интерфейсов рассматривают две равно важные стороны: тактильные ощущения (чувство касания) и "кинестетическое" (kinesthetic) чувство (ощущение, где находится тело). Эти устройства имеют общую особенность: они снабжены средством силовой обратной связи - таким, как PHANToM, которое получает информацию о положении и жесте, а возвращает величину приложенной в точке силы. Таким образом, пользователь может ощущать форму жесткого объекта, в том числе через несколько слоев различного сопротивления при надавливании на внешнюю поверхность (что полезно, например, в хирургических симуляторах).
Как уже отмечено выше, в настоящее время оформилось два принципиально различных подхода к организации пользовательского интерфейса. Первый, исторически более ранний подход состоит в предоставлении пользователю командного языка, в котором запуск программ оформлен в виде отдельных команд. Этот подход известен как интерфейс командной строки (Command Line Interface - CLI).
Альтернативный подход состоит в символическом изображении доступных действий в виде картинок – икон (icons) на экране и предоставлении пользователю возможности выбирать действия при помощи мыши или другого координатного устройства ввода. Этот подход известен как графический пользовательский интерфейс (Graphical User Interface - GUI). Один из подклассов GUI (двухмерный) принято обозначать аббревиатурой WIMP (Windows-Icons-Menus-Pointing device), что отражает задействованные интерактивные сущности - окна, пиктограммы, меню и позиционирующее устройство (обычно мышь). Именно интерфейсы такого типа, завоевавшие популярность вместе с Macintosh в 1984 году и позднее скопированные, в частности, в Windows для ПК, доминируют и по сей день.
Разработчики современных ОС обычно предоставляют средства для реализации обоих подходов и, зачастую, оболочки, использующие оба типа интерфейсов. Сравним их достоинства
Аргументы в пользу CLI
Удачно спроектированные командные языки обеспечивают: высокую скорость обработки, эффективность и экономию использования ресурсов системы. Важными преимуществом хороших командных языков по сравнению с GUI является их алгоритмическая полнота: в GUI пользователь ограничен теми возможностями, для которых разработчик программы нарисовал иконки или сочинил пункты в меню. Командные же языки могут использоваться для решения любых алгоритмизуемых задач, в том числе и таких, о которых разработчики языка никогда и не задумывались.
Любопытно, что последнее достижение в области пользовательского интерфейса - распознавание речи и голосовое управление - означает, по существу, возврат к командному языку, с той лишь разницей, что команды произносятся.
Современные интерактивные командные процессоры решают практически все проблемы командных языков предыдущих поколений.
Исправление опечаток в командах и набор последовательностей одинаковых или похожих команд осуществляется с использованием средств вспоминания ранее набранных строк – «истории». Современные командные процессоры обеспечивают гибкие средства поиска команд в историческом списке, их редактирования, повторного использования отдельных частей этих команд и т.д.
Набор длинных имен файлов, каталогов и других объектов облегчается автоматическим расширением имен. Это средство, позволяет, набрав первые несколько символов имени, расширить это имя до полного или получить список всех имен, начинающихся с данной последовательности букв.
Неудобные, плохо запоминаемые или почему-либо не устраивающие пользователя команды могут быть переименованы с использованием синонимов (aliases). Этот же механизм может быть использован для сокращения часто исполняемых сложных команд.
Аргументы в пользу GUI
Командные языки требуют затрат времени и усилий для изучения. Нужно отметить, что при изучении требуются не только интеллектуальные, но и эмоциональные усилия. Первое негативное впечатление может создать устойчивый страх перед компьютером, затрудняя его эффективное использование и изучение. Напротив, графический интерфейс предоставляет новому пользователю возможность быстро окинуть взглядом доступные возможности и выбрать желаемую. Во многих случаях наглядность вариантов оказывается важнее богатства возможностей.
Однако в некоторых случаях излишнее богатство вариантов может просто запутать пользователя. Не нужно забывать, что человек способен одновременно оперировать лишь довольно ограниченным количеством объектов и параметров; по современным представлениям для человека и большинства теплокровных животных это количество ограничено 6 - 7 объектами.
Даже после освоения базовых возможностей системы человек может забыть команду для исполнения какой-либо операции; в этом смысле графические интерфейсы, где все возможности перед глазами, оказываются предпочтительны.
Утверждение о том, что GUI ограничивает возможности пользователя заранее предопределенными возможностями, не всегда соответствует действительности: хорошо продуманные интерфейсы обеспечивают почти такую же гибкость в комбинации операций, как и командные языки. Возможность же записывать и вновь проигрывать последовательности действий (например, макросы) во многих ситуациях может отлично заменить командные файлы.
Относительно высокие накладные расходы, неразрывно связанные с графическими интерфейсами, не являются таким уж большим злом. Современные цены на аппаратуру достаточно низки для того, чтобы большая эффективность изучения и использования графической системы быстро себя окупала. Кроме того, многие современные настольные системы используются для приложений, которые сами по себе требуют высококачественной графики и большой вычислительной мощности: САПР, полиграфические работы, синтез и обработка видеоданных и т.д. На фоне потребностей таких приложений накладные расходы, связанные с графическим интерфейсом, оказываются просто не стоящими упоминания.
Еще одно немаловажное обстоятельство: хорошо продуманный графический интерфейс с правильно подобранными цветами, красиво нарисованными управляющими элементами окон и т.д., просто сам по себе приятен для глаз.
Выводы. Если попытаться непредвзято сравнить доводы, становится видно, что основное противоречие состоит во взглядах на сложность изучения командного языка: сторонники CLI считают его простым делом, в то время как для сторонников GUI это едва ли не основное препятствие к использованию компьютера.
Возможно, такое различие свидетельствует о том, что разные категории пользовательских интерфейсов предпочтительны для людей с разным складом мышления. Например, можно предположить, что командные интерфейсы удобнее для людей с логическим складом мышления, а графические - с образным. Отчасти это подтверждается тем, что ориентированные на GUI компьютеры Macintosh в основном используются художниками, дизайнерами и другими представителями ``образных'' творческих профессий.
Командный интерфейс хорош, когда пользователь ясно представляет себе, чего он хочет, а особенно для автоматизации регулярно исполняемых рутинных задач. Графические же интерфейсы удобнее при решении нечетко сформулированных или плохо алгоритмизуемых проблем.
Поэтому хорошая система должна предоставлять оба интерфейса. Например, разработчики фирмы Apple долгое время пытались избежать включения в систему командного интерпретатора, но, в конце концов, под давлением пользователей и особенно специалистов по технической поддержке они были вынуждены реализовать командный язык AppleScript.
Недостатки WIMP-интерфейсов
Помимо обозначенных достоинств, WIMP-интерфейсы принесли с собой и большие проблемы. Во-первых, чем более сложным является приложение, тем труднее осваивать интерфейс, причем эти трудности возрастают нелинейно. Взятые в отдельности интерфейсные особенности и инструменты могут быть вполне простыми, но, будучи в большом количестве интегрированы в одно приложение, они образуют новое качество сложности. Многие современные настольные приложения столь объемны, чтобы не сказать громоздки, что пользователь, погрузившись однажды в их функциональность, начинает даже отказываться от новейших версий, продолжая использовать то малое подмножество возможностей, которое удалось изучить.
Во-вторых, пользователи проводят слишком много времени, манипулируя интерфейсом, а не работая с самим приложением. Квалифицированные пользователи часто бывают раздражены слишком большим количеством слоев, возникающих в процессе point and click и создающих своеобразный хаос из-за слишком многих интерфейсных элементов (использование сокращенных комбинаций клавиш - это суррогатный метод решения этой проблемы).
В-третьих, WIMP GUI вместе с их 2D- интерфейсными элементами проектировались для работы с двухмерными же приложениями - такими, как обработка текстов, компоновка документов и электронные таблицы. Если же приложение является по своей сути трехмерным, то работа с ним с помощью 2D элементов управления становится не слишком естественной. Нынешние WIMP-интерфейсы для 3D-приложений обычно состоят из управляющих панелей с 2D-кнопками и слайдеров, окружающих 3D-мир, которые используются для управления 3D-курсором, для манипуляций с точкой зрения наблюдателя и для редактирования объектов. Это позволяет в некоторой степени поддерживать "непрямое" взаимодействие и "когнитивную дистанцию". Понятно, что 3D-приложения, как правило, имеют много большую визуальную сложность, чем двухмерные, что еще более усиливает связанные с WIMP-интерфейсами проблемы.
В-четвертых, не все пользователи способны эффективно использовать мышь и клавиатуру - либо оттого, что им это не кажется естественным в контексте их задачи, либо из-за вызываемых этими устройствами чисто физиологических неудобств, связанных с постоянными нажатиями на клавиши при сильном напряжении зрения (не говоря уже о специальных категориях пользователей с физическими недостатками). Соответственно главным недостатком WIMP-интерфейсов является то, что они никак не используют такие каналы взаимодействия, как речь, слух и прикосновения. Хотя большое количество наших нейронов находится в "визуальной" части коры головного мозга, что позволяет зрению быть информационным каналом с самой высокой пропускной способностью, все равно без речи, слуха и прикосновений общение с физическим миром не может быть полноценным. Как указывает Билл Бакстон (Bill Buxton) из Aliias/Wavefront, WIMP-интерфейсы, основанные на использовании клавиатуры и мыши, являются совершенным инструментом только для существ с одним глазом, одним пальцем, лишенных всяких иных органов чувств.
Еще одно ограничение WIMP-интерфейсов в том, что они предназначены для одинокого пользователя настольной системы, который управляет объектами, не обладающими автономным поведением, реагирующими в основном на манипуляции с мышью. Соответственно имеется один, не разделяемый во времени полудуплексный канал взаимодействия; система откликается на каждое дискретное событие ввода, и эти события могут быть легко распознаны - они состоят из простых нажатий на клавиши и выбора с помощью мыши. Самый сложный ввод - последовательность позиций мыши, которая может представлять, например, путь закрашивающей кисти.
Основные принципы создания интерфейса
1. Естественность (интуитивность). Работа с системой не должна вызывать у пользователя сложностей в поиске необходимых директив (элементов интерфейса) для управления процессом решения поставленной задачи.
2. Непротиворечивость. Если в процессе работы с системой пользователем были использованы некоторые приемы работы с некоторой частью системы, то в другой части системы приемы работы должны быть идентичны. Также работа с системой через интерфейс должна соответствовать установленным, привычным нормам (например, использование клавиши Enter).
3. Неизбыточность. Это означает, что пользователь должен вводить только минимальную информацию для работы или управления системой. Например, пользователь не должен вводить незначимые цифры (00010 вместо 10). Аналогично, нельзя требовать от пользователя ввести информацию, которая была предварительно введена или которая может быть автоматически получена из системы. Желательно использовать значения по умолчанию где только возможно, чтобы минимизировать процесс ввода информации.
4. Непосредственный доступ к системе помощи. В процессе работы необходимо, чтобы система обеспечивала пользователя необходимыми инструкциями. Система помощи отвечает трем основным аспектам - качество и количество обеспечиваемых команд; характер сообщений об ошибках и подтверждения того, что система делает. Сообщения об ошибках должны быть полезны и понятны пользователю. Идеальное сообщение об ошибке должно отвечать всего на три вопроса:
в чем заключается проблема?
как исправить эту проблему сейчас?
как сделать так, чтобы проблема не повторилась?
При этом отвечать на эти вопросы нужно возможно более вежливым и понятным пользователям языком.
5. Гибкость. Интерфейс системы должен обслуживать пользователя с различными уровнями подготовки. Для неопытных пользователей интерфейс может быть организован как иерархическая структура меню, а для опытных пользователей как команды, комбинации нажатий клавиш и параметры.
Качество интерфейса — эргономический аспект
Качество определяется в ГОСТ Р ИСО/МЭК 9126-93 как «объем признаков и характеристик продукции или услуги, который относится к их способности удовлетворять установленным или предполагаемым потребностям». При комплексной оценке показателей качества программного продукта качество пользовательского интерфейса вносит определяющий вклад в такую субхарактеристику качества, как практичность (usability).
В качестве пользовательского интерфейса можно выделить два аспекта интерфейса — функциональный и эргономический. О качестве функциональности интерфейса трудно говорить безотносительно предметной области, например, сформулировать «руководящие принципы функциональности» пользовательского интерфейса. Формально его можно связать со степенью «соответствия задаче».
Таблица 2. Пример мер практичности пользовательского интерфейса офисных приложений (ISO 9241-10-98)
Целевая функция |
Меры эффективности |
Меры продуктивности |
Меры степени удовлетворенности |
Полная практичность |
Процент достигнутых целей; процент пользователей, успешно выполнивших задание; средняя точность завершенных заданий |
Время выполнения задания; задания, выполненные в единицу времени; денежная оценка затрат на единицу задания |
Оценочная шкала для степени удовлетворенности; степень загрузки по времени; частота жалоб |
Нормативные требования по эргономике пользовательского интерфейса отличаются по своей природе от синтаксических и манипуляционных правил — они относятся к психофизиологическим свойствам конкретной реализации уже выбранного типа (стиля) пользовательского интерфейса (и соответствующего стандарта) в конкретном приложении. В этих условиях эргономические стандарты могут лишь требовать достижения некоторых общих руководящих эргономических принципов, которым должна удовлетворять реализация в приложении выбранного типа (стиля). При этом предполагается, что приложение должно быть оптимально инкорпорировано в техническую среду. Ряд более ранних стандартов касается именно этой среды (клавиатура, дисплеи, устройства ввода с клавиатуры и мыши, мебель рабочей станции и показатели рабочей среды, например, освещение или уровни шума). Эргономические аспекты пользовательского интерфейса приложения являются естественным расширением эргономики технических средств и рабочего места. Сегодня существует два подхода к оценке эргономического качества, которые можно отнести к методам «черного» и «белого ящика».
В первом подходе оценку производит конечный пользователь (или тестер), суммируя результаты работы с программой в рамках следующих показателей:
эффективности (effectiveness) - влияния интерфейса на полноту и точность достижения пользователем целевых результатов;
продуктивности (efficiency) или влияния интерфейса на производительность пользователя;
степени (субъективной) удовлетворенности (satisfaction) конечного пользователя этим интерфейсом.
Эффективность является критерием функциональности интерфейса, а степень удовлетворенности и, косвенно, продуктивность — критерием эргономичности. Вводимые здесь меры соответствуют общей прагматической концепции оценки качества по соотношению «цели/затраты» (таблица 2).
Во втором подходе пытаются установить, каким (руководящим эргономическим) принципам должен удовлетворять пользовательский интерфейс с точки зрения оптимальности человеко-машинного взаимодействия. Развитие этого аналитического подхода было вызвано потребностями проектирования и разработки ПО, поскольку позволяет сформулировать руководящие указания по организации и характеристикам оптимального пользовательского интерфейса. Этот подход может быть использован и при оценке качества разработанного пользовательского интерфейса. В этом случае показатель качества оценивается экспертом по степени реализации руководящих принципов или вытекающих из них более конкретных графических и операционных особенностей оптимального «человеко-ориентированного» пользовательского интерфейса.
Поможем написать любую работу на аналогичную тему