Следование модели реализации в многооконном диалоге приводит к плохому интерфейсу




Принципы Usage Centered Design

Ларри Константин, идеолог концепции дизайна, ориентированного на использование (Usage Centered Design, не путать с User-Centered design), в книге «Software For Use», написанной им в 1999 г. совместно с Люси Локвуд, представил следующие принципы разработки интерактивных систем:

  • Структурный принцип: Проектирование интерфейса должно вестись целенаправленно, с использованием конструктивных решений, основанных на четких и последовательных моделях, узнаваемых для пользователя. Структура интерфейса может формироваться путем группировки связанных объектов и разделения несвязанных, подчеркиванием различий между разнородными элементами и наделение похожими чертами родственных объектов.
  • Принцип простоты: Дизайн должен быть простым, общие задачи должны быть понятны, общение между программой и человеком должно происходить на родном для него языке.
  • Принцип видимости: Все необходимые для решения конкретной задачи элементы интерфейса должны быть видимы и не должны отвлекать пользователя посторонней или избыточной информацией.
  • Принцип обратной связи: Дизайн должен информировать пользователей о выполняемых действиях, изменениях состояния или условий, об ошибках или исключениях. Эта информация должна быть актуальна и интересна пользователю и представлена в четкой, компактной и недвусмысленной форме.
  • Принцип толерантности: Дизайн должен быть гибким и терпимым к действиям пользователей, позволять отмену и повторное выполнение операций, а также предотвращать ошибки (где это возможно), интерпретируя все входные последовательности в разумные действия.
  • Принцип повторного использования: Интерфейс должен использовать согласованные внутренние и внешние компоненты, тем самым уменьшая для пользователей необходимость переосмысления или запоминания их (компонентов) назначения и поведения.

 

 


Парадигмы интерфейса

 

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

 

Парадигмы интерфейса

Парадигма – исходная концептуальная схема, модель постановки проблем и их решения, методы исследования, господствующие в течение определенного исторического периода в научном сообществе.

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

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

Метафорические интерфейсы основаны на интуитивных представлениях о работе продукта и являются рискованным подходом.

А вот идиоматические интерфейсы основаны на обучении пользователя тому, как достичь результата, что является для людей естественным процессом.

Разработка пользовательских интерфейсов как дисциплина прошла путь от сильной концентрации на технологии (парадигма реализации) до столь же выраженной концентрации на метафоре.

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

Сравнение метафорических и идиоматических парадигм будет дано позже.

 

Существует три модели пользовательского интерфейса:

· модель реализации

· модель пользователя

· модель представления

 

Модель того, как в действительности работает программа, называется моделью реализации.

То, как пользователи воспринимают свои задачи и как программа помогает в решении этих задач, есть ментальная модель взаимодействия с программой. Она основана на представлениях пользователей о том, как они решают свои задачи, и о том, как может работать компьютер.

То, как проектировщики преподносят работу программы пользователю, называется моделью представления.

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

 

Модель реализации

Самый важный и принципиальный вопрос, на который должен явно ответить разработчик: Чьи интересы важнее – пользователя или разработчика?

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

 

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

Чтобы успешно взаимодействовать с таким интерфейсом, пользователь должен понимать, как работает программа. Следование парадигме реализации означает, что проектирование пользовательского интерфейса целиком основано на модели реализации.

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

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

Чтобы пользоваться таким интерфейсом, мы должны разобраться в том, как программа работает.

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

Такой интерфейс легко отлаживать, а когда что-то работает не так, легко выяснять, в чем причина.

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

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

Следование модели реализации в многооконном диалоге приводит к плохому интерфейсу

Модель реализации (программиста) – самая простая для отображения, поскольку может быть описана просто и однозначно в виде спецификации на программу.

Пользовательские интерфейсы, спроектированные программистами, которые досконально знают принципы работы программы, имеют модель представления, очень точно следующую модели реализации. Программисты больше разбираются в функциях, а не в интерфейсе. От программиста не требуется умение предоставлять пользователю метафоры пользовательского интерфейса, это основная задача проектировщика интерфейса (К России это почти не относится, у нас все делает программист.) С точки зрения разработчика такая модель логична, достоверна и точна; но, к сожалению, она малопонятна и неэффективна для пользователя.

Очень часто к таким решениям приводят «сжатые» сроки разработки – времени всегда не хватает – и чтобы отчитаться по формальностям, удобно каждую функцию поместить в отдельном окне, показать функциональность заказчику и победно завершить разработку. Но устроит ли такое решение конечного пользователя?

Модель пользователя

Ранее говорилось, что собственное понимание пользователем того, что делает программа и как с ней общаться называют моделью пользователя.

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

Мы можем знать или не знать как, например, электронный фотоаппарат наводит фокус, определяет уровень освещенности, где сохраняет результат – модель реализации. Эти знания совершенно не помогают нам понять как пользоваться фотоаппаратом.

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

 

Модель представления

Кроме модели реализации, подвластной проектировщику, существует еще модель представления внешнее поведение программы.

Модель представления – это избранный проектировщиком интерфейса способ предъявления пользователю функционирования программы (модели реализации).

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

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

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

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

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

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


 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-05-16 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: