Дизайн человеческого фактора (удовлетворение психологических потребностей в дизайне пользовательского интерфейса)
Читая о кодеке G.729, я обнаружил интересную новость о " Comfort Noise":
Генератор комфортного шума (CNG) также установлен, потому что в канале связи, если передача остановлена, и канал отключается из-за отсутствия речи, тогда принимающая сторона может предположить, что канал был отключен. При вводе комфортного шума старый аналоговый шипение воспроизводится во время молчания, чтобы обеспечить приемнику активное и работоспособное соединение.
Это та вещь, о которой хороший программист должен знать, например, прежде чем разрабатывать программное обеспечение VOIP.
Ранее сегодня я также узнал о саккадическом подавлении:
Люди избегают размывания сетчатки во время движения глаз, временно ослабляя данные, поступающие из сетчатки в мозг. Забавный способ продемонстрировать это явление - посмотреть на свое лицо в зеркале. Держа голову ровно, посмотрите на один глаз, а затем на другой, быстро переключая взгляд между ними. Изображение стабильное, и вы не видите движения собственных глаз, но другой человек, наблюдающий за вами, ясно увидит, как ваши глаза двигаются.
Это имеет применение в видеоиграх и других визуальных и графических разработках.
Существует много книг по дизайну пользовательского интерфейса, но мне еще предстоит увидеть одну ссылку, которая перечисляет большинство факторов человеческого дизайна, которые мы должны понимать при разработке программного обеспечения. Я ожидаю, что многие инженеры-программисты узнают об этом по местам своих штанов - они проектируют это, находят, что что-то странное и / или раздражающее, и играют с этим, пока не почувствуют себя комфортно. Тем не менее, ответы уже существуют, исследования проведены, и кто-то знает не только, как решить нашу проблему, но и почему это проблема.
- Без получения степени бакалавра / бакалавра в дюжине разных профессий, где мне искать такую информацию?
- Обречен ли я наткнуться на него в ежедневном интернет-серфинге (от чего многие компании / менеджеры недовольны)?
- Какие другие человеческие факторы влияют на программирование (пожалуйста, свяжите ссылку, ресурс или, по крайней мере, дайте техническое название, подходящее для Google - поочередно опубликуйте новый вопрос с тегом "человеческий фактор")?
12 ответов
Я думаю, что вам нужно знать, зависит от типа приложения, которое вы пытаетесь разработать, и пользовательской среды, в которой оно будет.
С точки зрения огромной компании / продукта - разумно иметь Руководство по стилю HMI/UI, в котором изложены основные предписания, которые разработчики должны использовать для разработки своих интерфейсов для конкретных целей своего программного обеспечения. Во многих случаях так же важно быть последовательным, как и правильным, поэтому очень важно иметь единое руководство для большого продукта или набора продуктов. Это также удерживает экспертов программного обеспечения от необходимости быть экспертами пользователей. Если бы был только один источник, я бы сказал, что это будет внутреннее руководство по стилю. В идеале, они должны быть написаны (и обновлены), чтобы делать именно то, что вы просите - быть ориентиром для всего, что необходимо учитывать при создании дизайна.
Я не уверен, что вы когда-нибудь найдете единственное руководство по всем аспектам дизайна пользовательского интерфейса, которое подойдет всем источникам. Разные типы технологий требуют разных техник - например, две вышеупомянутые идеи дизайна полезны для двух очень разных типов приложений (передача голоса и видеоигры). И ни один из них не особенно полезен для веб-приложений. Хуже того, потребности пользователей изменяются по мере того, как конкретная технология становится все более широко распространенной - например, в графических интерфейсах Web 2.0 используются некоторые макеты и концепции дизайна, которые нарушают более ранние ранние практики проектирования веб-интерфейсов.
Общие принципы, которые я считаю полезными для моей работы в мире веб-приложений:
- Всегда считайте, что пользователь пытается сделать в качестве первого приоритета
- Рассмотрим другие системы, с которыми пользователь уже знаком, и скопируйте их, когда это возможно *
- Сосредоточьте внимание на самом важном решении / информации (см. Первый пункт) - внимание может быть сфокусировано разными способами, в зависимости от технологии - размера, движения, положения, цвета, звука или любого другого сенсорного ввода.
- Учитывайте возраст пользователя, инвалидность / способность, предыдущий опыт работы с этой технологией и практически все, что вы можете себе представить. Затем дизайн с учетом ключевых аспектов пользователя.
- Рассмотрим среду пользователя - оборудование, сеть, физическое окружение
- Заставьте пользователя выполнять как можно меньше действий для достижения своих целей - например, щелчки мыши, нажатия клавиш, голосовые команды.
К сожалению, пробег может варьироваться - я всегда работал в мире приложений, которые люди должны использовать, но никогда бы не стал охотно использовать их, если бы им не нужно было выполнять свою работу - надеюсь, инструмент облегчает работу, но она все еще работает. Такие вещи, как видеоигры, за которые люди охотно платят деньги, просто для удовольствия - это совершенно другая игра с мячом. В этих случаях вы, возможно, не пытаетесь все упростить - но вы пытаетесь добавить вызов таким способом, который доставляет удовольствие.
* (Правка - Добавлено) - когда это возможно и когда это имеет смысл. Не бойтесь изобретать велосипед, когда у вас есть лучшая идея, если у вас есть веские аргументы в пользу того, что он действительно лучше.
Вы можете прочитать книгу "Заключенные ходят в убежище" или "Дизайн повседневных вещей", в которых говорится об этих проблемах.
То, что вы спрашиваете, является действительно очень сложным предметом о психологии, особенно о познании. Я бы начал читать Книгу Mind Hacks. Я бы также начал искать сайты Cognitive Daily и Scientific American Mind. Это огромная тема, и вам придется просмотреть множество статей, которые могут не относиться к тому, что вы действительно хотите знать. Вы захотите взглянуть на поведенческое обучение о том, как животные (я в том числе люди) обучены делать что-то и как это влияет на них в других ситуациях. Честно говоря, вы должны прочитать книги о дизайне, упомянутые другими людьми. Они предложат вам за ваш доллар.
Основная проблема, с которой вы столкнетесь, заключается в том, что вы ищете краткий и сухой ответ о том, как работает мозг и как вы адаптируете к нему дизайн пользовательского интерфейса. Есть некоторые, не поймите меня неправильно, но Познание не похоже на программирование. Нет никаких доказательств того, как работает мозг. (Когда-нибудь слышал, чтобы психолог использовал слово "докажи или знай"… я так не думал. Это всегда мы делаем вывод или думаем, или, наверное, так оно и есть).
Существуют сотни переменных, которые необходимо учитывать в экспериментах, которые проводятся несколько раз, и всегда существуют конкурирующие теории, и ни одна из них не является на 100% правильной большую часть времени (хорошо, существует ненулевая вероятность того, что кто-то получит теорию правильно голова). Одним из примеров этого является развитие языка. Люди проводят всю свою карьеру, пытаясь выяснить, почему дети глухих людей, у которых были глухие родители, подписывают себя иначе, чем дети глухих людей, у которых не было глухих родителей.
Другой вариант поиска книг по Cognition - пойти в местный университет или найти в Интернете и посмотреть, какие учебники необходимы для этих курсов. Если вам повезет, вы также можете набрать заметки в Интернете. Это поможет вам понять другие вещи, которые вы читаете о психологии и как все это сочетается.
Вы также можете зайти в Google по теме юзабилити (Jakob Nielson, Edward Tufte) и узнать, как проводить юзабилити-эксперименты. Даже если вы пытаетесь применить теорию в своем приложении, это не значит, что вы добились успеха.
Я просто подумал о другом месте, чтобы посмотреть. Я бы проверил Ted Talks. Не все из них относятся к психологии, но есть некоторые. Они дают хороший обзор того, что люди обнаружили, не вдаваясь в подробности.
Все эти темы подпадают под общую тему психофизики (для зрения, восприятия, восприятия и т. Д.) Или когнитивной науки для таких вещей, как память и когнитивная нагрузка.
Я также рекомендовал бы прочитать The Humane Interface для понимания того, как познание напрямую влияет на дизайн пользовательского интерфейса, и это действительно поражает тем, что есть "эргономика ума", которой следует следовать так же, как аппаратная эргономика.
Не заставляй меня думать! Стив Круг является отличным ресурсом для удобства использования. Он фокусируется на веб-аспекте дизайна, но может быть легко перенесен на другие типы интерфейсов. Одна вещь, на которой он сосредотачивается, состоит в том, чтобы привлечь "пользователя" к картине, чтобы определить, какие факторы составляют хорошее удобство использования. Вы можете внедрить юзабилити весь день, но в конце концов, если реальный человек не чувствует себя комфортно с ним, тогда ваша юзабилити бесполезна.
Другое дело - следить за темами HCI в академических изданиях. На таких сайтах, как портал ACM или ACM, будет множество научных статей по вашей теме (и многие другие).
Сделав быстрый поиск, я нашел страницу ссылок HCI с 1500 результатами. Материал (как вы говорите) определенно там ( правда тоже, но это на другой день).
Также следует помнить о комиксе Apple/Google/Your_Company, который является полностью правдивым, как и основным.
Есть только одна книга, которую вам нужно прочитать, и это "Разработка интерфейсов". Это действительно отличная книга. -> http://oreilly.com/catalog/9780596008031/
Это просто... ХОРОШО!
Прочитайте Apple Руководство по интерфейсу пользователя. Это не только руководство с шаблонами, но основано на психологии внимания пользователей.
Я использовал две книги, чтобы помочь в этой области: " Визуальный интеллект: как мы создаем то, что видим, и глаз, и мозг: психология видения". Они оба имеют дело с нашим зрительным восприятием. Я обнаружил, что рекомендации Amazon - отличный способ перейти к "оригинальной работе" в данной области - если эксперты / читатели согласятся с тем, что это стоит прочитать, я пойду с этим.
В итоге
1) Где вы смотрите, Amazon, следуя рекомендациям других, а затем обратный поиск в Google, чтобы увидеть, что еще относится к вашей конкретной области
2) Ежедневный серфинг полезен для ума, если менеджмент хочет кодировать роботов, может быть, это то, что они получат?
3) Я следил за "информационной графикой" целую вечность - она охватывает такие вещи, как дизайн карты труб и хорошие вывески. Попробуйте блестящий блог блога http://infosthetics.com/ и информационную графику в Википедии
Окончательно, хотя читать Эдвард Туфте.
Волшебные чернила Брета Виктора - фантастическая статья об информационном программном обеспечении и графическом интерфейсе. Я действительно рекомендую его всем, кто занимается дизайном пользовательского интерфейса.
Возможно, вы уже сталкивались с часто порочащим, но все же полезным UCD (User Centered Design) ( далее ссылки), который ранее был полезен для более... монолитных приложений, действующих с людьми 1:1. Тем не менее, UCD является итеративным и, следовательно, хорошо отображает гибкую методологию.
В эпоху социальных сетей теория социализма, созданная самими социалистами, - в общем, все человеческое поведение можно понять в контексте социального действия, отказа от внутренних миров Фрейда и Юнга - набирает силу из-за очевидного перевода. Хорошее вступление FOWA прошлых лет здесь, текст на эту тему здесь.
Я думаю, что это будет продолжать расти, потому что, несомненно, Интернет сейчас определяет будущее программного обеспечения, а Интернет - это социальная среда. Что важно, так это концептуализация отношений и действий пользователя внутри группы, в меньшей степени это касается буквальных бизнес-объектов.
Не знаю, насколько это применимо, но "подтолкнуть: улучшение решений о здоровье, богатстве и счастье" может помочь вам проинформировать вас о действительно больших приложениях с большим выбором функций (я думаю, что-то вроде ленты). Не читал, но думаю, что идея определенно применима.
http://www.amazon.com/Nudge-Improving-Decisions-Health-Happiness/dp/0300122233