для послойной разметки страниц (Andrew and Yank, 2008).
//-- Зачем --// Соединение данных в таблицах с их столбцами и заголовками строк помогает экранным дикторам правильно сообщать связи среди элементов данных, и пользователи устанавливают соответствующий контекст для восприятия полученной информации.
//-- Как --// Самое главное – четко выделите заголовки, указывающие, что представляют собой данные в ячейках (фактические значения). Это достигается путем разметки заголовков (как столбцов, так и строк) тегами и значений данных тегами .
Используйте теги и параметр SUMMARY, чтобы выделить контекст
Используйте теги , чтобы предоставить короткий описательный заголовок, указывающий цель таблицы (рис. 11.17). Информация внутри этих тегов отображается для пользователей и форматируется таблицами стилей.
Рис. 11.17. Используйте теги для краткого описания смысла табличных данных
Кроме того, используйте атрибут summary, чтобы описать подробно, что содержится в таблице. Поскольку информация, находящаяся внутри параметра summary, не отображается, его главная функция состоит в том, чтобы описать цель таблицы и любую релевантную информацию для пользователей вспомогательных средств (рис. 11.18).
Рис. 11.18. Использование параметра summary позволяет пользователям узнать, какие данные релевантны и наиболее важны в таблице, что улучшает общее понимание информации, предоставленной в таблице
Определите заголовки строк и столбцов таблиц данных
Убедитесь, что значения данных правильно связаны со своими заголовками при помощи параметра scope.
Поскольку так пользователи вспомогательных средств смогут узнать, с чем связаны данные: с заголовками столбцов , заголовками строк или и тем и другим (рис. 11.19).
Рис. 11.19. Зная пределы заголовков, пользователи могут точно определить, что продажи в 2005 году составляли 1 200 000 долл.
Используйте параметр HEADERS на ячейках комплексных таблиц данных
Используйте атрибут headers, чтобы определить связи между заголовками для данной ячейки в комплексных таблицах.
Это выполняется путем присваивания параметра id какой-либо ячейке, которую вы хотите сделать заголовком, а затем добавлением идентификаторов полученных ячеек-заголовков в параметр headers (рис. 11.20).
Рис. 11.20. В данном примере идентификаторами заголовков столбцов являются meals, hotel и transportation, а заголовков строк – august-25, august-2 6, а также total. Ячейка во 2-й строке, 3-м столбце будет иметь заголовок hotel august-25, или august-25 hotel, или любой другой с таким же смыслом
//-- Связанные шаблоны проектирования --// Представление таблицы данных может быть улучшено с использованием таблиц стилей так, чтобы связи между значениями данных и заголовками были ясны и тем, у кого нет проблем со зрением (см. Christie, 2008, чтобы узнать, как использовать CSS для эффектного представления табличных данных). Это важно для зрячих пользователей, поскольку такие параметры, как summary, scope и headers не отображаются веб-браузерами. Однако необходимо использовать именно ненавязчивые таблицы стилей (UNOBTRUSIVE STYLE SHEETS), чтобы обеспечить независимое наложение слоев разметки и представления, как было указано в шаблоне PROGRESSIVE ENHANCEMENT.
ACCESSIBLE NAVIGATION (ДОСТУПНАЯ НАВИГАЦИЯ) //-- Проблема --// Большинство веб-страниц организовано так, что основная область, рассчитанная под контент, начинается после постоянных элементов, таких как вспомогательная, основная и побочная навигация. Несмотря на то что эта практика удобна для пользователей без зрительных нарушений, поскольку они предпочитают последовательное расположение навигации (см. главу 5), все же она не является подходящей для пользователей экранных дикторов и клавиатуры, поскольку они будут вынуждены нажимать на каждую ссылку и загружать каждую страницу, пока не доберутся до искомой.
//-- Решение --// Постройте страницу так, чтобы пользователи могли получать доступ к основному контенту страницы, не проходя через основную навигацию и другие элементы, расположенные в области заголовка. Кроме того, структурируйте страницу таким образом, чтобы пользователи могли легко передвигаться между блоками контента страницы.
//-- Зачем --// Для пользователей без нарушений зрения достаточно просто проигнорировать основной заголовок и разделы навигации по страницам и сконцентрироваться на самых важных блоках контента. Однако пользователи экранных дикторов и клавиатуры вынуждены обращаться к странице иным образом. Встроенные механизмы, созданные, чтобы попасть в область контента через специальную «пропускающую навигацию» ссылку вверху страницы или через специально подготовленную структурную разметку, делают взаимодействие с веб-страницами не только эффективным, но и приносящим удовольствие пользователям вспомогательных средств.
//-- Как --// Создайте ссылку вверху страницы, позволяющую пропускать навигационные ссылки. Ссылки «пропуска навигации» или «перехода к основному контенту» – это HTML-ссылки, созданные при помощи тегов . Если дизайнер не хочет оставлять ссылку видимой, он может использовать каскадные таблицы стилей, чтобы скрыть ее (рис. 11.21).
Рис. 11.21. При использовании такого подхода ссылка скрыта для пользователей без нарушений зрения, но при этом считывается экранными дикторами и доступна для текстовых браузеров, таких как Lynx. Как показано, в привязке ссылки «перехода» содержание текста необязательно
Примечание
Для сайтов с основной и дополнительной навигацией выгодно предоставлять отдельные, «пропускающие навигацию» ссылки: одна для главной (основной и вспомогательной), а другая – для дополнительной навигации. Первая ссылка тогда должна называться «Пропустить основную навигацию» или «Пропустить главную навигацию», а вторая – «Пропустить внутреннюю навигацию», которая перенесет пользователей к основному контенту страницы.
Другой способ сделать ссылку видимой – когда на ней фокусируются (рис. 11.22). Это делает ссылку доступной тем, кто управляет страницей, используя клавиатуру.
(а)
(б)
Рис. 11.22. По умолчанию сайт Molly не показывает пользователям ссылку Skip to the Content (Перейти к содержанию страницы) (а). Однако когда пользователи передвигаются к ссылке, используя клавиатуру (или наводя указатель мыши), ссылка становится видимой (б)
Используйте заголовки в разметке, чтобы установить структуру страницы
Устанавливайте разделы на странице, используя заголовки разметки при помощи тегов от до . Это позволяет пользователям с экранными дикторами и браузерами передвигаться по странице с помощью клавиатуры (например, в браузере JAWS для Windows пользователи могут использовать клавишу H для передвижения по контенту страницы).
//-- Связанные шаблоны проектирования --// Так же важно, чтобы основное, побочное и/или вспомогательное меню навигации были соответствующим образом размечены семантической разметкой (SEMANTIC MARKUP). С помощью рабочих черновых версий ARIA расставьте атрибуты role в размечаемых элементах навигации (см. раздел «Доступность и многофункциональные вебприложения» далее в этой главе).
ACCESSIBLE ALTERNATIVE (ДОСТУПНЫЙ ВЫБОР) //-- Проблема --// Иногда также невозможно сделать веб-приложение доступным из-за используемой технологии (например, RIA) или способа программирования.
//-- Решение --// Создайте доступную альтернативу для веб-приложения, которая предложит тот же контент и функциональность, и предоставьте ссылку на это альтернативное приложение. Так гласят рекомендации WCAG 1.0, в которых говорится:
Если даже после максимальных усилий вы не можете создать доступную страницу, предоставьте ссылку на альтернативную страницу, которая использует принципы W3C, имеет расширенный доступ, имеет эквивалентную информацию (или функциональность) и обновляется с той же частотой, что недоступная (исходная) страница.
А так же выдержка из рекомендаций WCAG 2.0 (см. Требования совместимости на сайте www.w3.org/TR/2007/WD-WCAG20-20070517/#conformance):
Если веб-страница не отвечает всем критериям успеха на заданном уровне, то механизм создания альтернативной версии, отвечающей необходимым критериям, может быть получен из несовместимого контента или его URI (Universal Resource Identifier, Универсальный идентификатор ресурса), тогда этот механизм будет отвечать всем критериям успеха для данного уровня совместимости.
//-- Зачем --// В идеале веб-приложения должны адаптироваться к требованиям и возможностям браузеров, вспомогательных средств или пользователей, не имеющих современных версий программ. Однако иногда веб-приложения используют технологию, которая предлагает важные преимущества, выравнивающие ее использование (например, лучшая производительность, более богатая интерактивность и т. д.), но при этом ухудшается поддержка вспомогательных средств.
Богатые веб-приложения – это хороший пример. Они предлагают широкие возможности и выигрывают в производительности (например, Google Maps, Gmail). Однако когда используются вспомогательные средства, мобильные устройства или браузеры с отключенной поддержкой JavaScript и каскадных таблиц стилей, они становятся малодоступными. Кроме того, могут существовать юридические требования, согласно которым можно использовать только точную копию документа, а делать изменения в оригинальном документе – запрещено. В подобных случаях вместо того чтобы уменьшать количество посетителей, лучше создать альтернативную версию приложения с тем же контентом и функциональностью.
//-- Как --// Когда альтернативная версия разработана, необходимо, чтобы она удовлетворяла двум важным требованиям WCAG 2.0:
1. Доступная версия предоставляет то же самое содержание, даже учитывая компромиссы в дизайне и функциональности.
2. Ссылка на версию с расширенным доступом предоставляется в начале страницы недоступной версии.
Виды подходов, подобные этим, использующиеся для того, чтобы включить ссылку «пропуска навигации» в разметку страницы, могут быть использованы для предоставления ссылки на альтернативную версию (см. шаблон ACCESSIBLE NAVIGATION ранее в этой главе).
//-- Связанные шаблоны проектирования --// Если использование Ajax или JavaScript делает приложение недоступным, используйте подходы, указанные в шаблонах UNOBTRUSIVE JAVASCRIPT и PROGRESSIVE ENHANCEMENT, чтобы сделать приложение настолько доступным, насколько это возможно.
Доступность и многофункциональные веб-приложения В подходах развивающихся многофункциональных веб-приложений (см. главу 8) широко используют динамический HTML (DHTML) и Ajax, чтобы предложить больше интерактивности и богатых впечатлений. Однако доступность таких веб-приложений существенно снизится. Например, если контент страницы изменяется без ее перезагрузки, новый контент может быть недоступен для людей, полагающихся на экранные лупы или экранные дикторы. Многофункциональные вебприложения так же используют элементы управления комплексного интерфейса, такие как ползунок, индикатор выполнения, вкладка, древо и т. п., которые изначально не поддерживаются в текущих версиях разметки HTML/XHTML.
Организация W3C-WAI работала над тем, чтобы направить эти требования в программу ARIA (WAI-ARIA; см. www.w3.org/WAI/intro/aria). Цель WAI-ARIA состоит в том, чтобы предложить способ связать поведение и структуру с интерактивными элементами управления, используемыми на многофункциональных веб-страницах, сохраняя разметку, чтобы сделать веб-приложение доступным для пользователей с ограниченными возможностями. Это происходит путем соединения ролей, состояний и свойств в уже существующей разметке.
Роли позволяют дизайнерам RIA накладывать надлежащую семантику на пользовательские элементы управления, чтобы увеличить их доступность. Например, как описано в шаблоне SEMANTIC MARKUP, навигация страницы должна быть размечена с использованием списков. Однако если на странице содержится несколько других типов списков, пользователям будет трудно различать списки навигации и другие списки. Спецификация ARIA состоит в помощи в определении ролей, предоставляющих информацию о том, какой элемент управления не зависит от разметки HTML и использующихся, чтобы создать его. Например, неупорядоченный список, используемый для передвижения, может быть размечен следующим образом:
Роли подразделяются на роли интерфейсных элементов и структурные роли. Роли элементов интерфейса включают стандартные элементы интерфейса в RIA, такие как progressbar, slider, combobox, tree, alert, dialog и др. Структурные роли подразумевают роли таких элементов, как menubar, toolbar, breadcrumbs, search, liveregion (в котором содержимое страницы подвергается изменению без перезагрузки страницы), tab, navigation и т. д. Особое значение для активных веб-приложений имеет роль liveregion, позволяющая читать текст в оперативной области без активизации соответствующих элементов интерфейса. Таким образом, пользователь будет информироваться о любых обновлениях в пределах области, отмеченной как liveregion, не теряя место в тексте, на котором он остановился.
В то время как роли предоставляют информацию об используемом элементе управления, модуль состояний и свойств ARIA добавляет в семантику информацию о связях и современных состояниях. Например, элемент бегунок может иметь такие свойства, как valuenow, valuemin и valuemax; поле liveregion может быть «занято»; элемент combobox может иметь свойство autocomplete; древо может быть «расширено» элементом treeitem, имеющим атрибут level и т. д.
В настоящее время такие вспомогательные программы, как Window Eyes 5.5+, Jaws 7.0+, и ZoomText, имеют поддержку согласованной с WAI-ARIA разметки браузера Firefox 2 и следующих версий; а программа Orca 2.20 – разметки Firefox 3. Поэтому дизайнеры могут начать добавлять соответствующие параметры WAI-ARIA в свою разметку, чтобы увеличить доступность многофункциональных веб-приложений. Так как дополнительные атрибуты будут проигнорированы браузерами, не поддерживающими WAI-ARIA, то риск их использования минимален. Поскольку поддержка браузеров и вспомогательных технологий все больше растет, доступность RIA все больше увеличивается.
Глава 12 Визуальное проектирование Введение Хотя веб-приложения спроектированы с целью облегчения выполнения задач, их визуальное проектирование не следует игнорировать. Визуальное проектирование не только играет важную роль в том, насколько удобным воспринимается приложение (Kurosu and Kashimura, 1995; Tractinsky, 1997), но также влияет на то, насколько надежным считают его пользователи (Fogg et al., 2002).
Одно из первых решений, принимаемых проектировщиками вебприложений, должен ли контент приложения быть отрегулирован по ширине окна браузера (LIQUID-WIDTH LAYOUT) или оставаться неизменным вне зависимости от его ширины (FIXED-WIDTH LAYOUT). Несмотря на то, что автомасштабируемые макеты в целом более удобны в использовании и доступны, эстетика страницы нередко снижается, если ширина окна браузера слишком велика или мала. Использование прогрессивного макета (PROGRESSIVE LAYOUT) с установленной минимальной и максимальной шириной – это разумный компромисс, потому что он не только может помочь сохранить эстетическую целостность, но и больше подходит пользователям, имеющим мониторы с высоким или низким разрешением.
Следующий важный шаг связан с размещением и выравниванием элементов страницы путем обеспечения четкой визуальной структуры страницы (GRID STRUCTURE, VISUAL HIERARCHY). Проектировщики также могут выделить определенные элементы страницы (HIGHLIGHT) или использовать изображения, указывающие на важные состояния и операции (ICONS) для оказания дополнительной помощи пользователям в навигации по страницам и доступе к объектам.
Визуальное проектирование предполагает тщательный баланс отдельных компонентов: макета, цветов, графики, шрифтов, контраста и т. д. О теории и практике применения этих компонентов для веб-дизайна написано несколько книг (например, Baird, 2007; Lidwell et al., 2003; McIntire, 2008; Wroblewski, 2002). В этой главе однако уделяется внимание визуальным шаблонам проектирования, которые значимы для веб-приложений. Лучшие методы эффективного включения других элементов для создания эффективного проекта (например, цвета, размер и пропорция, структура, гарнитура шрифта), хотя и не обсуждаются, важны и должны быть рассмотрены для всех проектов.
LIQUID-WIDTH LAYOUT (АВТОМАСШТАБИРУЕМЫЙ МАКЕТ) //-- Проблема --// Контент веб-страницы (например, табличные данные со многими колонками, графические редакторы, приложения портала с макетами, состоящими из нескольких столбцов и т. д.) требует значительного горизонтального пространства. При отображении с использованием заданной ширины (FIXED-WIDTH LAYOUT) контент либо будет казаться пользователям с большими мониторами слишком нагроможденным, либо вынудит пользователей с маленькими мониторами прокручивать страницу по горизонтали, что, как правило, они делать не любят (Nielsen, 2005).
//-- Решение --// Проектируйте веб-страницы с помощью автомасштабируемого макета так, чтобы при расширении или сужении пользователями окна браузера, контент страницы и данные приспосабливались к его ширине. Этот подход также называют изменчивым или гибким макетом (рис. 12.1).
(а)
(б)
Рис. 12.1. Веб-приложение почты gowebtop использует автомасштабируемый макет и регулирует контент в соответствии с размером окна браузера
//-- Зачем --// Очень трудно узнать или предсказать разрешение экрана пользователей и предпочитаемый ими размер окна браузера. Таким образом, проектирование определенной ширины лишает пользователей контроля, и вместо проекта, адаптирующегося к предпочтениям пользователей, пользователи получают проект, к которому они сами вынуждены приспосабливаться. Кроме того, с макетами с фиксированной шириной большая часть свободного пространства на экране у пользователей, обладающих мониторами с высоким разрешением, остается неиспользованной.
С другой стороны, тем, кто пользуется монитором с более низким разрешением, возможно, придется прокручивать страницы по горизонтали для просмотра страницы целиком.
Применение автомасштабируемого проектирования позволяет различным областям страницы приспособиться к размеру окна браузера и сводит к минимуму ненужные горизонтальной прокрутки. Это также предоставляет пользователям возможность открывать боковые панели для истории браузера и закладок, при этом не влияя на их способность просмотра контента страницы. Кроме того, пользователи с нарушениями зрения предпочитают использовать более крупные размеры текста, которые могут быть легко настроены в автомасштабируемых проектах.
Хотя Бернард и Ларсен (Bernard and Larsen, 2001) в своем исследовании не обнаружили существенных различий в работе пользователей с макетами с изменяемой или фиксированной шириной при чтении и выполнении поисковых задач, большинство пользователей предпочитают изменяемые макеты. Можно было бы утверждать, что заключение Бернарда и Ларсена устарело потому, что они использовали монитор с разрешением 1024x768, а почти 40 % пользователей Интернета сегодня пользуются мониторами с разрешением выше, чем 1024x768 и могут иметь другие предпочтения (см. w3schools, www.w3schools.com/browsers/browsers_display.asp). Однако использование мониторов с более высоким разрешением не обязательно означает, что большинство пользователей максимально увеличивают окно браузера в соответствии с максимальным разрешением экрана, а 60 % пользователей сети Интернет все еще используют разрешение экрана 1024x768 или ниже.
//-- Как --// При проектировании макетов с изменяемой или фиксированной шириной необходимо, чтобы компоненты страницы – по крайней мере, те, которые занимают основную область контента – имели определенную ширину по отношению к ширине окна браузера, что обычно осуществляется путем проектирования страниц с использованием процентных значений. Например, общий контент может быть установлен на 100 %, основное содержание может занимать 62 %, а содержание боковой панели – 38 % (Clarke, 2007).
Осуществите возможность установки фиксированной ширины области навигации
Для больших окон не обязательно расширять пропорционально все области макета. Элементы страницы, такие как навигация, боковые панели и выноски, можно сохранить определенной фиксированной ширины, сохранив при этом гибкими области, занимаемые основным контентом (рис. 12.2). Это сводит к минимуму прыжки и регулирование компонентов страницы при изменении пользователями размера окна браузера.
Рис. 12.2. Gmail оставляет панель навигации фиксированной при расширении других областей контента
Регулируйте элементы страницы под размер окна браузера
При использовании макетов с изменяемой шириной, элементы страницы, применяющие фоновые цвета или изображения, должны быть заполнены надлежащим образом при расширении или сужении ширины окна браузера. Относительное расположение элементов страницы – компонентов, выровненных по левому и правому краю, таких как заголовки, панели навигации, колонтитулы и т. д., – также должно сохраниться при изменении ширины окна (рис. 12.3).
(а)
(б)
Рис. 12.3. Когда пользователи сужают (а) или расширяют (б) окно браузера, Basecamp регулирует цвет фона областей тела, заголовка и контента по мере необходимости. Служебные средства навигации (в заголовке), логотип компании (в нижнем колонтитуле) и выпадающий список «…закреплен за» при изменении ширины окна браузера остаются выровненными по правому краю
//-- Связанные шаблоны проектирования --// Как уже отмечалось, высокие разрешения экрана становятся распространенными, и проектировщики начали обращаться к прогрессивным макетам (PROGRESSIVE LAYOUT), чтобы гарантировать, что читаемость контента страниц не пострадает, когда пользователи максимально увеличат размер окна браузера.
FIXED-WIDTH LAYOUT (МАКЕТ С ФИКСИРОВАННОЙ ШИРИНОЙ) //-- Проблема --// При проектировании с изменяемой шириной могут возникнуть слишком большие пробелы между элементами на страницах с меньшим количеством элементов. Это приводит к тому, что страницы кажутся не только пустыми, неорганизованными и несвязными, но также менее читаемыми и визуально непривлекательными.
//-- Решение --// Используйте проект, который имеет фиксированную ширину, чтобы гарантировать, что компоненты этой страницы останутся вместе и будут смотреться гармонично (рис. 12.4). Макет с фиксированной шириной означает, что ширина контента страницы установлена на определенное значение в пикселях независимо от размера окна браузера. Пользователи не могут изменить ширину при изменении размеров окна или размера шрифта.
Рис. 12.4. Blinksale применяет центрованный макет с фиксированной шириной. Если пользователи просматривают страницу в окне браузера большего размера, фон заполняется градиентом
//-- Зачем --// Для веб-приложений, которые не требуют чрезмерного горизонтального пространства (т. е. главным образом для текстового контента и таблиц всего с несколькими столбцами), фиксированная ширина макета подходит больше всего, а удобочитаемость информации и возможность беглого просмотра могут поддерживаться даже при больших размерах окна браузера. Кроме того, при использовании макетов с фиксированной шириной проектировщики имеют полный контроль над размещением элементов страницы, что позволяет им гарантировать, что макет будет выглядеть почти одинаково во всех основных браузерах.
//-- Как --// Макеты с фиксированной шириной, как правило, проектируются путем указания ширины страницы в пикселах – абсолютной единице измерения для размеров текста. Отрицательной стороной такого подхода является то, что макет не очень хорошо масштабируется у пользователей, которые установили размер текста больше или меньше, чем было предусмотрено проектировщиком. Распространенной альтернативой является использование единицы измерения относительной к размеру текста, т. е. в em или ex. Этот макет, как правило, называют эластичным макетом, поскольку такой макет изменяет свой размер, основываясь на размере текста, установленном пользователями. Тем не менее на проекты с использованием эластичного макета по-прежнему не влияет ширина окна браузера и, таким образом, они являются проектами с фиксированной шириной.
Оптимальное разрешение экрана для определения ширины макета является важным вопросом при проектировании макетов с фиксированной шириной. Чтобы он подошел наибольшему числу пользователей без введения горизонтальной прокрутки, проектируйте разрешение 800x600. Ширина макета, тогда, как правило, устанавливается 750 или 770 пикселов (с 30–50 пикселами, выделенными на хром браузера). В ситуациях, когда проектирование ориентировано на разрешение экрана 1024x768, контейнер с фиксированной шириной устанавливается на 960 или 980 пикселей. Цель, конечно, заключается в предупреждении горизонтальной прокрутки для подавляющего большинства пользователей вебприложения. Исследование Бэкдела (Baekdal, 2006) показывает, что проекты с фиксированной шириной для низкого разрешения (т. е. 800x600) будут поддерживаться у приблизительно 95 % пользователей, в то время как те, что предназначены для более крупных разрешений (например, 1024x768) будут поддерживать только от 80 до 85 % пользователей.
Центрируйте макет на странице
Сократите восприятие пустого пространства для пользователей с более высокими разрешениями экрана путем центрирования макета таким образом, чтобы пустое пространство было распределено поровну в виде правого и левого полей. Например, при просмотре проекта, оптимизированного для разрешения 800x600 (т. е. 770 пикселов шириной) на экране с разрешением 1024x768 отобразится пустое пространство примерно в 100–110 пикселов с каждой стороны отцентрированного макета или 200–220 пикселов справа от макетов, выровненных по левому краю (рис. 12.5).
Рис. 12.5. Target центрирует страницу так, чтобы было равное количество белого пространства по обе стороны от этой страницы
Заливайте фон страницы для более крупных окон браузера
Как и центрирование макета, заливка фона страницы соответствующим цветом, рисунком или фактурой делает пустое пространство более приемлемым и страницы визуально более привлекательным (рис. 12.6).
Рис. 12.6. Backpack (из 37 сигналов) заполняет пустое пространство цветами фона заголовка и основной части
Создавайте страницы для печати
Когда веб-страницы, спроектированные с помощью макетов с фиксированной шириной, печатаются в книжной или вертикальной (а не в альбомной) ориентации, информация справа обычно обрезается. Это происходит потому, что большинство принтеров не может поддерживать более 600 пикселов по горизонтали. Если приложение содержит страницы, которые могут быть распечатаны пользователями, предложите им ссылку «для печати» или создайте отдельную таблицу стилей для печати, так чтобы на напечатанных страницах был показан весь значимый контент страницы.
Отдельная таблица стилей для печати может быть определена одним из следующих способов:
1. Использование внешнего файла каскадных таблиц стилей (CSS), который может работать как глобальная таблица стилей и может быть связан с любой страницей в приложении:
media="print" />
Включение каскадных таблиц стилей в страницы, которые, скорее всего, будут напечатаны пользователями (например, страница Order Confirmation (Подтверждение заказа) приложений электронной коммерции) следующим образом:
Очевидным недостатком является то, что таблицы стилей для печати должны находиться на каждой странице.
Другие способы указать таблицы стилей для печати включают правила @media и @import. Однако они не всегда поддерживаются браузерами. Например, @media поддерживается с ошибками в IE 6.0 и IE 7.0 (см. www.reference.sitepoint.com/css/at-media).
//-- Связанные шаблоны проектирования --// Проектировщики, возможно, захотят учесть прогрессивный макет (PROGRESSIVE LAYOUT), который предлагает компромисс, что хотя он и предоставляет пользователям определенный контроль над проектом, позволяя макету приспособиться к ширине окна браузера, он также позволяет проектировщикам наложить ограничения минимальной и максимальной ширины и по-прежнему обеспечивает значительный контроль над внешним видом страницы.
PROGRESSIVE LAYOUT (ПРОГРЕССИВНЫЙ МАКЕТ) //-- Проблема --// Пользователям, имеющим экраны с большим разрешением (например, 1920x1200), страницы, выполненные с применением автомасштабируемого макета, могут показаться неудобными для чтения или просмотра в максимально большом окне браузера. Пользователи могут не пожелать уменьшить размер окна браузера, поскольку они предпочитают большую ширину для других приложений, которые могут быть доступны в виде вкладок в том же окне браузера. С другой стороны, пользователи с меньшим разрешением экрана могут найти конструкции с фиксированной шириной неудобными в использовании, поскольку им придется прокручивать страницу по горизонтали.
//-- Решение --// Используйте прогрессивный макет [27 - Понятие прогрессивного макета, используемое в данной главе, отличается от того, которое используют разработчики Adobe Flex. Их определение относится к постепенному отображению контента приложения по мере инициализации, не дожидаясь загрузки всего приложения (Szeto, 2004).] с определенной минимальной и максимальной шириной для сохранения удобочитаемости и эстетической целостности страницы.
Страницы, спроектированные с использованием прогрессивного макета, функционируют как макеты с изменяемой шириной в пределах ширины окна браузера. В окне браузера, размер которого меньше определенной минимальной ширины или больше определенной максимальной ширины, страница ведет себя как макет с фиксированной шириной (рис. 12.7).
(а)
(б)
(в)
Рис. 12.7. В данном примере представлен прогрессивный макет с фиксированной шириной при ширине окна браузера менее 540 пикселов (а), с изменяемой шириной при ширине окна браузера между 540 и 1024 пикселами (б), и фиксированной при ширине более 1024 пикселов (в). Максимальная ширина данного проекта устанавливается на 850 пикселов. (Источник: Fulciniti, 2005.)
//-- Зачем --// Прогрессивный макет предлагает преимущества макетов как с автомасштабируемой, так и с фиксированной шириной. Он работает как макет с изменяемой шириной в рамках диапазона ширины окна браузера, и как макет с фиксированной шириной за пределами минимального и максимального значения ширины окна браузера. Это позволяет удовлетворить потребности пользователей, имеющих экран с более низким или более высоким разрешением, а также предоставляет проектировщикам возможность разумного контроля внешнего вида страницы.
//-- Как --// Определите минимальную и максимальную ширину проекта на основе возможностей разрешения экрана целевых пользователей и потребностей проекта. Затем спроектируйте страницы так, чтобы они оставались фиксированной ширины ниже и выше минимального и максимального значений ширины окна браузера соответственно и приспосабливались к размеру окна браузера между ними.
Реализация такого проекта возможна с помощью установки правил стиля минимальной и максимальной ширины. Однако поскольку версии 6 и 7 браузера Internet Explorer не поддерживают атрибуты минимальной и максимальной ширины, необходимо применить JavaScript для корректной работы проекта на всех браузерах (Fulciniti, 2005; Jesse, 2007a, 2007b).
//-- Связанные шаблоны проектирования --// Прогрессивные макеты (PROGRESSIVE LAYOUT) предлагают изящное решение для контраргументов против проектов с использованием макетов с фиксированной или изменяемой шириной. Однако в зависимости от характера контента, представленного в приложении, более подходящими могут оказаться макет с фиксированной шириной (FIXED-WIDTH LAYOUT) или автомасштабируемый макет (LIQUID-WIDTH LAYOUT), которые стоит принимать во внимание в процессе проектирования.
GRID STRUCTURE (СЕТЧАТАЯ СТРУКТУРА) //-- Проблема --// Пользователям необходимо ясно видеть и понимать взаимосвязи между различными элементами страницы. Отказ от использования систематического подхода при планировании макета страницы и ее элементов может привести к загромождению проекта, и заставит его выглядеть излишне сложным.
//-- Решение --// Для размещения и выравнивания элементов веб-страницы используйте систему, основанную на сетке, создавая внешнюю структуру вебстраниц и последовательность и облегчая пользователям понимание организации контента (рис. 12.8).
Рис. 12.8. Использование сетчатой структуры (GRID STRUCTURE) для размещения и выравнивания компонентов страницы на данной странице совершенно очевидно. Это не только делает страницу приятной внешне, но также облегчает распознавание визуальной иерархии компонентов страницы (см. шаблон визуальная иерархия (VISUAL HIERARCHY) ниже)
//-- Зачем --// Сетка предлагает проектировщикам последовательный подход для размещения и выравнивания различных элементов на странице и дает возможность создать соответствующие визуальные иерархии, такие, чтобы получившиеся в результате макеты были приятны на вид и просты в использовании. Планирование и выравнивание элементов страницы с использованием сетки не только придает страницам более простой и визуально приятный вид, но последовательное размещение компонентов в сетке также облегчает навигацию по приложению.
//-- Как --// При использовании сетки страницы делятся на строки и столбцы, а линии сетки используются для размещения и выравнивания элементов веб-страницы. Сама по себе сетка из строк и столбцов может быть создана с помощью правила третей или с использованием модульных сеток, создающих позиции, кратные трем (рис. 12.9; Baird, 2007; Vinh and Boulton, 2007).
(а)
(б)
Рис. 12.9. Среди распространенных для макета веб-страницы модульных сеток имеются сетки, основанные на правиле третей, разделяющем страницы на строки и столбцы (а) или использующие только модульные сетки или разделы из трех или четырех частей (б)
После того как сетка установлена, следующий шаг заключается в позиционировании на странице элементов, постоянных по всему приложению – таких как логотипы, средства навигации (основные, второстепенные и вспомогательные), верхние и нижние колонтитулы и т. д. Однако если контент меняется от страницы к странице, что часто случается в веб-приложениях, может быть полезно сначала поместить контент в сетку. Польза от такого подхода «сначала контент» заключается в том, что после размещения на странице наиболее важного контента становится совершенно ясно, должны ли средства навигации быть размещены вверху или по бокам (слева или справа). Например, если для такого контента, как отчеты или результаты исследований, требуется горизонтальное пространство на страницах, размещение средств навигации вверху может быть наиболее подходящим.
В отличие от печатных страниц, которые имеют фиксированную ширину и высоту, веб-страницы предоставляют ограниченный контроль над вертикальным содержанием, особенно притом, что контент на страницах может занимать различное пространство по вертикали.
Если макету приходится адаптироваться к различному объему контента на страницах, сохраните относительное расположение элементов на странице.
Обычный пример – колонтитул страницы, который может всегда появляться после контента страницы независимо от того, сколько пространства по вертикали требуется для контента страницы.
Подумайте об использовании «Золотого сечения»
Золотое сечение, также известное как божественная пропорция – это такое отношение между двумя сегментами, когда меньший сегмент (bc) соотносится с большим сегментом (ab) так же, как больший сегмент соотносится с суммой двух сегментов (ac) или bc/ab = ab/bc = 0,618 (рис. 12.10; Lidwell et al., 2003).
Рис. 12.10. Золотое сечение (bc/ab = ab/bc = 0,618)
В целом макеты, выполненные на основе золотого сечения, считаются привлекательными с эстетической точки зрения. Хотя эстетическое преимущество проектов на основе золотого сечения имеет мало доказательств (Markowsky, 1992), многие проектировщики считают их лучшими и проектируют сетки макетов в соответствии с ними. И хотя проекты вовсе не обязательно должны соответствовать золотому сечению, по возможности, его следует учитывать (Lidwell et al., 2003).
Для использования золотого сечения в проекте с двумя колонками с фиксированной шириной в 770 пикселей, например, умножим 770 пикселов х 0,618. В результате получим около 475 пикселей, что может составлять ширину основной колонки контента. Оставшаяся часть в 295 пикселей шириной (например, 770–495) может быть использована для второй колонки, которая может быть использована для навигации или другого второстепенного контента (Baird, 2007; Clarke, 2007).
Подобный подход также может быть применен для более широких макетов (рис. 12.11).
Рис. 12.11. Этот пример страницы корпорации Apple демонстрирует отличный пример золотого сечения. Ширина контента страницы примерно 980 пикселов. Содержимое колонки Select your Macbook Air (Выберите свой Macbook Air) использует ширину 605 пикселов (980x0,618), а под изображение отводится 375 пикселов
Выравнивайте элементы страницы по линиям сетки
Выровняйте элементы страницы по линиям сетки и относительно друг друга по вертикали или по горизонтали.
Задача заключается не только в том, чтобы создать минимальное количество «невидимых» сеток на странице, но и в том, чтобы сделать это таким образом, который раскроет структуру страницы визуально и позволит пользователям легко понять и найти различные элементы страницы.
Создание эффективного выравнивания также помогает в процессе разработки, объединяя связанные элементы на странице (см. шаблон VISUAL HIERARCHY ниже). Использование выравнивания последовательно на всех страницах в рамках веб-приложения делает страницу более предсказуемой в рамках проекта.
Создавайте многоразовые шаблоны
Создав макеты страниц, необходимо распределить их в соответствии с одним или несколькими шаблонами страниц (в зависимости от количества типов страниц) и использовать по всему приложению. Это гарантирует, что проекты будут работать во всем приложении и, следовательно, разработчику не нужно теряться в догадках, как должны быть разработаны отдельные страницы в приложении.
//-- Связанные шаблоны проектирования --// Одна из важных причин использования сетчатой структуры (GRID STRUCTURE) заключается в предоставлении гарантий того, что окончательный проект приведет к логической и предсказуемой организации, улучшит понимание и облегчит пользователям поиск нужной информации (VISUAL HIERARCHY).
VISUAL HIERARCHY (ВИЗУАЛЬНАЯ ИЕРАРХИЯ) //-- Проблема --// Пользователям необходимо разобраться в информации, представленной на веб-страницах, чтобы сначала они могли уделить внимание наиболее важной информации, прежде чем переходить к менее значимой.
//-- Решение --// Проектируйте страницы так, чтобы визуальная иерархия была очевидна пользователям. То есть используйте визуальные подсказки, с тем чтобы четко указать группировку и порядок элементов на веб-странице и помочь провести пользователей по странице, так чтобы они поняли цель страницы, осмыслили ее организацию и правильно определили степень важности различных ее элементов (рис. 12.12). По мнению Линча и Хортон (Lynch and Horton, 1999): «Графическое проектирование – это управление визуальной информацией с помощью инструментов макета страницы, разметки текста и иллюстраций для того, чтобы провести взгляд читателя по странице».
Рис. 12.12. В панели инструментов Dashboard Google Analytics четко определены различные группы элементов страницы, и пользователей знакомят с ними с помощью надлежащего использования изображений, цветов и размеров шрифтов, а также их относительной значимости
//-- Зачем --// Установка визуальной иерархии выполняет несколько важных функций (Wroblewski, 2002):
• создает центр интереса для привлечения внимания пользователей;
• создает ощущение порядка и баланса;
• устанавливает шаблон движения для проведения пользователей по различным элементам страницы.
Создание соответствующей визуальной иерархии, следовательно, позволяет пользователям более результативно и эффективно взаимодействовать с веб-приложениями.
//-- Как --// Поскольку проектировщики пытаются правильно передать важность элементов страницы через визуальную иерархию, очевидным первым шагом является составление списка элементов на странице в порядке их важности. Следующий шаг заключается в использовании одного или нескольких следующих визуальных компонентов для распределения по порядку, размещения и проектирования этих элементов, которые отражают желаемую визуальную иерархию: контрастность, деление изображений на блоки, выравнивание, свободное пространство, размеры шрифтов, формы, цвета и пр. Например, чтобы поднять элемент страницы в верхнюю строку визуальной иерархии, т. е. обеспечить максимальное выделение или степень важности элемента, его можно сделать крупнее, жирнее, отобразить контрастным цветом, отделить от других элементов с помощью дополнительного пробела, заключить в яркую цветную рамку, добавить изображение и/или поместить ближе к верхней левой или верхней центральной части страницы (рис. 12.13).
Рис. 12.13. На домашней странице Google логотип является наиболее значимым (в верхней части визуальной иерархии), так как он крупнее, жирнее и красочнее; сильно контрастирует с фоном; окружен большим свободным пространством и находится в центре верхней части страницы
Используйте контраст для создания визуальной иерархии
Контраст является одним из ключевых методов проектирования, применяемых для передачи визуальной иерархии. Он создается с помощью визуальной разницы между элементами – чем сильнее отличаются два элемента, тем больше контраст между ними. В целом более контрастные элементы привлекают внимание пользователей сильнее в сравнении с менее контрастными элементами. Например, черный сильнее всего контрастирует с белым и обладает различными степенями контраста с разными оттенками серого цвета.
Яркость – не единственный способ, как два элемента могут контрастировать друг с другом. Контраст также может быть создан с использованием одного или нескольких из следующих свойств: формат, структура, положение, форма, цвет и ориентация (рис. 12.14).
Рис. 12.14. Основные формы контраста. (Источник: Rutledge, 2007.)
С помощью комбинации этих визуальных форм может быть спроектирована визуальная иерархия, а желаемые элементы можно выделить, чтобы привлечь внимание пользователей.
Контраст также может быть применен к элементам страницы на уровне текста. Например, заголовки и подзаголовки можно выделить из остальной части текста с помощью контрастных форм, таких как размер и цвет (рис. 12.15).
Рис. 12.15. Blogger устанавливает хорошую визуальную иерархию с помощью большого, красочного, контрастного логотипа, а затем перемещает внимание пользователей к центральной области с ярким призывом к действию Create Your Blog Now (Создайте собственный блог прямо сейчас), а затем к изображениям и т. д.
Важно помнить, что контраст касается не только контраста фона и переднего плана, но и контраста (т. е. различия) между элементами страницы. Если контраст фона и переднего плана высок, а контраст между элементами страницы низкий, веб-страница не сможет установить четкую визуальную иерархию.
Из-за этого страница может казаться пользователям загроможденной и дезорганизованной, поскольку им приходится с трудом перемещаться по странице, чтобы определить, что посетить в первую очередь, что во вторую и т. д.
Визуально группируйте дополнительную информацию
Объединив информацию визуально и четко определив, что представляет собой группа, пользователи могут быстро решить, следует ли обращать на нее внимание. Правильно спроектированная группировка упрощает внешний вид страницы, поскольку пользователям становится проще фильтровать (т. е. игнорировать) не очень значимую информацию и сосредоточивать внимание на интересующих их областях (рис. 12.16).
Рис. 12.16. Crazy Egg объединяет различные области на странице с помощью цвета, размера шрифта и пустого пространства не только для того, чтобы установить хорошую визуальную иерархию, но также чтобы придать странице более простой и визуально привлекательный вид
Визуальная иерархия важна как среди групп, так и среди элементов внутри групп. Решив сосредоточить внимание на логической группе, пользователи должны быть способны понять значение элементов в группе. На рисунке 12.16 Crazy Egg выделяет различные элементы внутри группы, чтобы показать степень их важности. Например, в разделе Let’s Get Started (Начнем работу) функция Create a Test (Создать тест) находится в визуальной иерархии выше, чем текст Setting up a test… (Загрузка теста…).
Размещайте постоянные элементы в одних и тех же местах
Постоянные элементы на странице, т. е. элементы, которые появляются почти на всех страницах в приложении, такие как логотипы, средства навигации, заголовки, колонтитулы и т. д., должны быть расположены в соответствующих местах.
Для каждого постоянного элемента следует определить степень значимости и размещать его соответственно. Например, средства навигации важны и должны быть выделены надлежащим образом и четко отделены от других элементов, таких как логотипы и заголовки (рис. 12.17).
Рис. 12.17. Blinksale размещает заголовок, основные средства навигации, вспомогательные средства навигации, контент страницы и связанные действия в одних и тех же местах
//-- Связанные шаблоны проектирования --// Выравнивание элементов страницы чрезвычайно важно для создания надлежащей визуальной иерархии (VISUAL HIERARCHY) и для проведения пользователей по элементам страницы. Сетчатая структура (GRID STRUCTURE), как правило, используется для обеспечения надлежащего выравнивания элементов страницы и помощи при беглом просмотре контента. Знание визуальной иерархии страницы также очень важно для семантической разметки (SEMANTIC MARKUP) (см. главу 11). Порядок элементов в разметке страницы должен отражать желаемую визуальную иерархию, чтобы при отображении страницы без таблиц стилей и изображений визуальная иерархия элементов страницы по-прежнему поддерживалась.
HIGHLIGHT (ВЫДЕЛЕНИЕ) //-- Проблема --// Некоторые элементы страницы должны выделяться и привлекать внимание пользователей, не только чтобы установить свою значимость, но также в ответ на действия пользователей (например, выбор элемента) либо чтобы довести до сведения пользователей изменения в статусе элементов страницы или отдельных пунктов данных.
//-- Решение --// Следует выделить выбранные или измененные элементы, чтобы направить на них внимание пользователей (рис. 12.18). В случае необходимости укажите «значение» или степень изменения.
Рис. 12.18. Dell применяет несколько способов выделения на этой странице: рекомендованные опции выделяются с помощью зеленого фона, а элементы, измененные и с обновленной конфигурацией, выделены в разделе My Components (Мои компоненты) с помощью желтого фона
//-- Зачем --// Выделение важно для обеспечения визуальной обратной связи с выбранными элементами, а также для направления внимания пользователей на изменения. Оно также полезно в следующих случаях (Mahemoff, 2006):
• демонстрация элементов, находящихся в фокусе;
• демонстрация того, какие элементы выбраны;
• указание, что элемент имеет особое значение;
• указание, что элемент претерпевает изменения;
• побуждение пользователей произвести действия с элементом.
Выделение особенно важно на страницах, сообщающих о различных состояниях большого числа разнообразных элементов, поскольку оно не только направляет внимание пользователей, но также призывает к соответствующему действию.
//-- Как --// Существует несколько способов выделения элементов страницы, с тем чтобы сделать их заметными: изменить цвет фона, изменить цвет текста, набрать текст полужирным шрифтом или сделать его более крупным, изменить границы, использовать анимацию (см. шаблоны ANIMATIONS/TRANSITIONS и SPOTLIGHT/YELLOW-FADE в главе 8), затемнить некоторые элементы или использовать иконки. В идеале примените комбинацию этих стилей (рис. 12.19 и 12.20).
Рис. 12.19. Backpack показывает текущую (т. е. выбранную) вкладку, используя сочетание цвета фона, границ, размера и цвета шрифта. На данной странице выделено сообщение: Get reminders on your email or cell phone (Получайте напоминания на вашу электронную почту или на мобильный телефон) путем изменения цвета фона и использования более жирного и крупного шрифта. Backpack отменяет выделение (т. е. не выделяет) ссылки вспомогательной навигации в нижнем колонтитуле, сделав их меньшего размера и серыми
Рис. 12.20. Данная демонстрационная панель инструментов BrightPoint Consulting (www.brightpointinc.com) иллюстрирует несколько различных способов выделения элементов страницы: изменяется цвет фона выбранной кампании, итоги кампании выделены желтым цветом, а различные размеры пузырей выделяют кампании с более высокими расходами на рекламу
Выделяйте выбранные элементы в списке
Четко укажите пункты, с которыми пользователи работают или будут совершать действия, выделив каждый выбранный элемент. Даже если для выбора используются флажки, выделение – это лучший визуальный способ отличить выбранные элементы от невыбранных (рис. 12.21).
Рис. 12.21. Gmail выделяет выбранные элементы, изменяя цвет их фона
Используйте кратковременное выделение для информирования пользователей об изменениях на странице
Мгновенное выделение элемента (обычно с помощью затухающего и вспыхивающего выделения) создает эффект анимации и привлекает внимание пользователей к измененной области на странице (см. шаблоны ANIMATIONS/TRANSITIONS и SPOTLIGHT/YELLOW-FADE в главе 8).
Используйте эффект Lightbox для выделения изменений, требующих реакции пользователя
В случаях когда элемент страницы необходимо выделить и пользователи должны взаимодействовать с ним, прежде чем продолжить (по аналогии с модальным диалоговым окном в настольных приложениях), удачным способом привлечь внимание пользователей будет затемнение всех других элементов на странице, кроме выделенных (рис. 12.22).
Рис. 12.22. Picnik выделяет регистрационную форму, затемняя фон страницы, требуя, чтобы пользователи либо продолжили создавать учетную запись, либо закрыли сайт, нажав на значок «закрыть» (х)
Соблюдайте единообразие методов выделения
Соблюдайте единообразие методов выделения похожих взаимодействий по всему приложению. Хотя в проекте могут применяться различные способы выделения для различного контекста, такого как выбранные элементы, сообщения (например, ошибки, отзывы, благодарности и оповещения), выбранные элементы навигации и т. д., они должны оставаться неизменными на протяжении всего приложения. На рисунке 12.21 Gmail использует желтый фон для выделения выбранных сообщений электронной почты, голубой фон – для выделения выбранного элемента навигации (в данном случае Inbox (Входящие)), а зеленый значок – для обозначения пользователей, которые в настоящее время находятся на сайте для общения (в данном случае Pawan Vora).
//-- Связанные шаблоны проектирования --// Анимация и переходы также являются удачными методами привлечения внимания пользователей к измененным элементам (см. шаблоны ANIMATIONS/TRANSITIONS и SPOTLIGHT/YELLOW-FADE в главе 8).
ICONS (ИКОНКИ) //-- Проблема --// Проектировщики стремятся сделать различные объекты и команды на странице легко узнаваемыми, используя не слишком много пространства, и в то же время сделать интерфейс визуально приятным и привлекательным для пользователей.
//-- Решение --// Используйте иконки для представления наиболее часто применяемых объектов и действий (рис. 12.23).
Рис. 12.23. Yahoo! Mail использует иконки для обозначения как объектов (например Inbox (Входящие), Drafts (Черновики), Spam (Спам) и т. д.), так и действий (например, Delete (Удалить), Reply (Ответить), Forward (Вперед) и т. д.
//-- Зачем --// Иконки могут быть использованы в веб-приложениях по целому ряду причин:
• иконки для общих целей и задач легче узнаются и запоминаются;
• они занимают меньше места, чем соответствующие текстовые ссылки.
Иконки, как правило, более универсальны при распознавании, чем текст, поэтому при локализации веб-приложений иконки, используемые надлежащим образом, оказывают минимальное воздействие на макет. Однако если иконки используются с ярлыками, следует учитывать возможность увеличения объема текста при переводе ярлыка на другие языки (см. шаблон EXTENSIBLE DESIGN в главе 10).
//-- Как --// Самое главное – используйте знакомые иконки (Nolan, 1989), т. е. используйте конкретные (а не абстрактные) иконки и те, которые напоминают пользователям уже известные вещи. Применяйте иконки, ясно указывающие на объекты или действия, которые они представляют. В идеале пользователи должны легко узнавать иконки без сопроводительного текстового ярлыка.
Дополните иконки ярлыками
Несомненно, найдутся объекты и действия, которые незнакомы пользователям. Поэтому следует дополнить иконки ярлыками, чтобы облегчить распознавание действий. При первом знакомстве пользователей с приложением, они, скорее всего, будут полагаться на ярлыки, однако при дальнейшем использовании их взаимодействие станет более эффективным, поскольку им станут привычны иконки.
Если при добавлении ярлыки могут занять дополнительное пространство, включите всплывающие подсказки для иконок.
Однако при динамическом изменении статуса иконки следует динамически обновить подсказки, чтобы указать измененное состояние.
Исключите текст из иконок
Старайтесь не использовать текст в качестве части изображения иконки, так как это затрудняет ее локализацию (т. е. перевод на другие языки, см. главу 10). Из-за малого размера иконки текст также может быть труден для восприятия, а при использовании ярлыка пользователям может быть непонятно, на что обращать внимание при расшифровывании значения иконки – на ярлык или на текст. Кроме того, пользователям с дефектами зрения, возможно, будет трудно прочитать текст при увеличении (см. шаблон ACCESSIBLE IMAGES в главе 11).
Используйте модификаторы для указания или изменения статуса объекта
Одна и та же базовая иконка может быть использована для обозначения нескольких статусов объекта – например, новые электронные письма, прочитанные электронные письма и письма, на которые ответили (рис. 12.24). В приложениях, занимающихся мониторингом, аналогичные модификаторы, называемые «карты здоровья», часто используются для обозначения предупреждений или статуса объектов. Они расположены либо рядом, либо в правом или левом нижнем углу основной иконки (рис. 12.25). Иконка-модификатор может применяться поверх основной иконки, если основная иконка остается узнаваемой и не скрыта иконкой-модификатором (например, наложение «X» поверх иконки).
Рис. 12.24. Hotmail использует одну ту же базовую иконку, чтобы показать новые сообщения, прочитанные, а также прочитанные сообщения, на который был написан ответ
Рис. 12.25. В этом примере иконки-модификаторы расположены рядом с иконкой сети для обозначения «здоровья» сети: (слева направо) критические проблемы, серьезные проблемы, незначительные проблемы и нормальный статус
Используйте иконки-переключатели для обозначения альтернативного состояния
Иконки-переключатели используются для обозначения наличия или отсутствия атрибута или для определения состояния. Например, на рис. 12.26 показана иконка звезды, используемая как переключатель в Gmail для обозначения «избранного» или «нормального» состояния электронной почты. Это очень похоже на метод «установки флажков», предлагаемый системами электронной почты на базе настольных приложений, таких как Outlook.
Рис. 12.26. Gmail переключает иконку звезды для обозначения «избранного» или «нормального» состояния электронной почты
Иконки-переключатели также используются для обозначения выключенного и включенного состояния объектов. Некоторые распространенные способы применения иконок-переключателей – отображение развернутого и свернутого состояний в древовидных структурах, а также применение для навигации или для определенных элементов страницы (как в портлетах) (рис. 12.27).
(а)
(б)
Рис. 12.27. Yahoo! Mail (a) и Netvibes (б) используют иконки с изображением стрелок для обозначения развертывания и сворачивания разделов
Создавайте иконки, визуально отличающиеся друг от друга
Важно, чтобы иконки были легко отличаемы друг от друга, чтобы помочь пользователям быстро находить соответствующие иконки (а следовательно, и действия) и свести к минимуму путаницу.
Это обычно осуществляется путем придания им визуально отличных друг от друга форм (рис. 12.28), и особенно важно, когда иконки используются, чтобы подсказать информацию о статусе. Например, старайтесь не использовать иконки одной формы разных цветов (к примеру, красный, желтый и зеленый), чтобы указать статус. Вместо этого применяйте различные формы, помимо цвета, такие как красный восьмиугольник, желтый треугольник и зеленый круг. Использование различных методов кодирования также помогает пользователям с нарушениями цветного зрения, поскольку они могут использовать форму иконки для определения статуса.
Рис. 12.28. В иконках, используемых Mint, применяются различные фигуры, чтобы их отличие друг от друга было явным
Используйте один визуальный стиль для иконок
Убедитесь, что иконки выглядят профессионально разработанными, и придерживайтесь одного и того же набора стилистических условных обозначений, т. е. одного основного набора цветов (сочетающегося с брендом сайта) и одних и тех же визуальных стилей и эффектов (рис. 12.29).
(а)
(б)
Рис. 12.29. В иконках, используемых Hulu (а) и Brightcove (б), применяется метод последовательного использования стиля
Совет
Чтобы проверить визуальную четкость иконок, заполните непрозрачные области иконок одним и тем же цветом и поместите их рядом друг с другом. Чем четче они отличимы друг от друга, тем лучше их различимость.
Используйте анимированные иконки только в случае крайней необходимости
Анимация обычно привлекает внимание пользователей и может отвлекать. Поэтому применяйте анимированные иконки только тогда, когда это необходимо для направления внимания пользователей, например, когда пользователям нужно подождать, пока веб-приложение закончит обработку (рис. 12.30).
Рис. 12.30. Анимированные иконки, как правило, применяются для информирования пользователей о том, что приложение обрабатывает информацию. В данном примере показаны 11 из 24 кадров, используемых для создания анимированной иконки (Источник: www.ajaxload.info.)
//-- Связанные шаблоны проектирования --// Иконки часто применяются, чтобы подчеркнуть изменение статуса, поэтому рассмотрите возможность использования других методов выделения, чтобы гарантировать, что пользователи заметят изменения (HIGHLIGHT).
Глава 13 Библиотеки шаблонов Введение Как обсуждалось в главе 1, шаблоны проектирования могут предложить такие преимущества, как проверенные дизайнерские решения и руководство для их использования, улучшенный процесс дизайна, возможность многократного использования, непротиворечивые интерфейсы и т. д. Чтобы реализовать все эти преимущества, важно, чтобы шаблоны были документированы и доступны в формате, поддерживающем многократное использование. В настоящее время существует несколько документированных коллекций шаблонов, обычно называемых библиотеки шаблонов. Наиболее известные из них – коллекция Дженифер Тидвелл (Тидвелл, 2008), веб-сайт Мартина ван Вели о шаблонах проектирования (www.welie.com), книга «Проектирование сайтов» (Van Duyne et al., Design of Sites. 2006), а также библиотека шаблонов проектирования Yahoo! (developer.yahoo.com/ypatterns/).
Несмотря на популярность шаблонов и библиотек шаблонов, в настоящий момент не существует единого мнения о том, как их документировать, поддерживать и использовать совместно с другими. При этом не было никакого эмпирического исследования, которое оценило бы эффективность существующих языков шаблонов, библиотек и коллекций, спроектированных для пользовательских интерфейсов. Вместо того чтобы анализировать и обсуждать все «за» и «против» различных подходов (Dearden and Finlay, 2006; Dennis and Snow, 2006), в этой главе библиотеки шаблонов рассматриваются как один шаблон, идентифицируются основные элементы шаблонов, а также предлагаются лучшие методы для их разработки.
Библиотека шаблонов //-- Проблема --// В отсутствие формального процесса создания успешных, пригодных для многократного использования дизайнерских решений процесс проектирования может быть весьма неэффективным, поскольку дизайнеры и разработчики тратят время, пытаясь решить проблемы проектирования пользовательского интерфейса, для которых успешные дизайнерские решения были уже найдены и реализованы. Это часто усугубляется, когда объяснение и контекст для ранее использованных дизайнерских решений не документированы, что мешает подтверждать правильность их использования.
//-- Решение --// Разработайте репозиторий шаблонов проектирования (т. е. библиотеку шаблонов), документируя информацию о проблемах дизайна, решениях, объяснениях и лучших методах реализации шаблонов (рис. 13.1). Кроме того, разделите работу над библиотекой шаблонов с другими дизайнерами и разработчиками, поспособствуйте использованию, а также многократному использованию шаблонов при помощи включения фрагментов кода реализации (т. е. компонентов), поощрите участие разработчика и дизайнера.
Рис. 13.1. Библиотека шаблонов проектирования Yahoo! компании Developer Network имеет открытый исходный код. То есть интерактивные дизайнеры получают комплект заготовок, облегчающих создание каркасов и схем большинства шаблонов в виде фрагментов кода в библиотеке YUI, получая, таким образом, помощь в использовании этих шаблонов, не вдаваясь в подробности их разработки
//-- Зачем --// Для больших и/или распределенных групп дизайнеров в пределах объединения распространено находить отличающиеся дизайны пользовательского интерфейса и различные интерактивные подходы для одной и той же проблемы дизайна на разных линиях продукта; для них также свойственны различные визуальные интерпретации. Результатом этого являются противоречивые интерфейсы, которые могут снизить работоспособность приложения и сделать его разобщенным (Malone et al., 2005). Способствуя многократному использованию дизайнерских решений, библиотеки шаблонов предлагают эффективный метод документации и совместного использования решений к повторяющимся проблемам дизайна и помогают достигнуть желаемой согласованности. Библиотеки шаблонов могут также сделать процесс проектирования более эффективным и увеличить продуктивность дизайнеров сокращением количества повторных исследований и минимизацией «умных указателей на массив» (Malone et al., 2005).
Несмотря на то что шаблоны являются дизайнерскими решениями независимо от определенных проблем реализации, группы по разработке и дизайну могут в дальнейшем уменьшить время, расходуемое на разработку пользовательского интерфейса, создавая программные компоненты, поддерживающие шаблоны проектирования. После того как шаблон проектирования выбран, группы по разработке могут многократно использовать и адаптировать программные компоненты и фрагменты кода для того, чтобы реализовать выбранные шаблоны (Sinnig et al., 2004). Возможность многократного использования и другие полезные действия также достигаются с тех пор, как программные компоненты стали постоянно включаться в связанные шаблоны проектирования. Например, программный компонент шаблона TABULAR LIST может включать в себя шаблоны SORTING и PAGINATION и упростить тем самым задачу разработчиков по реализации всех трех шаблонов.
Даже когда дизайнерские группы меньше по размерам и находятся в одинаковых условиях, библиотеки шаблонов все равно выгодны, потому что они предоставляют возможность фиксировать лучшие методы дизайна и способствуют многократному использованию. Из-за ограниченной доступности ресурсов проектирования и использования у малых дизайнерских групп уменьшение повторной работы при помощи многократного использования известных и успешных дизайнерских решений имеет зачастую большую важность, чем для более крупных дизайнерских групп.
//-- Как --// Первая задача при разработке библиотеки шаблонов состоит в том, чтобы решить, как документировать каждый шаблон. Как говорилось в главе 1, авторы шаблонов использовали отличающиеся друг от друга методы (включая данного автора) документирования шаблонов, и единого мнения, какой из них является наиболее эффективным, до сих пор не существует. Однако все эти шаблоны содержат следующие основные разделы.
Имя шаблона. Название дизайнерского решения, говорящее о том, что этот шаблон собой представляет. Недвусмысленное (и желательно знакомое) имя важно сделать простым для распознавания, выбора и запоминания дизайнерами.
Проблема. Краткое описание проблемы дизайна и компромиссов, на которые придется пойти дизайнерам, если это имеет место быть.
Решение. Краткий вывод и изображение примера, которое показывает успешное дизайнерское решение. Изображение может быть эскизом или фактическим скриншотом; последний вариант предпочтителен, поскольку показывает дизайнерское решение на практике и помогает продемонстрировать достоинства шаблона.
Причины эффективности дизайнерского решения (ответ на вопрос «Зачем?»). Одно из дизайнерских решений является основой для создания шаблона. Он может базироваться на эмпирическом исследовании, принципах дизайна пользовательского интерфейса (или методах эвристики) и/или по просьбе пользователей по установленному соглашению. В раздел также могут входить особые контексты, которым шаблоны наиболее соответствуют.
Лучшие варианты применения дизайнерских решений на практике (ответ на вопрос «Как?»). В большинстве случаев применение дизайнерского решения требует рассмотрения дополнительных вопросов. Например, при использовании шаблона DELAY/PROGRESS INDICATOR (см. главу 8) дизайнерам может быть важно узнать, как показать затраченное или сэкономленное время и в каком контексте. Определение лучших вариантов применения является самым важным для обеспечения корректного использования выбранного шаблона.
Связанные шаблоны проектирования. Большинство шаблонов не является самостоятельными. Они связаны с другими шаблонами, в том числе потому, что при их применении требуется слияние с другими шаблонами или потому, что они содержат в себе другие шаблоны. Например, при создании форм дизайнеры должны рассмотреть такие шаблоны, как SHORT FORMS, ACTION BUTTONS, REQUIRED FIELD INDICATORS, ERROR MESSAGES, а также ACCESSIBLE FORMS и т. д. (см. главу 2). Определение таких связей может помочь дизайнерам обнаружить взаимосвязь между шаблонами и обеспечить непротиворечивый и пригодный для использования дизайн. Раздел связанных шаблонов проектирования иногда также ссылается на похожие шаблоны в других коллекциях.
Другие разделы, которые могут быть полезными, включают:
Комментарии. Чтобы стимулировать совместное использование и обсуждение шаблона среди дизайнеров и разработчиков, страница с шаблоном может включать обсуждение или секцию комментариев (рис. 13.2). Это поможет найти «коллективную мудрость» дизайнеров и может помочь улучшить шаблоны или, по крайней мере, различные сценарии документа, в котором шаблон был применен успешно или требовал изменений. Секция комментариев распространена в общедоступных библиотеках, таких как Welie.com, библиотека шаблонов UC Berkeley и библиотека шаблонов с открытым исходным кодом Fluid.
Рис. 13.2. Сайт Welie.com позволяет пользователям оставлять комментарии, чтобы обсудить шаблон, и подписаться на рассылку RSS, если они хотят, чтобы их информировали об изменениях шаблона
Исследовательское доказательство. Чтобы усовершенствовать валидность шаблона и его устойчивость, может понадобиться помощь эмпирического или исследовательского доказательства, которое продемонстрирует преимущества шаблона. Исследование поддержки также может быть включено в данный раздел в качестве исследовательского доказательства, результатов работоспособности или отзывов пользователей (Spool, 2006).
История или журнал изменений. Любые изменения, произведенные в шаблонах, основанные на отзывах других дизайнеров и разработчиков или на исследовательских доказательствах, могут быть занесены в журнал и показаны в секции истории (рис. 13.3).
Рис. 13.3. В библиотеке шаблонов «Sakai» показаны последние изменения шаблонов в разделе «Recent Changes»
Как для больших, так и для малых дизайнерских групп разработка библиотек шаблонов может быть грандиозной задачей [28 - Интересно узнать, что многие из популярных архивов библиотек шаблонов в Интернете, например, Welie.com, ui-patterns.com, uipatternfactory.com и designinginterfaces.com, являются работами одного-единственного человека.]. Поэтому начать с разработки библиотеки шаблонов, включающей только основные элементы шаблона, может быть вполне достаточно; изменение шаблона, взятого из библиотеки шаблонов с открытым исходным кодом, тоже хороший способ отобрать библиотеки шаблонов. Преимущество библиотек шаблонов заключается непосредственно в том, что каждый шаблон, добавляемый в библиотеку, доступен для многократного использования.
Обязательно включите пригодные для (многократного) использования компоненты дизайна
Важная цель библиотеки шаблонов состоит в том, чтобы стимулировать многократное использование дизайнерских решений. Поэтому перед включением в библиотеку необходимо рассмотреть все предложенные компоненты, которые упростили бы использование дизайнерских решений как интерактивным дизайнерам, так и разработчикам. Например, чтобы упростить многократное использование интерактивными дизайнерами, в библиотеки шаблонов могут включаться типовые карты сайта, диаграммы информационных потоков и каркасы; многое из этого может быть в виде заготовок или визуальных компонентов (рис. 13.4).
Рис. 13.4. Библиотека шаблонов проектирования Yahoo! предлагает пользователям комплект заготовок в различных форматах (в том числе OmniGraffle, Microsoft Visio, PDF и др.), чтобы помочь дизайнерам в каркасном проектировании инструментами, которые они предпочитают
Аналогично, чтобы упростить многократное использование разработчиками, включите фрагменты кода в HTML, каскадные таблицы стилей, JavaScript, PHP, ASP, JSP и все, что необходимо группе разработчиков для упрощения работы, чтобы им оставалось только копировать и вставлять фрагменты в код при проектировании приложения (рис. 13.5).
Рис. 13.5. Библиотека UI Yahoo! содержит несколько компонентов, помогающих реализовать ее шаблоны (они, так или иначе, не связаны с шаблонами)
Выбирая программные компоненты для многократного использования, важно тестировать их на совместимость между браузерами, производительность и взаимодействие с другими компонентами, прежде чем включить их в библиотеку шаблонов. Необходимо также подчеркнуть, что компоненты могут не являться «съемными» решениями и могут требовать некоторой тонкой настройки и обновлений. Как в практике разработки и внесении технологических изменений, многократно осматривайте и заново тестируйте компоненты, чтобы гарантировать их дальнейшую полноценность.
Добавляйте как можно больше примеров
По определению, шаблоны доказывают свои достоинства по мере их использования (Winn and Calder, 2002). Без четкого доказательства успешного применения шаблоны, возможно, имели бы ограниченную «прочность». Шаблоны Александра (Alexander et al., 1977) и несколько коллекций шаблонов проектирования пользовательского интерфейса (Bochers, 2001; Graham, 2003) постоянно показывают уровень «прочности» шаблона при помощи системы «звездной» оценки. Грэм (Graham, 2003) утверждает:
Вновь следуя примеру Александра, мы классифицировали шаблоны согласно нашему уровню уверенности в них. «Звездная» оценка шаблонов отображается рядом с его названием и выделена оранжевым цветом, показывая его рейтинг. Три звезды говорят о том, что мы полностью убеждены в эффективности шаблона, когда использовали его или использовал кто-то другой в своих проектах. Три звезды также могут означать, особенно для абстрактных шаблонов, что в нем присутствует твердое теоретическое начало. Если звезд нет – это означает, что мы думаем, что это хорошая идея, но хотелось бы увидеть со стороны, каков шаблон в использовании. Одна и две звезды интерпретируются на отрезке между двумя этими значениями соответствующим образом.
Применение системы «звездной» оценки достаточно затруднено, поскольку требует суждения со стороны авторов шаблона или дизайнерской группы (одна из причин ее отсутствия в этой книге). Кроме того, применение этой системы в условиях объединения может быть контрпродуктивным, так как дизайнерские группы могут перестать обращать внимание на шаблоны с низким рейтингом. Включение нескольких примеров использования шаблонов более эффективно, потому что пользователи могут видеть случаи применения шаблона и определить его уместность для их дизайнерской проблемы. Более того, шаблоны зачастую являются результатом фактического применения, нежели теоретических конструкций или принципов, что является важной причиной для включения примеров, показывающих использование шаблонов в различных приложениях (рис. 13.6).
Рис. 13.6. Сайт «Фабрика шаблонов UI» (www.uipatternfactory.com) показывает галерею скриншотов для каждого шаблона. Пользователи могут также увидеть дополнительные скриншоты на сопроводительной общедоступной странице группы Flickr
В дополнение к фактическим скриншотам, иллюстрирующим применение шаблона, покажите пользователям список приложений, где шаблон используется. Это особенно полезно для корпоративных библиотек шаблонов, где показана реализация справочной информации о предложенных шаблонах, и даже демонстрации нескольких номенклатур продукции фирмы будет достаточно, чтобы оправдать использование этого шаблона и дать дизайнерам и разработчикам увидеть несколько способов его использования (рис. 13.7).
Рис. 13.7. В библиотеке шаблонов Yahoo! присутствуют примеры использования шаблонов, которые можно найти на панели меню Yahoo! (в разделе «As Used on Yahoo!»), а также примеры кода (в разделе «YUI Code Examples»)
Продемонстрируйте более богатую интерактивность
Многие шаблоны проектирования, особенно богатые веб-приложения (RIA), воплощены в интерактивном взаимодействии с пользователем. Такое взаимодействие может стать ближе, если пользователи могут испытать интерактивность, предложенную шаблоном. Когда такой случай имеет место быть, полезно позволить пользователям испытывать интерактивность в форме интерактивного прототипа, анимации или фильма (рис. 13.8).
Рис. 13.8. В библиотеке шаблонов Yahoo! используется анимация, чтобы проиллюстрировать более высокую интерактивность
Включите аспекты расширенного доступа и интернационализации
Если связанные с расширенным доступом и интернационализацией шаблоны проектирования не имеют раздельной документации, то будет важно включить лучшие методы непосредственно в шаблоны; необходимые приемы расширенного доступа и интернационализации также должны быть включены в соответствующие программные компоненты.
Несмотря на то что некоторые библиотеки шаблонов включают аспекты расширенного доступа (например, библиотека шаблонов Yahoo! шаблоны UI и библиотека шаблонов проектирования с открытым исходным кодом Fluid; рис. 13.9), в настоящие время ни одна из них не включает аспектов интернационализации. Однако их включение важно для компаний, планирующих локализовать свои приложения (см. главу 10 для уточнения деталей интернационализации).
Рис. 13.9. В библиотеке шаблонов проектирования с открытым исходным кодом Fluid перечисляются соображения расширенного доступа для ее шаблонов; в данном случае – для шаблона LIST BUILDER (см. www.uidesignpatterns.org/content/list-builder)
Проанализируйте использование антишаблонов
Антишаблоны – это неподходящие в целом решения, которые подходят только для решения данной проблемы, их еще называют ловушками (Гамма и др., 2007). Несмотря на то что они не были упомянуты Кристофером Александром (Alexander et al., 1977), предложившим термин «шаблон», их включение в библиотеки шаблонов может быть полезным, если использование нестандартных решений является частой практикой. Хорошим примером является антишаблон HOVER&COVER, упомянутый Скоттом (Scott, 2008); который описал его как наведение указателя непосредственно на важную контекстную информацию, окружающую объект, или достижение «перекрытия» иным образом (рис. 13.10). В список антишаблонов, изучаемых Скоттом, входят: MEANDERING WAY, TINY TARGETS, POGO STICK NAVIGATION, LINKITUS, ANIMATION GONE WILD, WINDOWS APLENTY, MISSED MOMENTS и т. д.
Рис. 13.10. Описание антишаблона HOVER&COVER. (Источник: Scott, 2008.)
Поскольку антишаблоны – это дизайнерская практика, которую нужно избегать, они должны основываться на соответствующих шаблонах проектирования и находить действия, помогающие улучшить процесс дизайна. Альтернативой применения шаблонов может являться нахождение правильных действий непосредственно внутри исходного шаблона. Например, при описании шаблона наведения самое лучшее действие (или ответ на вопрос «Как?») может указать, что при использовании метода наведения контекстная информация или действия вокруг объекта не должны быть закрыты (или «захвачены»).
Сделайте поиск необходимых шаблонов простым
Чтобы поддержать их использование, необходимо сделать поиск необходимых шаблонов в библиотеке простым. Чтобы сделать это, дайте пользователям возможность обзора шаблонов различными способами, например, через пользовательские задачи, требования дизайна, тип приложения, алфавитный список и т. д. (рис. 13.11).
Рис. 13.11. В библиотеке шаблонов проектирования Yahoo! организация шаблонов основана на пользовательских задачах, а сами шаблоны располагаются в алфавитном порядке (когда пользователь выбирает пункт меню «see all…» рядом с заголовком «Recent Patterns»)
Внося в список шаблоны, добавьте их эскизы, чтобы упростить их обзор и нахождение нужного соответствия, а также облегчить нахождение других полезных шаблонов (рис. 13.12).
Рис. 13.12. В библиотеке шаблонов проектирования пользовательского интерфейса, а также на сайте шаблонов UI (www.ui-patterns.com) используются эскиз, имя шаблона и краткое описание, чтобы упростить пользователям поиск нужного шаблона
Разработчики также извлекали бы пользу, если бы помогли создать помощь в выборе нужных шаблонов, базирующихся на одной ли нескольких общих дизайнерских целях; такая функция особенно помогла бы при выборе из набора связанных по внешнему виду шаблонов. Также как в случае с шаблоном FILTERING (см. главу 6), пользователи могут корректировать дизайнерские признаки, чтобы сузить или расширить свои варианты шаблонов (рис. 13.13).
Рис. 13.13. Сайт «Информационные шаблоны проектирования» (www.infodesignpatterns.com) делает поиск нужных шаблонов простым, разрешая пользователям фильтровать их по категориям, например, Display Patterns (Шаблоны дисплея), Behavior Patterns (Шаблоны поведения) и Interaction Patterns (Шаблоны взаимодействия)
Разрешайте и поощряйте участие
Чтобы поощрять участие других дизайнеров и разработчиков, дайте возможность пользователям оценивать шаблоны, оставлять комментарии и/или предлагать идеи для новых шаблонов (рис. 13.14).
(а)
(б)
(в)
Рис. 13.14. Библиотеки шаблонов могут поощрять участие других пользователей несколькими способами: сайт UI-шаблонов позволяет пользователям оценивать полезность шаблона голосованием «хорошо» (Thumbs-up) или «плохо» (Thumbs-down) (а), на сайте веб-шаблонов UC Berkeley пользователи могут оставлять комментарии и код (б), а «Фабрика шаблонов UI» приглашает пользователей обменяться идеями и предложить свои шаблоны на форуме «Pattern Ideas» (в)
Хоть это не общепринято, но поощрения стимулируют дизайнеров и разработчиков предлагать и публиковать шаблоны с открытым исходным кодом. Как минимум, они должны иметь возможность предоставлять примеры и скриншоты для существующих шаблонов и оформлять их в галереи. В каждом примере пользователи могли бы указать, как они использовали шаблон, и оставлять комментарии к доказательству успешного использования или контексту, в котором, как оказалось, применение шаблона было неподходящим.
Хорошим примером является «Фабрика шаблонов UI». На этом сайте пользователи могут вносить свой вклад в примеры шаблонов, которые использует группа Flickr. Пользователи могут присоединиться к сообществу Flickr (UIPatternFactory.com) и скачивать скриншоты, отмечать их именами шаблонов и предлагать их на включение вместе с другими примерами в данный шаблон (рис. 13.15). Кроме того, необходимо признать, что участие пользователей происходит не только ради признания их вклада, но также и служит стимулом для содействия других пользователей.
Рис. 13.15. Группа UIPatternFactory.com на сайте Flickr позволяет пользователям добавлять свои скриншоты для любого существующего шаблона
Чтобы гарантировать, что заинтересованные пользователи смогут оставаться в курсе изменений, предложите им функцию RSS-рассылок (рис. 13.16).
Рис. 13.16. На сайте Welie.com пользователи могут подписаться на RSS-рассылку и быть в курсе всех изменений
Установите процесс управления библиотеками шаблонов
Последнее и, возможно, самое важное: библиотеки шаблонов должны управляться точно так же, как любое другое приложение. В частности, они должны иметь четкие процессы добавления, обновления и архивирования (или изъятия) шаблонов. Также важно установить процесс утверждения шаблонов, прежде чем можно будет добавлять их.
Процесс должен отображать, как шаблон движется от наброска или стадии предложения к стадии утверждения, как участники присылают отзывы, как разрешаются разногласия, как каждое предложение будет утверждено и т. д. (рис. 13.17) (Crumlish, 2008; Malone et al., 2005). Если программные компоненты были включены в шаблон, то важно, чтобы процессы просмотра кода и тестирование также были включены.
Рис. 13.17. Технологическая последовательность библиотеки шаблонов, используемая Yahoo! (Источник: Malone et al., 2005.)
Чтобы обеспечить актуальность и полезность библиотеки шаблонов, необходимо отслеживать и совершенствовать или расширять сферу применения шаблонов и продлевать тем самым их эффективность и применимость. Некоторые шаблоны могут устареть из-за усовершенствований в подходах проектирования. Например, шаблон проектирования CAPTCHA (см. главу 3) является уместным на данный момент, но может стать устаревшим, как и другие технологические подходы, если появятся автоматизированные агенты распознавания компьютеров и людей.
В качестве альтернативы в некоторых шаблонах не изменяются принципы работы, но такие шаблоны должны обновляться по мере улучшений в исполнении. Например, формы, которые когда-то размечались с использованием таблиц, теперь могут быть размечены при помощи каскадных таблиц стилей (CSS). При любых таких изменениях, произведенных в шаблонах, последние должны помечаться как «Обновлено», чтобы информировать дизайнеров и разработчиков изменений; также информация об изменениях может быть разослана через RSS. Чтобы застраховаться от произвольных изменений шаблонов, важно определить и установить определенный процесс, контролирующий внесение изменений.
Используйте технологию Вики для разработки библиотек шаблонов
Необходимо рассматривать возможность применения технологии Вики для разработки библиотек шаблонов, так как эта технология упрощает сотрудничество, позволяя группе людей добавлять, изменять и удалять контент (рис. 13.18).
Рис. 13.18. Майкл Мехемофф (Michael Mahemoff) поддерживает сайт AjaxPatterns.org, содержащий библиотеку связанных с Ajax шаблонов, как и Вики
Вики также сохраняет историю изменений и позволяет вернуться к предыдущей версии в случае необходимости; такой встроенный контроль делает эту технологию полезной при разработке библиотек шаблонов даже единственным автором.
Благодаря таким функциям, как простые ссылки между веб-страницами, технология Вики упрощает установление ссылок между связанными шаблонами. Наконец, поддерживая обсуждение среди участников, Вики делает участие проще.
//-- Связанные библиотеки шаблонов --// Изучайте следующие библиотеки шаблонов проектирования пользовательского интерфейса для вдохновения:
• Библиотека шаблонов проектирования с открытым исходным кодом Fluid: www.uidesignpatterns.org.
• Коллекция шаблонов интерактивного проектирования Дженнифер Тидвелл: www.designinginterfaces.com.
• Веб-сайт о шаблонах проектирования Мартина Ван Уили (Martijn van Welie): www.welie.com.
• UI-шаблоны проектирования Sakai: bugs.sakaiproject.org/confluence/display/DESPAT/Home.
• Библиотека шаблонов UC Berkeley: groups.ischool.berkeley.edu/ui_designpatterns/webpatterns2/webpattems/home.ph.
• Фабрика шаблонов UI: www.uipatternfactory.com.
• UI-шаблоны, библиотека шаблонов проектирования пользовательского интерфейса: www.ui-patterns.com.
• Библиотека шаблонов проектирования Yahoo!: developer.yahoo.com/ypatterns/.
Глава 14 Помощь Введение Несмотря на следование основным принципам, процедурам и шаблонам проектирования для создания интерфейса, простого в изучении и эффективного в использовании, необходимо предоставить помощь и сделать ее доступной на всех уровнях взаимодействия пользователей. На своем самом основном уровне помощь должна отвечать на вопросы пользователей в рамках их задач и контекста приложения (CONTEXTUAL HELP). Это может быть реализовано в виде всплывающих подсказок, информирующих пользователей о типе и формате вводимых данных, или более подробный инструкции, помогающей пользователям выбрать один из доступных вариантов. Следующий уровень помощи должен предоставлять ответы на часто задаваемые вопросы (FREQUENTLY ASKED QUESTIONS) пользователей для поддержки частых и важных задач.
Встраивание различных форм помощи не исключает необходимости более полной справки. В случае сложного приложения пользователи могут даже не знать, поддерживаются ли определенные функции и задачи приложением и как их выполнять. Такая справка прикладного уровня должна быть доступна как в качестве самостоятельного модуля (APPLICATION HELP), так и в качестве совмещенного с приложением, так чтобы при обращении пользователей к справке они были направлены в раздел справки прикладного уровня, относящейся к странице или контексту задачи пользователей.
Даже в случае веб-приложений средних размеров пользователям, возможно, понадобится посетить несколько страниц и получить доступ к некоторым функциям для успешного выполнения задач. Для таких задач, особенно тех, которые, скорее всего, редко используются пользователями, важно обеспечить пользователей подробными пошаговыми инструкциями (GUIDED TOURS). Если задачи требуют диагностирования проблем или рассмотрения нескольких вариантов, это помогает запрашивать у пользователей пошаговое описание сценария их задач и привести их к возможным решениям (HELP WIZARDS). Основанный на мастере подход эффективен, потому что пользователи могут искать решения своим темпом и не спешить.
Даже обеспечивая разнообразные способы оказания помощи пользователям и предоставляя полную справку, невозможно предусмотреть и предпринять меры по всем вопросам пользователей и сценариям использования. Поэтому важно продумать дискуссионные форумы сообществ, где персонал поддержки и другие пользователи приложения могут помогать друг другу (HELP COMMUNITY). Предложение таких вариантов самообслуживания также помогает увеличить доверие между пользователями приложения и поставщиками.
Наконец, когда все работает неправильно, для решения проблемы не может быть ничего важнее возможности поговорить со знающим человеком. Хотя включение телефонного номера поддержки потребителей является очевидным вариантом, все больше и больше клиентов компаний все чаще и чаще предлагают варианты интерактивного чата или, другими словами, консультанта онлайн (CLICK-TO-CHAT), чтобы помочь пользователям вступить в контакт с поддерживающим персоналом.
CONTEXTUAL HELP (КОНТЕКСТНАЯ ПОДСКАЗКА) //-- Проблема --// Во время заполнения формы или выполнения задачи у пользователей может возникнуть вопрос об одном или более элементах страницы. Хотя помощь прикладного уровня включает подобную информацию (см. шаблон APPLICATION HELP в этой главе), необходимость перемещения пользователей в другую часть приложения может быть нежелательной, так как подобные действия могут быть причиной потери пользователями контекста их задач или, что еще хуже, информации.
//-- Решение --// Предоставьте справку внутри контекста пользовательских задач и запросов информации, чтобы облегчить пользователям получение справочной информации и сэкономить время поиска соответствующих разделов внутри самостоятельного модуля справки (рис. 14.1). Это может быть реализовано в форме всплывающей подсказки или строки-подсказки, встроенных подсказок, а также ссылки «Что это такое?» для получения информации.
Рис. 14.1. Ресурс Dell включает в себя справку, предлагая ссылку Help Me Choose (Помощь в выборе) на конфигурацию системы, когда пользователи делают свой выбор при настройке
//-- Зачем --// Предложение помощи внутри контекста задач пользователей и ее размещение ближе к проблемной области увеличивает вероятность того, что вопросы пользователей не останутся без ответов, и помогают избежать чувства необходимости в помощи. Кроме того, позволяя пользователям сохранять контекст и не вынуждая их переходить на другую страницу, они избегают потенциальных потерь положения внутри вебприложения или данных, и таким образом, повышаются шансы завершения пользовательских задач.
//-- Как --// Как и предполагает название, контекстная подсказка предоставляет немедленную помощь пользователям без вынуждения их оставлять свои задачи или контекст приложения. Существуют несколько способов предоставления контекстной подсказки:
• всплывающие подсказки или строки-подсказки;
• ссылка «Что это такое?» для получения информации;
• встроенные подсказки.
Всплывающие подсказки
Всплывающие подсказки обычно используются для предоставления краткого описания или объяснения формы или элемента взаимодействия. Справочная информация скрыта и не видна до тех пор, пока пользователи не наведут указатель мыши на форму или элемент взаимодействия, его ярлык или иконку рядом с ним (рис. 14.2). Они также известны как строки-подсказки, потому что изначально использовались для маркировки иконок в панели инструментов приложений с графическим пользовательским интерфейсом.
Рис. 14.2. При наведении указателя мыши на название изображения в сервисе Flickr появляется подсказка Click to edit (Нажмите для редактирования)
Что это такое?
В отличие от всплывающих подсказок, информация «Что это такое?» отображается, когда пользователи нажимают на ссылки «Что это такое?», «Подробнее» или на иконку, соответствующую данному типу справки. Справка типа «Что это такое?» более подробная и полезна для более длинных описаний и даже может содержать изображения. Пользователи могут увидеть справочную информацию в виде всплывающих окон (или в отдельном окне браузера, или динамических HTML-окон поверх содержимого страницы) или ниже иконки или ссылки «Что это такое?» (рис. 14.3). Ввиду того, что справочная информация детализирована и может занимать значительную часть экрана, важно предусмотреть возможность для пользователей ее убрать (например, нажав на ссылку «Закрыть» или щелкнув мышью по кнопке).
(а)
(б)
Рис. 14.3. В онлайн-сервисе Apple Store при конфигурации Mac после нажатия на ссылку Learn more (Подробнее) (а) появляется подробная информация о соответствующем варианте, которая находится ниже ссылки (б). Пользователи могут нажать на ссылку Learn more (Подробнее) снова, чтобы скрыть ее
Встроенные подсказки
В отличие от вплывающих подсказок и справочной информации типа «Что это такое?», встроенные подсказки остаются видимыми, пока пользователи взаимодействуют с элементом или разделом формы. Такие подсказки могут быть либо динамическими, либо статическими. Статические подсказки всегда остаются видимыми и предоставляют необходимые инструкции (например, информацию о формате или синтаксисе вводимых данных) для всех элементов формы или выбранного набора элементов формы (рис. 14.4). С другой стороны, динамические подсказки появляются только тогда, когда пользователи активизируют конкретный элемент формы, а как только пользователи снимут активизацию элемента, они становятся невидимыми (рис. 14.5). Для длинных форм или когда информация подсказки может уместиться в нескольких предложениях, динамические подсказки полезны, потому что они не загромождают страницу инструкциями.
Рис. 14.4. На сайте NextTag в регистрационной форме используются статические подсказки
(а)
(б)
(в)
Рис. 14.5. На сайте Digg используются динамические подсказки в регистрационной форме. Подсказки скрыты (а), пока пользователи не активизируют элемент формы (б) (в данном случае, Choose a Username (Выберите имя пользователя)). Когда пользователи снимают активизацию элемента формы или активизируют другой элемент, подсказка пропадает (в)
Используйте справку по приложению в зависимости от контекста
Когда справка по приложению доступна пользователям, она может быть также использована как контекстная подсказка, которая связывает страниц в приложении с соответствующим разделом в справке по приложению, основываясь на месте нахождения в приложении пользователей (см. шаблон APPLICATION HELP далее в этой главе). Этот способ является эффективным для расширения функций контекстной подсказки и для предложения пользователям помощи лучшей, чем простое перенаправление их на главную страницу справки (рис. 14.6).
Рис. 14.6. Программа QuickBooks Online включает в себя справку по приложению и в качестве контекстной подсказки тоже. В зависимости от того, в каком месте приложения находятся пользователи, щелчок по ссылке Help (Справка) отображает соответствующий раздел справки по приложению в отдельном окне
//-- Связанные шаблоны проектирования --// Варианты контекстной подсказки (CONTEXTUAL HELP), такие как всплывающие или встроенные подсказки, обычно используются с формами. Поэтому правила проектирования, перечисленные для подсказок при вводе данных (INPUT HINTS/PROMPTS) (см. главу 2), должны приниматься во внимание при представлении контекстной подсказки.
FREQUENTLY ASKED QUESTIONS (ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ) //-- Проблема --// Многие пользователи, скорее всего, имеют одинаковые или схожие вопросы при использовании веб-приложения. Вопросы могут относиться к тому, как запустить приложение, или касаться информации о конкретных разделах приложения. Попытка отвечать на такие вопросы по мере их поступления, используя выделенную линию для поддержки потребителей или электронную почту, не только потребует много времени и средств, но и неэффективна и бесполезна для пользователей, так как им придется ожидать получение ответа на свои вопросы перед использованием приложения.
//-- Решение --// Создайте страницу для ответа на часто задаваемые вопросы пользователей (FAQ, Frequently Asked Questions). Важно, чтобы вопросы, перечисленные в данном разделе, были действительно «часто» задаваемыми вопросами и упорядочены таким образом, чтобы ответы на общие вопросы были впереди ответов на углубленные вопросы (рис. 14.7).
Рис. 14.7. Часто задаваемые вопросы на сайте Digg. Щелчок мышью по вопросу расширяет область ниже, открывая ответ
//-- Зачем --// Страница часто задаваемых вопросов – это то место, которое пользователи, скорее всего, посетят перед тем, как обратиться к справке прикладного уровня, чтобы узнать, могут ли быть получены ответы на их вопросы; многие пользователи предполагают, что их вопросы распространенные и, скорее всего, были заданы другими. К тому же, по сравнению с другими формами справки, часто задаваемые вопросы содержат в себе вопросы типа «Как мне…?». Пользователи могут быстрее соотносить их со своими задачами и быстрее сводить свой выбор до нескольких подходящих вопросов или обнаружить, что ответа на их вопрос нет, и рассмотреть другие виды справки. Компаниям это также выгодно, потому что они могут уменьшить количество звонков в службу поддержки потребителей (Jarrett, 2007).
//-- Как --// Существует несколько вариантов для представления часто задаваемых вопросов (рис. 14.8). Наиболее распространенный подход – это список вопросов и связывание их с соответствующими ответами. Когда пользователи щелкают мышью по вопросу, они перемещаются на ту же страницу с ответом (со ссылкой «Наверх страницы») или на отдельную страницу (со ссылкой «Вернуться назад»). Другой вариант – показать ответ непосредственно ниже вопроса расширением области ниже вопроса. Этот подход предпочтительней, поскольку исключает навигацию в другие места в поиске ответов, и пользователям не придется постоянно возвращаться к списку вопросов для изучения других вопросов. Если список относительно короток, то обычно является достаточным простое перечисление вопросов и ответов без необходимости перемещения пользователей к ответам.
(а)
(б)
(в)
Рис. 14.8. Часто задаваемые вопросы могут быть представлены в виде объединения списка вопросов с ответами и ссылкой, указывающей обратно на список (а); раскрывающегося ответа на месте, когда пользователи щелкают мышью по вопросу (б); или перечисления вопросов и ответов вместе (в)
Разделите на категории длинные списки часто задаваемых вопросов
Если список часто задаваемых вопросов длинный (например, содержит более 30 вопросов), сгруппируйте их на основе категорий распространенных задач, разделов веб-приложений или используйте оба этих варианта. Разделение на категории набора вопросов позволяет пользователям быстро сфокусироваться на одной или более категориях интересов и быстро получить ответы на свои вопросы (рис. 14.9).
Рис. 14.9. Сервис Flickr объединил вопросы в такие категории, как General Flickr Questions (Общие вопросы по Flickr), Free Accounts (Бесплатные учетные записи), Upgrading and Gifts (Модернизация и подарки) и т. д.
//-- Связанные шаблоны проектирования --// Часто задаваемые вопросы должны быть доступны со всех страниц приложения, где пользователи могут обратиться за помощью, чтобы сделать их контекстными (CONTEXTUAL HELP). Кроме того, ссылка на часто задаваемые вопросы должна предоставляться из справки по приложению (APPLICATION HELP) также, как и со страниц помощи сообщества (HELP COMMUNITY). Пользователям должна предлагаться функция просмотра часто задаваемых вопросов перед изучением более подробной справки прикладного уровня или перед отправкой в сообщество пользователей вопросов, на которые уже были даны ответы.
APPLICATION HELP (СПРАВКА ПО ПРИЛОЖЕНИЮ) //-- Проблема --// Хотя на многие вопросы могут быть получены ответы в контексте задач пользователей посредством контекстной подсказки и часто задаваемых вопросов, существуют задачи, требующие посещения нескольких страниц в приложении. Попытка разместить ответы на все вопросы, особенно на взаимосвязанные вопросы, на одной странице может привести к визуальному засорению страницы и отпугнуть пользователей.
//-- Решение --// Обеспечьте справку прикладного уровня подробными инструкциями по доступу и использованию функциональности приложения. Кроме того, сделайте справку прикладного уровня доступной со всех страниц веб-приложения; иконка или ссылка на справку обычно размещена в правом верхнем углу страницы как часть основной или служебной навигации (рис. 14.10).
Рис. 14.10. Поисковая система Yahoo! предоставляет справку прикладного уровня и делает ее доступной со всех страниц, поместив ссылку Help (Справка) в правом верхнем углу
//-- Зачем --// Когда пользователи не могут выполнить задачи, они обычно обращаются за помощью. Легкодоступная справка может служить гарантией для пользователей, что они могут обращаться за помощью, когда понадобится. Связывание отдельных страниц в приложении с соответствующими разделами справки прикладного уровня может также служить контекстной справкой, делая справку еще более полезной.
//-- Как --// Предоставьте пользователям доступ к справке со всех страниц вебприложения. Поместите ссылку на справку на постоянное место, обычно она расположена в правой верхней части страницы как часть основной или служебной навигации приложения. Это размещение могло быть навеяно настольными приложениями, где пункт меню «Справка» обычно является последним в строке меню (рис. 14.11).
Рис. 14.11. Подобно многим настольным приложениям программа Microsoft Outlook размещает пункт меню Help (Справка) последним
Разделите на категории содержимое помощи
Отнеситесь к справке как к веб-приложению и разделите ее на категории на основе пользовательских задач или высокоуровневых разделов основного приложения, чтобы убедиться, что пользователи смогут быстро найти интересующие их разделы (рис. 14.12).
Рис. 14.12. В почтовой службе Gmail справка разбита по нескольким категориям: Your Account (Ваш аккаунт), Your Messages (Ваши письма), Your Contacts (Ваши контакты) и т. д. Более того, где необходимо, предлагаются подкатегории для облегчения нахождения подходящих разделов справки
Предоставьте функцию поиска
В приложениях с большим количеством разделов справки предоставьте возможность поиска, с тем чтобы пользователям не пришлось перебирать различные категории справки для нахождения подходящих справочных разделов (рис. 14.13).
Рис. 14.13. Служба Snapfish позволяет пользователям осуществлять поиск справки как по категориям (Search help by category), так и по ключевым словам (Enter keywords)
Выделите общие вопросы
Продумайте заранее наиболее общие или популярные вопросы для вебприложения и выделите их на главной странице справки (рис. 14.14).
Рис. 14.14. В справочном центре (Help center) онлайн-редактора Google Docs содержимое справки разделено на категории и выделены пять самых распространенных вопросов
Регулярно контролируйте их при помощи диаграмм анализа перемещения по страницам справки и улучшайте по мере необходимости.
Попросите пользователей оценить содержимое справки
Предоставьте пользователям возможность оценить информацию справки с точки зрения полезности ответов на их вопросы и эффективности помощи в выполнении задач. Наличие системы оценки позволяет авторам справки определить возможные проблемы и улучшить содержимое справки, чтобы сделать ее еще полезней (рис. 14.15) (см. шаблон RATINGS в главе 9).
Рис. 14.15. Платежная система PayPal располагает очень простым способом определения полезности содержимого их справки. По каждой проблеме они задают вопрос Was this article helpful? (Вы получили ответ на свой вопрос?), на который пользователи могут ответить Yes (Да) или No (Нет)
Предоставьте пользователям возможность связываться со службой поддержки потребителей
Если возможно, предложите пользователям телефонный номер службы поддержки потребителей и/или ссылку для связи со службой поддержки для того, чтобы они могли получить ответы на свои вопросы (рис. 14.16).
(а)
(б)
Рис. 14.16. Программа Dell внизу справочной информации предоставляет пользователям ссылку на страницу Contact Us (Контакты) (а), на которой предлагается несколько вариантов: интерактивный чат, связь по электронной почте и звонок в техподдержку (б)
//-- Связанные шаблоны проектирования --// Несмотря на свою полноту, справка по приложению (APPLICATION HELP) может не ответить на все вопросы пользователей. Поэтому предусмотрите ее дополнение, используя сообщества (HELP COMMUNITY), где пользователи могут задавать свои вопросы и получать на них ответы персонала службы поддержки пользователей или других пользователей приложения. Кроме того, предусмотрите интерактивный чат (CLICK-TO-CHAT) для того, чтобы пользователи могли получать ответы на свои вопросы быстро и непосредственно от квалифицированного персонала службы поддержки потребителей.
GUIDED TOURS (ПОШАГОВЫЕ РУКОВОДСТВА) //-- Проблема --// Приступая к работе с новым приложением или к изучению неизвестных функций имеющегося приложения, пользователи могут захотеть узнать, как достигнуть определенных целей и/или выполнения определенных задач.
//-- Решение --// Предложите пользователям обучающие руководства «Как…», демо-ролики или пошаговые объяснения того, как могут быть выполнены определенные задачи или как работают определенные функции (рис. 14.17).
Рис. 14.17. Коммуникационная программа-клиент Microsoft Office Communicator демонстрирует, как добавлять режим связи, предоставляя обучающие руководства для каждого режима связи
//-- Зачем --// Как бы ни было легко работать с приложением, по крайней мере, несколько пользователей испытают трудности в понимании и использовании определенных функций. Такое может произойти из-за ограниченности их знаний в конкретной области или склонности к определенным способам взаимодействия. Предоставление обучающих руководств с объяснениями может помочь вселить в новых пользователей уверенность в выполнении определенных задач, а также в том, к чему они могут вернуться и просмотреть в случае необходимости. Даже те пользователи, которые знакомы с конкретной областью и с приложением, могут захотеть освежить знания при выполнении не так часто решаемых задач или задач, выполнение которых сложно или невозможно отменить. Предоставление обучающих руководств, руководств типа «Как…» или демо-роликов может помочь пользователям лучше понять функции приложения и особенности взаимодействия с ним и делает для пользователей возможным полное использование набора функций приложения.
//-- Как --// Главной целью обучающих руководств является объяснение пользователям, как работает приложение или определенная функция. Это объяснение может быть выполнено на одном экране (рис. 14.18) или может потребовать демонстрации обучающего руководства для того, чтобы пользователи выполнили каждый шаг в специальной последовательности (рис. 14.19). Они могут быть также реализованы в виде демо-роликов (рис. 14.20). Руководства типа «Как.» могут быть реализованы в режиме самообучения, демонстрационном режиме или быть комбинацией обоих режимов.
Рис. 14.18. Сервис Answers поисковой системы Yahoo! показывает, как это работает, только на одном экране
Рис. 14.19. Руководство по быстрому запуску онлайн-конференции Adobe ConnectNow руководит пользователями на каждом шаге решения задач, таких как Sharing Your Screen (Доступ к удаленному рабочему столу), Broadcasting Video (Видеовещание) и т. д.
Рис. 14.20. Программа Basecamp использует видео для представления пользователям функций, которых они не изучали. Для того чтобы сделать справку контекстной, видео предлагается в контексте функций, так что пользователям не приходится искать ответы в «Справке»
//-- Связанные шаблоны проектирования --// Обучающие руководства полезны, когда пользователи начинают с самого начала (BLANK SLATE) (см. главу 4).
HELP WIZARDS (МАСТЕРА ПОМОЩИ) //-- Проблема --// Пользователям, которые не знакомы с проблемной областью, обычно тяжело точно сформулировать свою проблему, или они не знают подходящих слов запуска поиска соответствующей справочной информации в справке по приложению (APPLICATION HELP) или помощи сообщества (HELP COMMUNITY). Кроме того, при диагностировании проблемы, у которой может быть множество причин и, таким образом, множество решений, они могут не знать лучшего способа выбора подходящего решения.
//-- Решение --// Задайте пользователям ряд вопросов для нахождения решения (или набора решений) (рис. 14.21). Это не сильно отличается от рекомендательных систем, которые предлагают решения, основываясь на ряде вопросов, предназначенных для выявления целей или требований пользователей.
(а)
(б)
(в)
Рис. 14.21. Почтовая служба Gmail помогает пользователям выявить и устранить их проблемы, руководя ими шаг за шагом. Например, если пользователи не могут получить доступ к своим учетным записям, их просят уточнить причину (а). Когда пользователи выбирают причину, им предлагаются шаги, приводящие к решению проблемы (б). В зависимости от результата пользователям могут быть предложены дополнительные шаги (в)
//-- Зачем --// Подходы, основанные на руководствах, обычно лучшие, если требуется сузить круг поиска причин и быстро предоставить решения пользователям при поиске и устранении неисправностей. Кроме того, поскольку пользователям сложно описывать свои проблемы из-за недостатка опыта в определенной области знаний, они, вероятнее всего, смогут ответить на целевые вопросы и сократят варианты своих решений.
//-- Как --// Как мастер, руководите пользователями шаг за шагом, прося их установить проблему (или общую область, в которой им необходима помощь) для помощи в сокращении списка имеющихся вариантов. Давайте советы на протяжении всего процесса и спрашивайте пользователей, решил ли совет проблему; если нет, то предложите дополнительные советы как часть руководства. Руководство может быть спроектировано как обычный мастер со ссылками «Далее» и «Назад» (рис. 14.22) или вместе со всем охватываемым объемом вопросов на одном экране (см. рис. 14.21).
(а)
(б)
Рис. 14.22. Инструмент File and Printer Sharing Troubleshooter компании Microsoft помогает пользователям шаг за шагом (а) и предлагает советы на протяжении всего процесса сужения области решений (б)
Рис. 14.23. Форумы Dell, посвященные ноутбукам
//-- Связанные шаблоны проектирования --// Мастера помощи (HELP WIZARD) могут придерживаться опыта проектирования навигационных мастеров (WIZARD) (см. главу 5). Кроме того, посмотрите опыт проектирования рейтингов (RATINGS) для сбора отзывов пользователей о полезности мастеров помощи (см. главу 9).
HELP COMMUNITY (ПОМОЩЬ СООБЩЕСТВА) //-- Проблема --// Даже если объединить все обсуждаемые до этого подходы к реализации справки, практически невозможно предусмотреть все сценарии использования и вопросы пользователей. В особенности это касается квалифицированных пользователей, которые часто расширяют границы приложения и испытывают его пределы.
//-- Решение --// Предоставьте пользователям место для обсуждения проблемы, например, дискуссионные форумы или блоги для облегчения обмена проблемами, решениями и опытом (см. рис. 14.23).
//-- Зачем --// Предоставление пользователям места открытого обсуждения и обмена проблемами, решениями и опытом облегчает пользователям получать ответы на свои вопросы и решать свои проблемы. Часто на таких форумах самыми активными являются квалифицированные пользователи, которые имели дело с необычными проблемами и могут предложить новаторские решения и приемы, которые могут предоставить разработчикам приложения полезные догадки. Такая информация затем может быть использована для улучшения справочной информации, а также и функциональности, и полезности приложения. Кроме того, предоставление пользователям способа обмена и хранения проблем и решений облегчает им поиск ответов в любое время, и им не придется для решения своих проблем ожидать человека из службы поддержки потребителей.
//-- Как --// Сделайте так, чтобы пользователи легко обменивались своим опытом как на форумах (т. е. дискуссионных группах), так и в блогах, и дайте им возможность найти ответы на свои вопросы. Такой подход самообслуживания становится распространенным как для больших корпораций, так и для недавно созданных фирм (рис. 14.24 и 14.25).
Рис. 14.24. Социальная сеть Orkut использует технологию интернет-сообществ Google Groups, чтобы позволить пользователям обмениваться опытом
Рис. 14.25. Сообщество Rally Software’s Rally Community позволяет пользователям и сотрудникам компании Rally (включая поддержку потребителей) участвовать в дискуссиях и отвечать на вопросы пользователей. Компания Rally просит делать запросы функций и делает планы по разработке программного обеспечения доступными для сообщества пользователей
Объедините помощь сообщества с приложением
Вместо того чтобы рассматривать помощь сообщества как самостоятельное приложение, как это обычно бывает, объедините его с приложением наподобие контекстной подсказки. Это сделает возможным для пользователей доступ к подходящим дискуссиям и позволит задать или ответить на вопрос (рис. 14.26).
Рис. 14.26. Программа TurboTax в Интернете интегрировала помощь Live Community (Живого сообщества) как часть приложения. Это позволяет пользователям получить доступ к подходящим дискуссиям и задавать вопросы. Такая интеграция также помогает пользователям думать о помощи как о части приложения, а не самостоятельном модуле
Наблюдайте за разделом помощи сообщества для контроля спама, злословия и ошибочной информации
Помощь сообщества – палка о двух концах. С одной стороны, она предоставляет канал самообслуживания и облегчает для пользователей приложения получение требуемой помощи; однажды установленная, она все время доступна пользователям, предлагая решения проблем и создавая ощущения доверия среди потребителей. С другой стороны, дискуссии сообществ должны быть наблюдаемы для контроля спама, злословия и ошибочной информации (37signals, 2004).
//-- Связанные шаблоны проектирования --// Сообщества помощи обычно реализуются в виде дискуссионных форумов. Поэтому установившаяся практика, применяемая для групп/ сообществ по интересам (GROUPS/SPECIAL–INTEREST COMMUNITIES), подходит и для их разработки (см. главу 9).
CLICK-TO-CHAT (ИНТЕРАКТИВНЫЙ ЧАТ) //-- Проблема --// Когда пользователи спешат и/или работают над крайне срочными и важными задачами, они могут захотеть немедленной помощи. Даже когда необходимая справочная информация найдена в доступной справке, пользователи, возможно, не имеют времени или склонности к изучению справочной информации и могут предпочесть поговорить со знающим человеком, для того чтобы быстро получить ответы на свои вопросы.
//-- Решение --// Предложите пользователям вариант интерактивной переписки (чата) с человеком из службы работы с покупателями (или человеком из службы содействия сбыту или технической поддержки), так они могут быстро получить ответы на свои вопросы (рис. 14.27).
Рис. 14.27. Компания Qwest предлагает пользователям функцию интерактивной переписки, а не вызова агента по телефону, чтобы облегчить пользователям получение ответов на свои вопросы
//-- Зачем --// Когда пользователи пытаются изучать функции за неимением нужной информации или сталкиваясь со сложной задачей, они часто предпочитают получать помощь от кого-либо с опытом. Даже когда справочная информация имеется в наличии и легко доступна, она, возможно, не сможет ответить на все вопросы пользователей, и они могут не знать, где найти нужную информацию. В таких случаях предложение пользователям функции интерактивной переписки со знающим человеком из службы поддержки потребителей (т. е. агентом) может оказаться очень полезным. Кроме того, в приложениях электронной коммерции разговор со знающим человеком может помочь пользователям в решении о покупке. Исследование, проводимое компанией Forrester Research, обнаружило, что почти половина всех пользователей, пробовавших подобную функцию интерактивной переписки, оценили возможность немедленной переписки с живым человеком (Sage, 2008).
//-- Как --// Перед тем как пользователи могут начать интерактивную переписку, они должны знать, что она есть. Поэтому сделайте функцию интерактивной переписки доступной со страниц, где пользователи вероятнее всего будут ее ожидать. Для многих веб-приложений функция «живой» переписки доступна как часть раздела поддержки потребителей или справки или доступна на всех страницах как часть служебной навигации (рис. 14.28).
Рис. 14.28. Интернет-аукцион eBay предлагает ссылку Live help (Живая помощь) в правой верхней части страницы
Хотя почти для большинства приложений интерактивная переписка инициирована пользователями, многие приложения электронной коммерции предлагают пользователям функцию упреждающей переписки на основе их поведения, как например, частое посещение одной и той же страницы продукта или трата чрезмерно большого количества времени на странице. Тогда пользователям подсказывают начать переписку с торговым агентом для получения помощи в поиске ответов на свои вопросы.
Дайте пользователям знать, является ли агент автоматическим
Для пользователей важно знать, переписываются ли они с живым агентом или автоматическим. Если автоматический агент является функцией по умолчанию, предложите пользователям легкий способ переписки с живым агентом (рис. 14.29).
Рис. 14.29. Компания Qwest по умолчанию предлагает пользователям функцию интерактивной переписки с автоматическим агентом. Они также предлагают функцию разговора с живым агентом
Сообщите о доступности и времени ожидания
Ясно укажите пользователям, когда функция «живой» интерактивной переписки недоступна. Кроме того, дайте пользователям знать, какими другими функциями справки они могут воспользоваться (рис. 14.30). Также если функция интерактивной переписки предлагается для агентов различных видов, например, как торговый агент или агент техподдержки, укажите доступность каждого из них (рис. 14.31).
Рис. 14.30. Браузер Firefox ясно показывает, когда функция интерактивной переписки не доступна пользователям. Он также предлагает пользователям ссылку для изучения других функций справки
Рис. 14.31. Онлайн-чат Provide Support ясно указывает, что и служба работы с покупателями, и техническая поддержка работают в режиме онлайн и готовы к переписке
Как только пользователь инициировал сеанс интерактивной переписки, покажите время ожидания, так пользователи могут решить, хотят ли они продолжить сеанс интерактивнои переписки или попытаться сделать это позднее (рис. 14.32).
Рис. 14.32. Чат поддержки LivePerson дает пользователям знать общее время ожидания в минутах и секундах
Задайте пользователям вводный или квалификационный вопрос
Перед началом сеанса переписки попросите пользователей предоставить элементарную информацию, например, как их имя или вопрос. Эта информация может быть использована для направления пользователей к наиболее квалифицированному человеку поддержки потребителей. Кроме того, когда функция интерактивной переписки доступна только для платящих подписчиков или покупателей, попросите пользователей предоставить соответствующую идентификационную информацию, например, как их номер счета (рис. 14.33).
Рис. 14.33. Для инициации интерактивной переписки со службой технической поддержки Dell запрашивает ввод идентификационного номера изделия
Кроме того, для потенциально долгих сеансов интерактивной переписки (например, для технической поддержки), где может быть необходимым для агента завершить (или облегчить) восстановление подключения после прерывания сеанса, попросите также пользователей предоставить их электронные адреса и/или телефонные номера; электронный адрес полезен, если пользователям отсылается копия сеанса интерактивной переписки.
Позвольте пользователям сохранить копию разговора интерактивной переписки
Предоставьте пользователям функцию печати или получения по электронной почте копии разговора интерактивной переписки (рис. 14.34). Копия разговора интерактивной переписки может быть особенно полезна, если агент поддержки описал шаги, которые должны выполнить пользователи для устранения проблемы, или предоставил ссылки на справку, к которой пользователи планировали обратиться позднее. Если пользователей не просили предоставить их электронные адреса в начале сеанса интерактивной переписки, подскажите им ввести их адреса электронной почты или предложите им функцию получения копий по электронной почте как часть интерфейса интерактивной переписки.
Рис. 14.34. Чат поддержки Live Support позволяет пользователям получать по электронной почте, печатать или сохранять историю сеанса интерактивной переписки
Рассмотрите другие варианты помимо интерактивной переписки
Пользователи таких онлайн-инструментов, как интерактивная переписка, не ожидают или не любят ждать более нескольких минут. В случае если ожидание может быть слишком длинным или если «живая» интерактивная переписка недоступна, продумайте предоставление пользователям других вариантов, таких как электронная почта, номер телефона или функция звонка с сайта (Click-to-call) (рис. 14.35). Функция звонка с сайта позволяет пользователям попросить агента службы работы с покупателями позвонить в течение определенного периода времени.
Рис. 14.35. Sun предлагает пользователям несколько вариантов вступления в контакт с человеком из службы поддержки потребителей Sun помимо онлайн-чата (Chat Now). Пользователи могут попросить человека из службы поддержки потребителей позвонить им (Call Me Now), они могут попросить выслать ответ по электронной почте (Email Me) или позвонить, используя бесплатный телефонный номер (Call Sun Toll Free)
//-- Связанные шаблоны проектирования --// Информация интерактивной переписки (CLICK-TO-CHAT) крайне полезна как исходный материал для всех видов справки, доступной пользователям. Знание вопросов пользователей может быть использовано для улучшения контекстной подсказки (CONTEXTUAL HELP), часто задаваемых вопросов (FREQUENTLY ASKED QUESTIONS) и справки по приложению (APPLICATION HELP).
Справочная литература • 37signals. Defensive Design for the Web: How to Improve Error Messages, Help, Forms, and Other Crisis Points. Berkeley: New Riders, 2004.
• 37signals. Getting Real: The Smarter, Faster, Easier Way to Build a Successful Web Application. Доступно на веб-сайте gettingreal.37signals.com, 2006.
• Accessites.org. The Art of Accessibility. Доступно на веб-сайте www.accessites.org, 2008.
• Adams, C. Fancy Form Design Using CSS. Доступно на веб-сайте www.sitepoint.com/article/fancy-form-design-css, 2008.
• Adkisson, H. Identifying De-factor Standards for E-commerce Web Sites. M.S. Thesis, University of Washington, Seattle, 2002.
• Aery, S. C. Breadcrumb Navigation Deployment in Retail Web Sites, Master’s Paper for the M.S. in I.S. Degree, 2007.
• AJAX and Accessibility. Доступно на веб-сайте www.standards-schmandards.com/index.php?2005/03/01/16-ajax-and-accessibility .
• Alexander, C. The Timeless Way of Building. New York: Oxford University Press, 1979.
• Alexander, C., S. Ishikawa, M. Silverstein, M. Jacobson, I. Fiksdahl-King, and S. Angel. A Pattern Language. New York: Oxford University Press, 1977.
• Anand, S. S., and B. Mobasher (eds.). Intelligent Techniques in Web Personalization. Из сборника статей Lecture Notes in Artificial Intelligence, № 3169, с. 1–37. Berlin: Springer-Verlag, 2005.
• Andrew, R., and D. Shafer. HTML Utopia: Designing Without Tables Using CSS, 2nd Ed. Collingwood VIC, Australia: Sitepoint, 2006.
• Andrew, R., and K. Yank. Everything You Know About CSS Is Wrong. Collingwood VIC, Australia: Sitepoint, 2008.
• Apple Developer Connection. Internationalization Reference Library. Доступно на веб-сайте developer.apple.com/referencelibrary/ Internationalization/index.html, 2008.
• Apple OS X. Human Interface Design Guidelines. Доступно на веб-сайте developer.apple.com/documentation/UserExperience/ Conceptual/AppleHIGuidelines/OSXHIGuidelines.pdf 2007.
• Aykin, N. (ed.) Usability and Internationalization of Information Technology. Human Factors/Ergonomics Series. Marwah, NJ: Erlbaum, 2004.
• Aykin, N. Designing Global Web Sites: Globalization and Localization Issues. Документ был представлен на 6-ой Ежегодной конференции по человеческим факторам и Веб, Остин, Техас, 20–21 июня 2000.
• Baekdal, T. Actual Browser Sizes. A Report. Доступно на веб-сайте www.baekdal.com/reports/Actual-Browser-Sizes/, 2006.
• Baird, J. The Principles of Beautiful Web Design. Collingwood VIC, Australia: SitePoint, 2007.
• Ballard, B., and D. Malouf. Patterns Revisited. Записи с Connecting 07, Сан-Франциско, 19 октября 2007. Доступно на веб-сайте www.slideshare.net/dmalouf/patterns-revisited.
• Baxley, B. Making the Web Work: Designing Effective Web Applications. Berkeley, CA: New Riders, 2003.
• Bernard, M. L. Developing Schemas for the Location of Common Web Objects, Записи с 45-ой ежегодной встречи членов Общества человеческих факторов и эргономики, с. 1161–1165, 2001.
• Bernard, M., and C. Hamblin. Cascading versus Indexed Menu Design. Usability News 5(1). Доступно на веб-сайте www.surl.org/usabilitynews/51/, 2003.
• Bernard, M., and L. Larsen. What Is the Best Layout for Multiple-Column Web Pages? Usability News 3(2). Доступно на веб-сайте www.surl.org/usabilitynews/32/layout.asp, 2001.
• Bernard, M., R. Baker, and M. Fernandez. Paging vs. Scrolling: Looking for the Best Way to Present Search Results. Usability News 4(1). Доступно на веб-сайте surl.org/usabilitynews/41/paging.asp , 2002.
• Blake, R. Topix.net Forums on Fire: The Ni-chan Paradox. Доступно на веб-сайте blog.topix.com/archives/000106.html, 31 марта 2006.
• Bluestein, J., I. Ahmed, and K. Instone. An Evaluation of Look-Ahead Breadcrumbs for the WWW, Записи с HT’05, Зальцбург, Австрия, 6-9 сентября 2005.
• Borchers, J. A Pattern Approach to Interaction Design. New York: John Wiley&Sons, 2001.
• Boulton, M. Five Simple Steps to Designing Grid Systems.
• Boulton, M. Why Use a Grid? 2006б.
• Brath, R., and M. Peters. Dashboard Design: Why Design Is Important. DM Direct. Доступно на веб-сайте www.dmreview.com/dmdirect/20041015/1011285-1.html, 2004.
• Brewer, J. (Ed.). How People with Disabilities Use the Web. Working-Group Internal Draft. Запрошено 5 мая 2005. Доступно на веб-сайте www.sitepoint.com/article/fancy-form-design-css.
• Calbucci, M. A 10 % Improvement on Conversion with One Change.
• Cannon, A. Importance of HTML Headings for Accessibility. YouTube. Доступно на веб-сайте http://www.youtube.com/,watch?v=AmUPhEVWu_E 2008.
• Card, S. K., J. D. Mackinlay, and B. Shneiderman (Eds). Readings in Information Visualization: Using Vision to Think. San Francisco: Morgan Kaufmann, 1999.
• Cederholm, D. Bulletproof Web Design: Improving Flexibility and Protecting against Worst-Case Scenarios with XHTML and CSS, 2nd Edition. Berkeley, CA: New Riders, 2007.
• Champeon, S. Progressive Enhancement: Pacing the Way for Future Web Design. Доступно на веб-сайте www.hesketh.com/publications/progressive_enhancement_paving_way_for_future.html, 2003a.
• Champeon, S. Progressive Enhancement and the Future of Web Design. Доступно на веб-сайте www.hesketh.com/publications/progressive_enhancement_and_the_future_of_web_design.html, 2003б.
• Chen, E. Design Patterns: A Bridge Between Usability and Design (Panel), Usability Professionals’ Association Conference, Scottsdale, AZ, 2003.
• Chi, E. H. Scent of the Web. In Human Factors and Web Development, J. Ratner (Ed.), стр. 265–285. Mahwah, NJ: Erlbaum, 2003.
• Chi, E. H., P. Pirolli, and J. Pitkow. The Scent of a Site: A System for Analyzing and Predicting Information Scent, Usage, and Usability of a Web Site. Записи с конференции Человеческие факторы в компьютерных системах, CHI’00, Гаага, Нидерланды, с. 400–407, 2000.
• Childers, T. L., and M. J. Houston. “Conditions for a Picture-Superiority Effect on Consumer Memory.” The Journal of Consumer Research 11(2): 643–654, 1984.
• Christie, R. Top 10 CSS Table Designs. Доступно на веб-сайте www.smashingmagazine.com/2008/08/13/top-10-css-table-designs/, 2008.
• Clarke, A. Transcending CSS: The Fine Art of Web Design. Berkeley, CA: New Riders, 2007.
• Colter, A., K. Summers, and C. Smith. Exploring User Mental Models of Breadcrumbs in Web Navigation. Доступно на веб-сайте http://angelacolter.com.s39991.gridserver.com/breadcrumbs/, 2002.
• Crumlish, C. The Power of Many: How the Living Web Is Transforming Politics, Business, and Everyday Life. New York: John Wiley&Sons, 2004.
• Crumlish, C. Designing with Patterns in the Real World. Lessons from Yahoo! and Comcast. Записи с саммита по информационным архитектурам, Майами, 14 апреля 2008.
• Dearden, A., and J. Finlay. Pattern Languages in HCI: A Critical Review. Human-ComputerInteraction 21(1): 49-102, 2006.
• del Galdo, E. M., and J. J. Nilesen. International User Interfaces. New York: John Wiley and Sons, 1996.
• Denning, P. J., and P. Yaholkovsky. Getting to “We.” Solidarity, Not Software, Generates Collaboration. Communications of the ACM 51(4): 19–24, 2008.
• Dennis, T., and K. Snow. Comparative Analysis of Web Design Patterns and Pattern Collections. Центр инженерных проблем документов, Технический рапорт (CDE2006-TR04), с. 16, Калифорнийский университет, Беркли, 30 апреля 2006.
• Denton, W. How to Make a Faceted Classification and Put It on the Web. Доступно на веб-сайте www.miskatonic.org/library/facet-web-howto.html, 2003.
• Dixon, H. E-Mail Marketing—CAN-SPAM Act—What Does the Law Require? 2004.
• Dryer, D. C. Wizards, Guides, and Beyond: Rational and Empirical Methods for Selecting Optimal Intelligent User Interface Agents, Proceedings Intelligent User Interfaces (IUI) 9, с. 265–268, Orlando, 1997.
• Edelman Trust Barometer. The Ninth Global Opinion Leaders Study. Доступно на веб-сайте www.edelman.com/trust/2008/TrustBarometer08_FINAL.pdf, 2008.
• Enders, L. (2008). Zebra Striping: More Data for the Case. Доступно на веб-сайте www.alistapart.com/articles/zebrastripingmoredataforthecase, 9 сентября 2008.
• Erickson, T. Lingua Francas for Design: Sacred Places and Pattern Languages. Доступно на веб-сайте www.visi.com/~snowfall/LinguaFranca_DIS2000.html, 2000.
• Faraday, P., and A. Sutcliffe. Designing effective multimedia presentations. Записи с ACM CHI’97: 272–279, 1997.
• Few, S. Information Dashboard Design: The Effective Visual Communication of Data. Sebastopol, CA: O’Reilly, 2006.
• Fincher, S. Perspectives on HCI Patterns: Concepts and Tools (introducing PLML). Interfaces, 56: 26–28. 2003.
• Fleming, J. Web Navigation: Designing the User Experience. Sebastopol, CA: O’Reilly, 1998.
• Flickr Design Patterns Group. Доступно на веб-сайте www.flickr, 2008..com/groups/designpatterns/
• Fluid Open Source Design Pattern Library. Доступно на веб-сайте www.uidesignpatterns.org, 2008.
• Fogg, B. J., T. Kameda, J. Boyd, J. Marshall, R. Sethi, M. Sockol, and T. Trowbridge. Stanford-Makovsky Web Credibility Study 2002: Investigating What Makes Web Sites Credible Today. Research Report, Stanford PersuasiveTechnology Lab and Makovsky and Company, Stanford University. Доступно на веб-сайте http://credibility.stanford.edu/guidelines/index.html, 2002.
• Fulciniti, A. Progressive Layout. Доступно на веб-сайте webdesign.html.it/articoli/leggi/545/progressive-layout/1/, запрошено 18 мая 2005.
• Galitz, W. O. The Essential Guide to User Interface Design, 2nd Ed. New York: John Wiley&Sons, 2002.
• Garrett, J. J. AJAX: A New Approach to Web Applications. Доступно на веб-сайте www.adaptivepath.com/publications/essays/archives/000385.php, 2005.
• Gauri, D. K., A. Bhatnagar, and R. Rao. Role of Word of Mouth in Online Store Loyalty. Communications of the ACM 51(3): 89–91, 2008.
• Glass, B. Designing Your Reputation System (in 10 Easy Steps), Саммит по информационым архитектурам, Майами. Доступно на веб-сайте http://www.slideshare.net/soldierant/designing-your-reputation-system, 2008.
• Goldberg, D., D. Nichols, B. M. Oki, and D. Terry. Using Collaborative Filtering to Weave an Information Tapestry. Communications of the ACM 35(12): 61–70, 1992.
• Golder, S. A., and B. A. Huberman. Usage Patterns of Collaborative Tagging Systems. Journal of Information Science 32(2): 198–208, 2006.
• Graham, I. A Pattern Language for Web Usability. Boston: Addison-Wesley Professional, 2003.
• Griffiths, R., and L. Pemberton. Don’t Write Guidelines, Write Patterns! Доступно на веб-сайте www.it.bton.ac.uk/staff/lp22/guidelinesdraft.html, 2001.
• Halvey, M., and M. T. Keane. An Assessment of Tag Presentation Techniques, Proceedings WWW’07 poster paper, Банфф, Альберта, Канада, 8-12 мая 2007.
• Hearst, M. A. User Interfaces and Visualization. In Modern Information Retrieval. edited by R. Baeza-Yates and B. Ribeiro-Neto, с. 257–323. New York: Addison-Wesley Longman, 1999.
• Hearst, M. A. Design Recommendations for Hierarchical Faceted Search Interfaces, ACM SIGIR Workshop on Faceted Search, Сиэтл, США, 6-11 августа 2006.
• Henry, S. L. Just Ask: Integrating Accessibility Throughout Design. Доступно на веб-сайте www.Lulu.com, 2007.
• Hoekman, R. Jr. Designing the Moment: Web Interface Design Concepts in Action . Berkeley, CA: New Riders, 2008.
• Holzschag, M. E. Integrated Web Design: The Meaning of Semantics. Доступно на веб-сайте www.peachpit.com/articles/article.aspx?p=369225, 2005.
• Hornbsk, K., B. B. Bederson, and C. Plaisant. Navigation Patterns and Usability of Zoomable User Interfaces with and without an Overview. ACM Transactions on Computer-Human Interaction 9(4): 362–389, 2002.
• Hull, S. S. Influence of Training and Exposure on the Usage of Breadcrumb Navigation. Usability News 6(1), 2004. Доступно на вебсайте www.surl.org/usabilitynews/61/breadcrumb.asp.
• Hurst, S. How to Internationalize Your Website. White Paper, SDL. Доступно на веб-сайте www.sdl.com/en/globalization-knowledge-centre/whitepapers/default.asp, 2007.
• Instone, K. Location, Path and Attribute Breadcrumbs, Poster presentation at ASIST 3rd Annual IA Summit, Baltimore, March 16–17, 2002.
• International, Dr. Developing International Software, 2nd ed. Redmond, WA: Microsoft Press, 2003.
• Internationalization (I18n) Activity: Getting Started. Доступно на веб-сайте www.w3.org/International/getting-started/, 2007.
• Ishida, R. Ishida >> blog. Доступно на веб-сайте www.rishida.net/blog/, 2008.
• ISO 8601. Data Elements and Interchange Formats-Information interchange-Representation of Dates and Times. Доступно на вебсайте www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=26780, 2000.
• ITU-T E.123. Notation for National and International Telephone Numbers, E-mail Addresses and Web Addresses. Series E: Overall Network Operation, Telephone Service, Service Operation and Human Factors. Telecommunication Standardization Sector of ITU. Доступно на веб-сайте www.itu.int/rec/T-REC-E.123/en, 2001.
• Jarrett, C. Caroline’s Corner: How to Write Good FAQs. Доступно по адресу www.usabilitynews.com/news/article3724.asp, 2007.
• Jesper, R.-J. Usability of Pagination Links. Доступно на веб-сайте www.justaddwater.dk/2008/01/03/usability-of-pagination-links/, 2008.
• Jesse, D. CSS-Layouts—Praxislosungen mit YAML (in German). Galileo Press, 2007a.
• Jesse, D. Bulletproof and Flexible Layouts Made Simple. Доступно на веб-сайте www.yaml.de/en/home.html, 2007б.
• Kalbach, J., and T. Bosenick. T. Web Page Layout: A Comparison between Leftand Right-Justified Site Navigation Menus. Journal of Digital Information 4(1). Доступно на веб-сайте journals.tdl.org/ jodi/article/view/jodi-111/93 , 2003.
• Kalbach, J. Designing Web Navigation . Sebastopol, CA: O’Reilly, 2007.
• Katz, M. A., and M. D. Byrne. Effects of Scent and Breadth on Use of Site-Specific Search on e-commerce Web Sites. ACM Transactions on Computer-Human Interaction 10(3): 198–220, 2003.
• Kaushik, A. Five Rules for High-Impact Web Analytics Dashboards. Доступно на веб-сайте www.kaushik.net/avinash/2007/03/five-rules-for-high-impact-web-analytics-dashboards.html, 2007.
• Keith, J. DOM Scripting: Web Design with JavaScript and the Document Object Model. New York: Friends of ED, 2005.
• Keith, J. Bulletproof Ajax. Berkeley, CA: New Riders, 2007.
• Kliehm, M. Accessible Web 2.0 Applications with WAI-ARIA. Запрошено 9 апреля 2007. Доступно на веб-сайте www.alistapart.com/articles/waiaria.
• Koch, N., and G. Rossi. Patterns for Adaptive Web Applications, Proceedings 7th EuroPlop, 2002.
• Koerner, B. I. (2003). What Does a “Thumbs Up” Mean in Iraq? Доступно на веб-сайте slate.msn.com/id/2080812/, 28 марта 2003.
• Kurosu, M., and K. Kashimura. Apparent Usability vs. Inherent Usability: Experimental Analysis on the Determinants of the Apparent Usability. Conference Companion on Human Factors in Computing Systems, с. 292–293, Denver, May 7-11, 1995.
• Laasko, S. User Interface Design Patterns. Доступно на веб-сайте www.cs.helsinki.fi/u/salaakso/patterns/index.html, 2003.
• Leacock, M., E. Malone, and C. Wheeler. Implementing a Pattern Library in the Real World: A Yahoo! Case Study. Доступно на вебсайте www.leacock.com/patterns/leacock_malone_wheeler.pdf, 2005.
• Lida, B., and B. Chaparro, B. Breadcrumb Navigation: Further Investigation of Usage. Usability News 5(2), 2003. Доступно на веб-сайте www.uie.com/brainsparks/2005/09/26/value-of-breadcrumbs/.
• Lidwell, W., K. Holden, and J. Butler. Universal Principles of Design. Gloucester, MA: Rockport Publishers, 2003.
• Linderman, M. Web Interface Design Tip: The Yellow Fade Technique. Доступно на веб-сайте www.37signals.com/svn/archives/000558.php, 2004.
• Lloyd, I. The Ultimate HTML Reference. Collingwood VIC, Australia: Sitepoint, 2008.
• Lynch, J. P., and S. Horton. Web Style Guide: Basic Design Principles for Creating Web Sites. New Haven: Yale University Press, 1999.
• Mackay, W. E. Triggers and Barriers to Customizing Software, CHI ’91 Proceedings, с. 153–160, 1991.
• Mahemoff, M. J., and L. J. Johnston. Pattern Languages for Usability: An Investigation of Alternative Approaches. In J. Tanaka (Ed.), Записи с выставки Asia-Pacific Conference on Human Computer Interaction (APCHI), стр. 25–31, Лос-Аламитос, Калифорния: IEEE Computer Society. Доступно на веб-сайте www.mahemoff.com/paper/candidate/.
• Mahemoff, M. Ajax Design Patterns. Sebastapol, CA: O’Reilly, 2006.
• Malone, E., M. Leacock, and C. Wheeler. Implementing a Pattern Library in the Real World: A Yahoo! Case Study. Boxes and Arrows. Доступно на веб-сайте www.boxesandarrows.com/view/implementing_a_pattern_library_in_the_real_world_a_yahoo_case_study, 29 апреля 2005.
• Markowsky, G. Misconceptions about the Golden Ratio. The College Mathematics Journal 23(1): 2-19, 1992.
• Marlow, C., M. Naaman, b. boyd, and M. Davis. Position Paper, Tagging, Taxonomy, Flickr, Article, ToRead. Доступно на веб-сайте www.semanticmetadata.net/hosted/taggingws-www2006-files/29.pdf, 2006.
• Mayhew, J. D. Principles and Guidelines in Software User Interface Design. Englewood Cliffs, NJ: Prentice-Hall, 1992.
• McIntire, P. Visual Design for the Modern Web. Berkeley, CA: New Riders, 2008.
• Microsoft Development Network (MSDN) Центр разработки Go Global. Доступно на веб-сайте msdn.microsoft.com/ru-ru/goglobal/default.aspx, 2008.
• Morville, P., and L. Rosenfeld. Information Architecture for the World Wide Web , Third Edition. Berkeley, CA: O’Reilly, 2006.
• Mulpuru, S. Which Personalization Tools Work for eCommerce—And Why . Cambridge: Forrester Research, Inc, 27 декабря 2007.
• Nielsen, J. Search and You May Find. Доступно на веб-сайте www.useit.com/alertbox/9707b.html, 15 июля 1997.
• Nielsen, J. Reset and Cancel Buttons, Alertbox. Запрошено 16 апреля 2000 с ресурса www.useit.com/alertbox/20000416.html.
• Nielsen, J. Search: Visible and Simple. Доступно на веб-сайте www.useit.com/alertbox/20010513.html, 13 мая 2001.
• Nielsen, J. Scrolling and Scrollbars. Alertbox. Доступно на веб-сайте www.useit.com/alertbox/20050711.html, запрошено 11 июля 2005.
• Nielsen, J. Breadcrumb Navigation Increasingly Useful. Доступно на веб-сайте www.useit.com/alertbox/breadcrumbs.html, 10 апреля 2007.
• Nielsen, J., and R. Molich. Heuristic Evaluation of User Interfaces. Записи с конференции CHI’90, стр. 249–256, Сиэтл, США, 1–5 апреля 1990.
• Nolan, P. R. Designing Screen Icons: Ranking and Matching Studies. Записи с 33-ей ежегодной встречи членов Общества человеческих факторов, с. 380–384, 1989.
• Paivio, A., T. B. Rogers, and P. C. Smythe. Why Are Pictures Easier to Recall Than Words? Psychonomic Science 11(4): 137–138, 1968.
• Pemberton, L. The Promise of Pattern Languages for Interaction Design, Симпозиум по человеческим факторам, Лугборуг, Великобритания. Доступно на веб-сайте www.it.bton.ac.uk/staff/lp22/HF2000.html, 2000.
• Penzo, M. Label Placement in Forms, UX Matters. Доступно на вебсайте www.uxmatters.com/MT/archives/000107.php, 2006.
• Peterson, H., and D. Dugas. The relative importance of contrast and motion in visual perception. Human Factors 14: 207–216, 1972.
• Pirolli, P., and S. Card. Information Foraging. Psychological Review 106(4): 643–675, 1999.
• Porter, J. Designing for the Social Web. Berkeley, CA: New Riders, 2008.
• Raskin, J. Intuitive Equals Familiar. Communications of the ACM 37(9): 17, 2004.
• Raskin, A. Never Use a Warning When You Mean Undo. Доступно на вебсайте www.alistapart.com/articles/neveruseawarning, 13 июля 2007.
• Resnick, P., R. Zeckhauser, J. Swanson, and K. Lockwood. The Value of Reputation on eBay: A Controlled Experiment. Experimental Economics 9(2): 79-101, 2006.
• Rivadeneira, A. W., D. M. Gruen, M. J. Muller, and D. R. Millen. Getting Our Head in the Clouds: Toward Evaluation Studies of Tag Clouds, Записи сCHI’07, Сан-Хосе, Калифорния, США, 28 апреля – 3 мая, 2007.
• Rossi, G., D. Schwabe, and R. M. Guimarres. Designing Personalized Web Applications. Записи с WWW10, стр. 275–284, Гонконг, 1–5 мая 2001.
• Rutledge, A. Contrast and Meaning. A List Apart. Доступно на вебсайте www.alistapart.com/articles/contrastandmeaning, 2007.
• Sage, A. Improving the Design of Chat Interactions. Cambridge, MA: Forrester Research, Inc., 2008.
• Sakai UI Design Patterns. Доступно на веб-сайте bugs.sakaiproject. org/confluence/display/DESPAT/Home.
• Schafer, J. B., J. Konstan, and J. Riedl. Recommender Systems in E-commerce, Записи сE-Commerce’99, с. 158–166, Денвер, 1999.
• Scott, B. Looks Good, Works Well. Posts with Label: Antipatterns. Доступно на веб-сайте www.looksgoodworkswell.blogspot.com/search/label/antipatterns, 2006.
• Scott, B. When Designers Get Too Clever. eBig 2008. Доступно на веб-сайте www.looksgoodworkswell.blogspot.com/2008/02/ebig-talk-slides-available.html, 2008.
• Shaikh, A. D., and K. Lenz. Where’s the Search? Reexamining User Expectations of Web Objects. Usability News 8(1). Доступно на вебсайте www.surl.org/usabilitynews/81/webobjects.asp, 2006.
• Singh, S. Social Networks and Group Formation: Theoretical Concepts to Leverage. Доступно на веб-сайте www.boxesandarrows.com/view/social-networks, 2007.
• Sinnig, D., H. Javahery, J. Strika, P. Forbrig, and A. Seffah. Patterns and Components for Enhancing Reusability and Systematic UI Development. Записи с BIR, Росток, 2005.
• Smarr, J., M. Canter, R. Scoble, and M. Arrington. A Bill of Rights for Users of the Social Web. Доступно на веб-сайте www.opensocialweb.org, 2007.
• Smith, G. Tagging: People-Powered Metadata for the Social Web. Berkeley, CA: New Riders, 2007.
• Smith-Ferrier, G. .NETInternationalization: The Developer’s Guide to Building Global Windows and Web Applications. Boston: Addison-Wesley Professional, 2006.
• Spool, J. Design Patterns: An Evolutionary Step to Managing Complex Sites. Доступно на веб-сайте www.uie.com/articles/design_patterns/, 2003.
• Spool, J. Value of Breadcrumbs. User Interface Engineering (UIE) Brainsparks. Доступно на веб-сайте www.uie.com/brainsparks/2005/09/26/value-of-breadcrumbs/, 2005.
• Spool, J. The Elements of a Design Pattern. Доступно на веб-сайте www.uie.com/articles/elements_of_a_design_pattern/, 2006.
• Spool, J. Producing Great Search Results: Harder Than It Looks, Part 1. Доступно на веб-сайте www.uie.com/articles/search_results/, 2008a.
• Spool, J. Producing Great Search Results: Harder Than It Looks, Part 2. Доступно на веб-сайте www.uie.com/articles/search_, 2008б.results_part2/
• Szeto, J. Building Flex Applications with Progressive Layout.
• Teng, H. Location Breadcrumbs for Navigation: An Exploratory Study. Master’s thesis, Dalhousie University, Faculty of Computer Science, Halifax, Nova Scotia, 2003.
• Thatcher, J., P. Bohman, M. Burks, S. L. Henry, B. Regan, S. Swierenga, M. D. Urban, and C. D. Waddell. Constructing Accessible Web Sites. Birmingham, U.K.: Glasshaus, 2002.
• Thatcher, J., M. R. Burks, C. Heilman, S. L. Henry, A. Kirkpatrick, P. H. Lauke, B. Lawson, B. Regan, R. Rutter, M.Urban, and C. D Waddell. Web Accessibility: Web Standards and Regulatory Compliance. New York: Friends of ED, 2006.
• Tractinsky, N. Aesthetics and Apparent Usability: Empirically Assessing Cultural and Methodological Issues. Записи с конференции CHI’97, с. 115–122, Атланта, 22–27 марта 1997.
• Turnbull, G. Your Life in Web Apps. Short Cuts, p. 24. Boston: O’Reilly, 2006.
• UC Berkeley Pattern Library.
• UI Patterns. Доступно на веб-сайте www.ui-patterns.com, 2008.
• Vander Wal, T. Folksonomy. Доступно на веб-сайте www.vanderwal.net/folksonomy.html, запрошено 2 февраля 2007.
• van Duyne, D. K., J. Landay, and J. I. Hong. The Design of Sites: Patterns, Principles, and Processes for Crafting a Customer-Centered Web Experience. Boston: Addison-Wesley, 2002.
• van Duyne, D. K., J. Landay, and J. I. Hong. The Design of Sites: Patterns for Creating Winning Web Sites, 2nd Edition. Boston: Addison-Wesley Professional, 2006.
• van Welie, M. Design Patterns. Доступно на веб-сайте www.welie.com.
• Venners, B. Patterns and Practice: A Conversation with Erich Gamma. Part IV. Artima Developer. Best Practices in Enterprise Software Development. Доступно на веб-сайте www.artima.com/lejava/articles/patterns_practice.html, 2005.
• Vinh, K., and Boulton, M. Grids Are Good. Доступно на веб-сайте www.lifeclever.com/khoi-vinh-mark-boulton-grids-are-good/, запрошено 1 ноября 2007.
• von Ahn, L., M. Blum, and J. Langford. Telling Humans and Computers Apart Automatically. Communications of the ACM 47(3): 57–60, 2004.
• Vote to Promote Pattern. Yahoo! Developer Network. Design Pattern Library. Доступно на веб-сайте developer.yahoo.com/ypatterns/ pattern.php?pattern=votetopromote, 2008.
• W3C Internationalization (i18n) Activity. Доступно на веб-сайте www.w3.org/International/, 2008.
• W3C. Web Accessibility Initiative. Доступно на веб-сайте www.w3.org/WAI/.
• Web Accessibility in Mind (WebAIM). Доступно на веб-сайте www.Webaim.org/articles/.
• Wellhausen, T. User Interface Design for Searching. A Pattern Language. Доступно на веб-сайте www.tim-wellhausen.de, 2006.
• Wickham, D. P., D. L. Mayhew, T. Stoll, K. J. Tolley III, and S. Rouiller. Designing Effective Wizards: A Multidisciplinary Approach. Upper Saddle River, NJ: Prentice Hall, 2002.
• Windows Vista User Experience Guidelines. Доступно на веб-сайте download.microsoft.com/download/e/1/9/e191fd8c-bce8-4dba-a9d5-2d4e3f3ec1d3/ux%20guide.pdf 2007.
• Winn, T., and P. Calder. A Pattern Language for Pattern Language Structure. Записи с Конференции по шаблонным языкам программирования, № 13, с. 45–58, Мельбурн, Австралия, 2002.
• Wroblewski, L. Site-Seeing: A Visual Approach to Web Usability. New York: Hungry Minds, 2002.
• Wroblewski, L. Web Form Design: Filling in the Blanks. Brooklyn: Rosenfeld Media, 2008.
• Wroblewski, L., and Etre Ltd. Primary and Secondary Actions in Web Forms. Доступно на веб-сайте www.lukew.com/resources/articles/PSactions.asp, 2007.
• Yahoo! Design Pattern Library. Доступно на веб-сайте www.developer.yahoo.com/ypatterns/, 2008.
• Yunkers, J. Beyond Borders: Web Globalization Strategies. Berkeley, CA: New Riders, 2002.
• Барри Шварц. Парадокс выбора. Почему «больше» значит «меньше». М.: Добрая книга, 2005.
• Дженифер Тидвелл. Разработка пользовательских интерфейсов. М.: Питер, 2008.
• Малкольм Гладуэлл. Переломный момент. Как незначительные изменения приводят к глобальным переменам. М.: Альпина Паблишерз, 2010.
• Мэтью Линдерман, Джейсон Фрайд. Ошибки web-дизайна и как их устранить. М.: НТ Пресс, 2007.
• Сара Хортон. Разумный web-дизайн. Как сделать ваш сайт удобным для пользователей. М.: НТ Пресс, 2007.
• Стив Круг. Веб-дизайн: книга Стива Круга или «не заставляйте меня думать!». М.: Символ-Плюс, 2008.
• Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес. Приемы объектноориентированного проектирования. Паттерны проектирования. М.: Питер, 2007.
Приложение Список шаблонов, описываемых в книге ACCESSIBLE ALTERNATIVE (ДОСТУПНЫЙ ВЫБОР)
ACCESSIBLE FORMS (ДОСТУПНЫЕ ФОРМЫ)
ACCESSIBLE IMAGES (ДОСТУПНЫЕ ИЗОБРАЖЕНИЯ)
ACCESSIBLE NAVIGATION (ДОСТУПНАЯ НАВИГАЦИЯ)
ACCESSIBLE TABLES (ДОСТУПНЫЕ ТАБЛИЦЫ)
ACTION BUTTONS (КНОПКИ ДЕЙСТВИЙ)
ADD/UPLOAD CONTENT (ДОБАВЛЕНИЕ/ЗАГРУЗКА КОНТЕНТА)
ADVANCED SEARCH (РАСШИРЕННЫЙ ПОИСК)
ANIMATIONS/TRANSITIONS (АНИМАЦИИ/ПЕРЕХОДЫ)
APPLICATION HELP (СПРАВКА ПО ПРИЛОЖЕНИЮ)
AUTOMATIC LOGOUT (АВТОМАТИЧЕСКИЙ ВЫХОД)
AUTOSUGGEST/AUTOCOMPLETION (АВТОЗАПОЛНЕНИЕ)
BLANK SLATE (ЧИСТЫЙ ЛИСТ)
BREADCRUMBS (НАВИГАЦИОННАЯ ЦЕПОЧКА)
CAPTCHA (ПОЛНОСТЬЮ АВТОМАТИЗИРОВАННЫЙ ПУБЛИЧНЫЙ ТЕСТ)
CAROUSEL (КАРУСЕЛЬ)
CLEAR BENEFITS (ЧЕТКИЕ ПРЕИМУЩЕСТВА)
CLICK-TO-CHAT (ИНТЕРАКТИВНЫЙ ЧАТ)
COLLABORATION (СОТРУДНИЧЕСТВО)
CONTEXTUAL HELP (КОНТЕКСТНАЯ ПОДСКАЗКА)
CONTINUOUS SCROLLING (НЕПРЕРЫВНАЯ ПРОКРУТКА)
CONTROL PANEL (ПАНЕЛЬ УПРАВЛЕНИЯ)
CURRENCY AND CURRENCY FORMAT (ДЕНЕЖНЫЕ ЕДИНИЦЫ И ФОРМАТ ДЕНЕЖНЫХ ЕДИНИЦ)
CUSTOMIZATION (КАСТОМИЗАЦИЯ)
DASHBOARD (ИНФОРМАЦИОННАЯ ПАНЕЛЬ)
DATE FORMAT (ФОРМАТ ДАТЫ)
DELAY/PROGRESS INDICATOR (ИНДИКАТОР ОЖИДАНИЯ/ ВЫПОЛНЕНИЯ)
DISCOVER NETWORK MEMBERS (ПОИСК УЧАСТНИКОВ СЕТЕВЫХ СООБЩЕСТВ)
DRAG-AND-DROP (ПЕРЕТАСКИВАНИЕ)
DYNAMIC QUERYING (ДИНАМИЧЕСКИЕ ЗАПРОСЫ)
EDIT-IN-PLACE (РЕДАКТИРОВАНИЕ НА МЕСТЕ)
ERROR MESSAGES (СООБЩЕНИЯ ОБ ОШИБКАХ)
EVENT LIST (СПИСОК СОБЫТИЙ)
EXTENSIBLE DESIGN (РАСШИРЯЕМЫЙ ДИЗАЙН)
FACETED NAVIGATION (МНОГОАСПЕКТНАЯ НАВИГАЦИЯ)
FACETED SEARCH (МНОГОАСПЕКТНЫЙ ПОИСК)
FILTERING (ФИЛЬТРАЦИЯ)
FIXED-WIDTH LAYOUT (МАКЕТ С ФИКСИРОВАННОЙ ШИРИНОЙ)
FORGIVING FORMAT (ВЕЛИКОДУШНЫЙ ФОРМАТ)
FORGOT USERNAME/PASSWORD (ЗАБЫТЫ ИМЯ ПОЛЬЗОВАТЕЛЯ/ПАРОЛЬ)
FREQUENTLY ASKED QUESTIONS (ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ)
FRIEND LIST (СПИСОК ДРУЗЕЙ)
GLOBAL GATEWAY (ГЛОБАЛЬНЫЙ ШЛЮЗ)
GRID STRUCTURE (СЕТЧАТАЯ СТРУКТУРА)
GROUPS/SPECIAL INTEREST COMMUNITY (ГРУППЫ/ОСОБЫЕ СООБЩЕСТВА ПО ИНТЕРЕСАМ)
GUIDED TOURS (ПОШАГОВЫЕ РУКОВОДСТВА)
HELP COMMUNITY (ПОМОЩЬ СООБЩЕСТВА)
HELP WIZARDS (МАСТЕРА ПОМОЩИ)
HIERARCHICAL LIST (ИЕРАРХИЧЕСКИЙ СПИСОК)
HIGHLIGHT (ВЫДЕЛЕНИЕ)
ICONS (ИКОНКИ)
IMAGE LIST/GRID (СПИСОК/СЕТКА ИЗОБРАЖЕНИЙ)
INBOX (ВХОДЯЩИЕ)
INPUT HINTS/PROMPTS (ПОДСКАЗКИ ПРИ ВВОДЕ/ ПРИГЛАШЕНИЕ К ВВОДУ)
KEYBOARD NAVIGATION (УПРАВЛЕНИЕ КЛАВИАТУРОЙ)
LABEL ALIGNMENT (ВЫРАВНИЕ МЕТОК)
LANGUAGE SELECTOR (ВЫБОР ЯЗЫКА)
LIQUID-WIDTH LAYOUT (АВТОМАСШТАБИРУЕМЫЙ МАКЕТ)
LIST ACTIONS (ОПЕРАЦИИ СО СПИСКОМ)
LIST UTILITY FUNCTIONS (СЛУЖЕБНЫЕ ОПЕРАЦИИ СО СПИСКОМ)
LIVE PREVIEW (ПРЕДПРОСМОТР В РЕАЛЬНОМ ВРЕМЕНИ)
LOG IN (ВХОД В СИСТЕМУ)
LOG OUT (ВЫХОД ИЗ СИСТЕМЫ)
LOGICAL GROUPING (ЛОГИЧЕСКОЕ ГРУППИРОВАНИЕ)
MAPS (КАРТЫ)
MESSAGING (ОБМЕН СООБЩЕНИЯМИ)
NUMBER FORMAT (ФОРМАТ ЧИСЕЛ)
OVERVIEW-PLUS-DETAIL (ОБЗОР И ДЕТАЛИ)
PAGINATION (РАЗБИВКА НА СТРАНИЦЫ)
PARAMETRIC SEARCH (ПОИСК ПО ПАРАМЕТРАМ)
PERSONALIZATION (ПЕРСОНАЛИЗАЦИЯ)
PORTAL (ПОРТАЛ)
PRESENCE INDICATOR (ИНДИКАТОР ПРИСУТСТВИЯ)
PRIMARY NAVIGATION (ОСНОВНАЯ НАВИГАЦИЯ)
PROGRESSIVE ENHANCEMENT (ПРОГРЕССИВНОЕ УЛУЧШЕНИЕ)
PROGRESSIVE LAYOUT (ПРОГРЕССИВНЫЙ МАКЕТ)
RATING (РЕЙТИНГ)
REGISTRATION (РЕГИСТРАЦИЯ)
REPUTATION (РЕПУТАЦИЯ)
REQUIRED FIELD INDICATORS (ИНДИКАТОРЫ ОБЯЗАТЕЛЬНЫХ ПОЛЕЙ)
REVIEWS (ОТЗЫВЫ)
RICH FORM (ПОЛНОЦЕННАЯ ФОРМА)
RICH-TEXT EDITOR (РЕДАКТОР ПОЛНОЦЕННОГО ФОРМАТИРОВАНИЯ)
SAVED SEARCHES (СОХРАНЕННЫЕ РЕЗУЛЬТАТЫ ПОИСКА)
SEARCH RESULTS (РЕЗУЛЬТАТЫ ПОИСКА)
SEARCH TIPS (СОВЕТЫ ПО ПОИСКУ)
SECONDARY NAVIGATION (ВСПОМОГАТЕЛЬНАЯ НАВИГАЦИЯ)
SEMANTIC MARKUP (СЕМАНТИЧЕСКАЯ РАЗМЕТКА)
SHARING (СОВМЕСТНЫЙ ДОСТУП)
SHORT FORMS (КОРОТКИЕ ФОРМЫ)
SIMPLE LIST (ПРОСТОЙ СПИСОК)
SIMPLE SEARCH (ПРОСТОЙ ПОИСК)
SLIDER (ПОЛЗУНОК)
SMART DEFAULTS («УМНЫЕ» ЗНАЧЕНИЯ ПО УМОЛЧАНИЮ)
SORTING (СОРТИРОВКА)
SPOTLIGHT/YELLOW-FADE (ПРОЖЕКТОР/ЖЕЛТОЕ ВЫЦВЕТАНИЕ)
SUPPLEMENTARY NAVIGATION (ДОПОЛНИТЕЛЬНАЯ НАВИГАЦИЯ)
TABULAR LIST (ТАБЛИЧНЫЙ СПИСОК)
TAG CLOUDS (ОБЛАКА ТЕГОВ)
TAGGING (ТЕГГИРОВАНИЕ)
TIME FORMAT (ФОРМАТ ВРЕМЕНИ)
TIMELINES (ВРЕМЕННЫЕ ШКАЛЫ)
UNOBTRUSIVE JAVASCRIPT (НЕНАВЯЗЧИВЫЙ JAVASCRIPT)
UNOBTRUSIVE STYLE SHEETS (НЕНАВЯЗЧИВЫЕ ТАБЛИЦЫ СТИЛЕЙ)
USER PROFILE (ПРОФИЛЬ ПОЛЬЗОВАТЕЛЯ)
UTILITY NAVIGATION (СЛУЖЕБНАЯ НАВИГАЦИЯ)
VISUAL HIERARCHY (ВИЗУАЛЬНАЯ ИЕРАРХИЯ)
VOTE TO PROMOTE (ГОЛОСОВАНИЕ)
WIZARDS (МАСТЕРА)