Шаблоны проектирования взаимодействия — это шаблоны проектирования, применяемые в контексте взаимодействия человека с компьютером , описывающие общие проекты графических пользовательских интерфейсов .
Шаблон проектирования — это формальный способ документирования решения общей проблемы проектирования . Идея была введена архитектором Кристофером Александром для использования в городском планировании и архитектуре зданий и была адаптирована для различных других дисциплин, включая преподавание и педагогику, организацию и процесс разработки, а также архитектуру и проектирование программного обеспечения. [1]
Таким образом, шаблоны проектирования взаимодействия являются способом описания решений общих проблем удобства использования или доступности в определенном контексте. [2] Они документируют модели взаимодействия, которые облегчают пользователям понимание интерфейса и выполнение их задач. [3]
История
Паттерны возникли как архитектурная концепция Кристофера Александра . Паттерны — это способы описания лучших практик, объяснения хороших проектов и фиксации опыта, чтобы другие люди могли повторно использовать эти решения.
Шаблоны проектирования в информатике используются инженерами-программистами в ходе фактического процесса проектирования и при передаче проектов другим лицам. Шаблоны проектирования приобрели популярность в информатике после публикации книги Design Patterns: Elements of Reusable Object-Oriented Software . С тех пор возникло сообщество шаблонов, которое определяет шаблоны для проблемных областей, включая архитектурные стили и объектно-ориентированные фреймворки. Труды конференции Pattern Languages of Programming Conference (ежегодно, 1994—) включают множество примеров шаблонов, специфичных для предметной области.
Применение подхода языка шаблонов к проектированию взаимодействия было впервые предложено в книге Нормана и Дрейпера User Centered System Design (1986). В руководстве Apple Computer's Macintosh Human Interface Guidelines также цитируются работы Кристофера Александра в списке рекомендуемого чтения.
Библиотеки
Александр представлял себе язык шаблонов как структурированную систему, в которой семантические отношения между шаблонами создают целое, которое больше суммы его частей, подобно тому, как грамматические отношения между словами делают язык осмысленным. [4] В то время как некоторые коллекции шаблонов пытаются создать структурные отношения, необходимые для формирования языка, многие другие представляют собой просто совокупность шаблонов (и поэтому их более уместно называть библиотеками шаблонов).
Библиотеки шаблонов мобильного взаимодействия
Популярность мобильных устройств, таких как смартфоны и планшеты, обусловливает необходимость в библиотеке шаблонов проектирования мобильного взаимодействия.
Эта потребность обусловлена:
- Различия в поведении пользователя и взаимодействии на мобильных устройствах, такие как жесты смахивания и нажатия, по сравнению с взаимодействием в графическом интерфейсе рабочего стола, который управляется мышью
- Различия в физических характеристиках мобильного и настольного устройства, например, размер экрана, сенсорный экран и т. д.
- Рекомендации по дизайну для мобильных ОС, например iOS, Android
Элементы
Чтобы шаблоны были полезны для дизайнеров и разработчиков, которые будут их использовать, они должны быть легкодоступными и читаемыми. [5] [6] [7]
Общие элементы
Хотя описания шаблонов несколько различаются, многие библиотеки шаблонов включают в себя некоторые общие элементы:
- Название шаблона: выбор четкого и описательного названия помогает людям находить шаблон и способствует четкому общению между членами команды во время обсуждений дизайна.
- Описание шаблона: поскольку коротких названий, таких как «детализация в одном окне», иногда недостаточно для описания шаблона, несколько дополнительных строк объяснения (или канонический снимок экрана) помогут объяснить, как работает шаблон.
- Постановка проблемы: написанная на языке, ориентированном на пользователя, она сообщает, чего пользователь хочет достичь или в чем заключается задача для конечного пользователя.
- Use When: "Context of use" является критически важным компонентом шаблона дизайна. Этот элемент помогает людям понять ситуации, когда шаблон дизайна применяется (и когда нет).
- Решение: Решение должно объяснять, «как» решить проблему, и может включать в себя контрольные списки, снимки экрана или даже короткие видеоролики, демонстрирующие модель в действии.
- Обоснование: Предоставление причин, «почему» шаблон работает, подкрепит решение, хотя разработчики, ограниченные во времени, могут предпочесть проигнорировать это объяснение.
- Примеры: Каждый пример показывает, как шаблон был успешно применен. Часто это сопровождается снимком экрана и кратким описанием.
- Комментарии: Включение места, где члены команды могут обсуждать использование шаблона, помогает поддерживать активный ресурс и поддерживать вовлеченность команды.
Необязательные элементы
Библиотеки шаблонов также могут включать необязательные элементы, в зависимости от потребностей команды, использующей их. Они могут включать:
- Спецификации реализации: Руководство по стилю с подробной информацией о размерах шрифтов, размерах пикселей, цветах и формулировках сообщений и меток может быть полезным для разработчиков.
- Исследования удобства использования: Любые поддерживающие исследования из тестов удобства использования или других отзывов пользователей должны быть зафиксированы. Это может также включать отзывы от разработчиков, службы поддержки клиентов или отдела продаж.
- Связанные шаблоны : Библиотека шаблонов может включать в себя похожие шаблоны или может быть организована в виде иерархии родительских и дочерних шаблонов.
- Похожие подходы : поскольку, скорее всего, существует множество возможных решений этой проблемы, командам может потребоваться место для фиксации похожих альтернатив.
- Исходный код : если код достаточно модульный для повторного использования, то его также можно включить в библиотеку.
Причины использования шаблонов проектирования
Преимущества использования шаблонов проектирования взаимодействия включают в себя:
- Обучение новичков некоторым передовым практикам и общепринятым подходам
- Использование коллективной мудрости дизайнеров для различных вариантов использования и сценариев
- Предоставление командам общего языка, что позволяет сократить недопонимание, возникающее из-за разной лексики
- Сокращение времени и затрат на жизненном цикле проектирования и разработки
- Создание удобных для использования конструкций по « пути наименьшего сопротивления »
- Исключите потерю времени на «изобретение велосипеда»
- Обеспечение пользователям последовательного и предсказуемого опыта работы с приложением или услугой
Преимущества по сравнению с рекомендациями по проектированию
Руководства, как правило, более полезны для описания требований, тогда как шаблоны являются полезными инструментами для тех, кому нужно перевести требования в конкретные программные решения. Некоторые люди рассматривают руководства по дизайну как пример шаблона дизайна взаимодействия, поскольку они также являются распространенным подходом к фиксации опыта в дизайне взаимодействия. Однако шаблоны дизайна взаимодействия обычно имеют следующие преимущества перед руководствами по дизайну:
- Абстрактные руководства, такие как « Восемь золотых правил дизайна интерфейса» Шнейдермана, не предлагают, как решить проблему, как многие шаблоны проектирования взаимодействия, и не могут использоваться для междисциплинарной коммуникации. Более того, руководства не дают объяснения, почему конкретное решение работает.
- Конкретные рекомендации, такие как рекомендации по пользовательскому интерфейсу Macintosh, слишком привязаны к определенному интерфейсу и поэтому не столь эффективны при применении к другим интерфейсам (особенно к интерфейсам, отличным от Macintosh).
- Другие проблемы с руководствами заключаются в том, что их, как правило, слишком много, что затрудняет для дизайнеров применение правильных руководств. Кроме того, руководства предполагают абсолютную обоснованность, хотя обычно их можно применять только в определенном контексте. Результатом этого также является то, что руководства часто конфликтуют просто потому, что им не хватает описания контекста.
Руководства и шаблоны не обязательно противоречат друг другу, и их можно использовать совместно для выявления проблемы и последующего создания обоснованного решения.
Смотрите также
Ссылки
- ^ Коплиен, Джеймс. "Определение шаблона". Bell Laboratories. Архивировано из оригинала 2007-02-09 . Получено 2008-11-24 .
- ^ "Что такое шаблон?". Yahoo!. Архивировано из оригинала 2008-12-04 . Получено 2008-11-24 .
- ^ Тидвелл, Дженнифер. «Общая основа: язык шаблонов для проектирования человеко-машинного интерфейса». Массачусетский технологический институт . Получено 24 ноября 2008 г.
- ^ Пембертон, Лин. «Жанр как структурирующая концепция для языков шаблонов проектирования взаимодействия». Университет Брайтона. Архивировано из оригинала 22-10-2006 . Получено 24-11-2008 .
- ^ Спул, Джаред. "Элементы шаблона проектирования". Разработка пользовательского интерфейса. Архивировано из оригинала 20-12-2008 . Получено 24-11-2008 .
- ^ Малоун, Эрин. «Внедрение библиотеки шаблонов в реальном мире: исследование случая Yahoo!». Boxes and Arrows. Архивировано из оригинала 2008-12-07 . Получено 2008-11-24 .
- ^ Кунерт, Тибор (23 июня 2009 г.). Шаблоны проектирования ориентированного на пользователя взаимодействия для интерактивных приложений цифрового телевидения. Springer. ISBN 9781848822740. Получено 2009-07-06 .
Дальнейшее чтение
- Подход к проектированию взаимодействия на основе шаблонов, Ян Борчерс, ISBN 0-471-49828-9
- Язык шаблонов для удобства использования в Интернете, Ян Грэм, ISBN 0-201-78888-8
- Шаблоны проектирования взаимодействия для базового электронного сбора данных NFC, автор: Андреас Принц, Prinz Publishing, Дибург, 2014 г., ISBN 978-3-9816875-0-7 .
- «Дизайн сайтов: шаблоны создания успешных веб-сайтов» (второе издание), Дуглас К. ван Дуйн, Джеймс А. Ландей и Джейсон И. Хонг, ISBN 0-13-134555-9
- Проектирование интерфейсов: шаблоны для эффективного проектирования взаимодействия, Дженифер Тидвелл, ISBN 0-596-00803-1
- Проектирование социальных интерфейсов: принципы, шаблоны и методы улучшения пользовательского опыта, Кристиан Крамлиш и Эрин Мэлоун, ISBN 0-596-15492-5
- Проектирование взаимодействия для сложных когнитивных действий с визуальными представлениями: подход, основанный на шаблонах, Камран Седиг и Пол Парсонс, AIS Transactions on Human-Computer Interaction 5(2), 84-133.
Внешние ссылки
- 10 отличных сайтов для шаблонов дизайна пользовательского интерфейса в Interaction Design Foundation
- Библиотека шаблонов дизайна Yahoo