Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Заметка
Это руководство по проектированию было создано для Windows 7 и не было обновлено для более новых версий Windows. Большая часть рекомендаций по-прежнему применяется в принципе, но презентация и примеры не отражают наше текущее руководство по проектированию.
Отличное настольное приложение является мощным и в то же время простым. Благодаря тщательно сбалансированному выбору функций и презентации можно добиться как мощности, так и простоты.
мощный:
мощный и простой:
Идеальное приложение на основе Windows — это как мощное, так и простое. Конечно, вы хотите, чтобы ваше приложение было мощным и, конечно, вы хотите, чтобы оно было простым, но можете ли вы достичь обоих? Существует естественная напряженность между этими целями, но эта напряженность далеко не непримирима. Вы можете добиться как мощности, так и простоты благодаря тщательно сбалансированному выбору функций и презентации.
Что делает приложение мощным?
Что "власть" действительно означает с точки зрения программного обеспечения? Приложение может рассматриваться как мощное, если оно переполнено функциями, имея огромный спектр функциональных возможностей, чтобы быть универсальным для всех пользователей. Такой дизайн, скорее всего, не будет успешным, так как ненацелованный набор функций вряд ли удовлетворяет потребностям любого пользователя. Это не тот тип силы, которую мы ищем.
Приложение эффективно, если оно имеет правильное сочетание следующих характеристик:
- Включение. Приложение удовлетворяет потребностям своих целевых пользователей, что позволяет им выполнять задачи, которые они не могли сделать и достичь своих целей эффективно.
- Эффективный. Приложение позволяет пользователям выполнять задачи с уровнем производительности и масштабирования, которое было невозможно раньше.
- Универсальный. Приложение позволяет пользователям эффективно выполнять широкий спектр задач в различных обстоятельствах.
- Прямой. Приложение воспринимается как напрямую помогающее пользователям достигать своих целей, а не мешающее или требующее ненужных шагов. Такие функции, как сочетания клавиш, доступ к клавиатуре и макросы, повышают ощущение непосредственности.
- Гибкий. Приложение позволяет пользователям полностью контролировать свою работу.
- Интегрированный. Приложение хорошо интегрировано с Microsoft Windows, что позволяет ему совместно использовать данные с другими приложениями.
- Продвинутый. Приложение имеет чрезвычайные, инновационные, современные функции, которые не находятся в конкурирующих решениях.
Некоторые из этих характеристик зависят от восприятия пользователя и относятся к текущим возможностям пользователей. То, что считается мощным, может измениться со временем, так что сегодня расширенная функция поиска может быть обычным завтра.
Все эти характеристики можно объединить в наше определение власти:
Приложение мощно, когда оно позволяет целевым пользователям эффективно реализовать свой потенциал.
Таким образом, конечная мера мощности — это производительность, а не количество признаков.
Разные пользователи нуждаются в помощи в достижении полного потенциала различными способами. То, что полезно для одних пользователей, может вредить универсальности, прямоте и контролю для других. Хорошо разработанное программное обеспечение должно сбалансировать эти характеристики соответствующим образом. Например, система настольной публикации, предназначенная для непрофессионалов, может использовать мастеры, чтобы проводить пользователей через сложные задачи. Такие мастеры позволяют целевым пользователям выполнять задачи, которые они в противном случае не смогут выполнять. В отличие от этого, система настольной издательской работы для профессионалов может сосредоточиться на непосредственности, эффективности и полном контроле. Для пользователей такого приложения мастера могут ограничивать и раздражать.
Если вы делаете только одну вещь...
Ознакомьтесь с целями целевых пользователей и создайте набор функций, который позволяет им эффективно достичь этих целей.
Что делает взаимодействие с пользователем простым?
Мы определяем простоту следующим образом:
Простота — это сокращение или устранение атрибута дизайна, о котором пользователи знают и считают несущественным.
На практике простота достигается путем выбора подходящего набора функций и представления функций правильным способом. Это уменьшает несущественное, как реальное, так и воспринимаемое.
Простота зависит от восприятия пользователей. Рассмотрим, как влияние автоматической передачи зависит от перспективы пользователя:
- Для типичного водителя (целевого пользователя) автоматическая передача устраняет необходимость ручного смены шестеренки и сцепления, что делает автомобиль гораздо проще ездить. Ручная смена шестеренки и сцепление не являются важными для задачи вождения, поэтому они удаляются для достижения простоты.
- Для профессионального водителя гоночного автомобиля, прямой контроль над трансмиссией является необходимым для конкурентоспособности. Автоматическая передача негативно влияет на производительность автомобиля, поэтому она не считается простотой.
- Для механики автоматическая передача является более сложным механизмом, поэтому не проще ремонтировать или поддерживать, чем ручная передача. В отличие от механики, целевой пользователь не знает об этой внутренней сложности.
Хотя разные пользователи по-разному относятся к автоматической трансмиссии, она успешна, потому что устраняет необходимость в ненужных знаниях, навыках и усилиях со стороны своих целевых пользователей. Для типичного драйвера автоматическая передача является отличной функцией, потому что она просто работает.
Простота и простота использования
Простота при правильном применении приводит к простоте использования. Но простота и простота использования не являются одинаковыми понятиями. Простота использования достигается, когда пользователи могут успешно выполнять задачу самостоятельно без трудностей или путаницы в течение подходящего периода времени. Существует множество способов достичь удобства использования, и упрощение за счет устранения ненужного — всего лишь один из них.
Все пользователи, независимо от того, насколько они опытны, хотят выполнить свою работу с минимальным количеством лишних усилий. Все пользователи, даже опытные, в первую очередь мотивированы выполнить свою работу, а не узнать о компьютерах или вашем приложении.
Простота — это наиболее эффективный способ сделать продукт простым в использовании, а простота использования равна использованию. Сложные функции, которые трудно использовать, просто не используются. Напротив, простые, элегантные конструкции, которые хорошо выполняют свою функцию, являются радостью для использования. Они вызывают положительный, эмоциональный ответ.
Например, рассмотрим поддержку беспроводных сетей в Microsoft Windows XP. Microsoft могла бы добавить мастер для проведения пользователей через процесс настройки. Этот подход привел бы к удобству использования, но не к простоте, так как была бы добавлена несущественная функция (мастер). Вместо этого корпорация Майкрософт разработала беспроводные сети для автоматической настройки. Пользователи в конечном счете не заботятся о сведениях о конфигурации, пока он "просто работает" надежно и безопасно. Это сочетание мощности и простоты в технологии беспроводных сетей привело к её популяризации и быстрому внедрению.
Если вы делаете только одну вещь...
Начните процесс проектирования с самыми простыми проектами, которые хорошо выполняют работу.
Если вы не удовлетворены текущим дизайном, начните с удаления всех несущественных элементов. Вы обнаружите, что то, что осталось, обычно довольно хорошо.
Получение простоты при сохранении мощности
Принципы проектирования
Чтобы достичь простоты, всегда проектируйте под вероятное, а не под возможное.
Возможные
Решения по проектированию на основе возможных возможностей приводят к сложным пользовательским интерфейсам, таким как редактор реестра, где проект предполагает, что все действия равны и в результате требуют равных усилий. Поскольку все возможно, цели пользователей не рассматриваются в решениях по проектированию.
Вероятность
Решения по проектированию на основе вероятных сценариев приводят к упрощённым, целевым и задачно-ориентированным решениям, где вероятные сценарии находятся в центре внимания и требуют минимальных усилий для реализации.
Принцип простоты проектирования
Чтобы достичь простоты, сосредоточьтесь на том, что вероятно; уменьшите, скройте или удалите то, что маловероятно; и исключите то, что невозможно.
То, что пользователи будут делать, гораздо более релевантно для дизайна, чем то, что они могут сделать.
Методы проектирования
Чтобы достичь простоты, сохраняя при этом мощность, выберите правильный набор функций, разместите функции в нужных местахи снижайте усилия по их использованию . В этом разделе приведены некоторые распространенные методы достижения этих целей.
Выбор подходящего набора функций
Совершенство достигается не тогда, когда нечего больше добавить,
но когда нечего убрать." —Антуан де Saint-Exupery
Следующие методы проектирования предоставляют пользователям необходимые функции при достижении простоты с помощью фактического уменьшения или удаления:
- Определите необходимые функции. Понимание потребностей пользователей с помощью анализа целей, сценариев и задач. Определите набор функций, реализующих эти цели.
- Удалите ненужные элементы. Удалите элементы, которые, скорее всего, не будут использоваться или имеют предпочтительный вариант.
- Удалите ненужную избыточность. Может быть несколько эффективных способов выполнения задачи. Чтобы достичь простоты, сделайте трудное решение и выберите лучший для целевых пользователей вместо предоставления всех из них и выбора варианта.
- Сделайте так, чтобы это просто работало автоматически. Элемент необходим, но любое взаимодействие пользователя для его работы не требуется, поскольку есть приемлемое поведение или конфигурация по умолчанию. Чтобы достичь простоты, сделайте его работать автоматически и либо скрыть его от пользователя полностью, либо уменьшить его воздействие значительно.
Упрощение презентации
"Возможность упростить средства для устранения ненужных
"чтобы те, кто необходим, могли говорить." — Ханс Хофманн
Используйте следующие методы проектирования для сохранения мощности, обеспечивая простоту с помощью восприятия уменьшения или удаления:
- Объединить то, что следует объединить. Поместите основные функции, поддерживающие задачу, чтобы задача была выполнена в одном месте. Этапы задачи должны быть упорядоченными и согласованными. Разбивайте сложные задачи на набор простых, четких шагов, чтобы "одна" точка могла состоять из нескольких поверхностей пользовательского интерфейса, таких как помощник.
- Разделите то, что следует разделить. Не все может быть представлено в одном месте, поэтому всегда имеют четкие, хорошо выбранные границы. Сделайте функции, поддерживающие основные сценарии, доступными и очевидными, а необязательные функции скройте или сделайте периферийными. Разделите отдельные задачи и укажите ссылки на связанные задачи. Например, задачи, связанные с обработкой фотографий, должны быть четко отделены от задач, связанных с управлением коллекциями фотографий, но они должны быть легко доступны друг от друга.
- Исключить то, что можно устранить. Возьмите распечатку своего дизайна и выделите элементы, используемые для выполнения самых важных задач. Даже выделите отдельные слова в тексте пользовательского интерфейса, которые передают полезные сведения. Теперь просмотрите, что не выделено, и подумайте об удалении из дизайна. Если удалить элемент, произойдет ли что-нибудь плохое? Если нет, удалите его!
- Согласованность, настраиваемость и обобщение часто являются желательными качествами, но они могут привести к ненужной сложности. Оцените ваш дизайн на предмет ошибочной согласованности (например, наличие избыточного текста), обобщения (например, наличие любого количества часовых поясов, когда достаточно двух), а также возможности настройки (например, параметры, которые пользователи, скорее всего, не будут изменять), и уберите то, что можно убрать.
- Поместите элементы в нужное место. В окне расположение элемента должно следовать его служебной программе. Основные элементы управления, инструкции и объяснения должны быть в контексте в логическом порядке. Если требуются дополнительные параметры, предоставьте их в контексте, щелкнув по шеврону или аналогичному механизму; если требуется дополнительная информация, отображайте всплывающую подсказку при наведении указателя мыши. Разместите менее важные задачи, параметры и сведения справки вне основного потока, в отдельном окне или на отдельной странице. Метод отображения дополнительных сведений по мере необходимости называется прогрессивным раскрытием.
- Используйте значимые сочетания высокого уровня. Часто проще и удобнее масштабировать выбор и управление группами связанных элементов, чем работать с отдельными элементами. Примеры сочетаний высокого уровня включают папки, темы, стили и группы пользователей. Такие сочетания часто сопоставляют с целью пользователя или намерением, которые не очевидны из отдельных элементов. Например, намерение, стоящее за черной цветовой схемой высокой контрастности, гораздо более очевидно, чем у фона черного окна.
- Выберите нужные элементы управления. Элементы конструктора воплощаются элементами управления, которые вы используете для представления, поэтому выбор правильного элемента управления имеет решающее значение для эффективной презентации. Например, поле выбора шрифта, используемое Microsoft Word, отображает как предварительный просмотр шрифта, так и последние использованные шрифты. Аналогично, то, как Word отображает потенциальные ошибки орфографии и грамматики непосредственно в тексте, гораздо проще, чем использование диалогового окна, как показано в начале этой статьи.
Сокращение усилий
"Простые вещи должны быть простыми.
Сложные вещи должны быть возможными". — Алан Кай
Следующие методы проектирования приводят к сокращению усилий для пользователей:
- Сделать задачи обнаруживаемыми и видимыми. Все задачи, но особенно частые задачи, должны быть легко обнаруженными в пользовательском интерфейсе. Действия, необходимые для выполнения задач, должны быть видимыми и не должны полагаться на запоминание.
- Представление задач в домене пользователя. Сложное программное обеспечение требует, чтобы пользователи сопоставляли свои проблемы с технологией. Простое программное обеспечение делает это сопоставление для них путем представления того, что естественно. Например, функция уменьшения эффекта красных глаз непосредственно связана с сферой проблем и не требует, чтобы пользователи думали о таких деталях, как оттенки и градиенты.
- Поместите знания о домене в программу. Пользователям не нужно обращаться к внешней информации для успешного использования приложения. Знание домена может варьироваться от сложных данных и алгоритмов до простого определения типа входных данных.
- Используйте текст, который пользователи понимают. Хорошо созданный текст имеет решающее значение для эффективного взаимодействия с пользователями. Используйте понятия и термины, знакомые пользователям. Полностью объясните, что запрашивается на простом языке, чтобы пользователи могли принимать интеллектуальные, обоснованные решения.
- Используйте безопасные, защищенные, вероятные значения по умолчанию. Если параметр имеет значение, которое применяется к большинству пользователей в большинстве случаев, и этот параметр является безопасным и безопасным, используйте его в качестве значения по умолчанию. Чтобы пользователи указали значения только при необходимости.
- Используйте ограничения. Если существует множество способов выполнения задачи, но только некоторые из них правильные, ограничивает задачу этими правильными способами. Пользователям не должно быть разрешено делать легко предотвратимые ошибки.
Простота не означает примитивность
"Все должно быть сделано как можно проще,
но не проще. — Альберт Эйнштейн
Мы считаем, что простота имеет решающее значение для эффективного, желательного пользовательского опыта, но всегда можно зайти слишком далеко с хорошей вещью. Суть простоты заключается в снижении или устранении несущественного. Удаление важного приводит к низкокачественному дизайну. Если ваше "упрощение" приводит к тому, что пользователи становятся разочарованными, запутанными, неуверенными или не могут успешно выполнять задачи, вы слишком многое убрали.
Простота означает больше усилий для вас
"Я сделал это письмо дольше, потому что у меня есть
Сейчас не время делать это короче." — Блез Паскаль
Получение простоты при сохранении мощности часто требует значительной внутренней сложности. Как правило, проще разрабатывать программное обеспечение, которое показывает всю технологическую инфраструктуру, чем проектировать программное обеспечение, которое скрывает её, — последнее требует отличного понимания ваших целевых пользователей и их целей. Удаление функции требует дисциплины, как и решение не добавлять эту классную функцию, которая на самом деле не является практичной. Простота требует создания сложных вариантов проектирования вместо того, чтобы сделать все настраиваемые. Сложное программное обеспечение часто приводит к неправильному пониманию пользователей: что они ценят неиспользуемые функции или слишком сложные функции, которые они не могут понять.
Мощный и простой
Сила заключается в том, чтобы давать вашим пользователям возможность и делать их продуктивными. Простота заключается в удалении несущественного и представлении функций правильным образом. Понимание целевых пользователей и обеспечение правильного баланса функций и презентаций позволяет создавать приложения на основе Windows, которые делают оба.