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

Обновлено: 07.07.2024

Гриф УМО вузов РФ по университетскому политехническому образованию.

Рассматриваемое учебное пособие закрывает давно существующий пробел в учебных материалах по человеко-компьютерному взаимодействию. Значительный рост числа пользователей компьютерами в последние годы выявил множества проблем, связанных с недостаточным учетом «человеческого фактора» при разработке интерфейсов и, в целом, всей системы взаимодействия «человек-компьютер». Особенно актуально это направление для пользователей-любителей, а именно эта категория пользователей и составляет большинство, формирующее, помимо прочего, рыночную судьбу программных продуктов. Этим и объясняется, что в так наз. развитых странах на факультетах компьютерных наук в обязательном порядке присутствует весьма объёмный (обычно, годовой или 1,5-годовой) курс по человеко-компьютерному взаимодействию.

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

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

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

Центральный аспект оценки интерфейса – периодическое юзабилити-тестирование изложено достаточно полно. Важно, что показано место этого тестирования в общей процедуре оценки интерфейса, избежав частой ошибки его преувеличения, но в то же время и продемонстрировать действительное значение тестирования такого рода. Особое внимание уделено вариантам и инструментарию создания навигационных структур, что наиболее актуально для web-сайтов. Во всех разделах содержится не только повествовательный материал, но также инструменты и практические приёмы создания описываемых объектов интерфейса.

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

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

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

Излагается понятие виртуальной и дополненной реальности, их отличительные признаки, перспективы для пользовательского интерфейса. Очень важно, что здесь же рассмотрен и трехмерный (пространственный) интерфейс, тесно связанный с виртуальной реальностью. Автор показал не только возможности трёхмерного интерфейса для человеко-компьютерного взаимодействия, но и реальные разработки в этом направлении, их возможности, особенности использования человеком. Представлена эволюция взглядов и инструментария человеко-компьютерного взаимодействия.

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

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

С тех пор, как в конце 1970-х гг. основной проблемой человеко-компьютерного взаимодействия было удобство использования, многое изменилось. Сегодня исследованиями в этой сфере занимаются лучшие эксперты в области разработки и применения методов упрощения обучения и использования компьютерных технологий. Накоплен огромный объем данных, описывающий удачные и неудачные примеры человеко-компьютерного взаимодействия. Совершенствуются методы их изучения и создания новых продуктов, разработан целый арсенал испытанных исследовательских методик.

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

По мере развития человеко-компьютерного взаимодействия акценты смещались в сторону изучения работы человеческого разума — как человек понимает и узнает объекты и процессы. В знаменитой книге «Психология человеко-компьютерного взаимодействия», которую написали ученые из Xerox PARC Стюарт К. Кард, Томас П. Моран и Аллен Ньюэлл, изданной в 1984 г., человек рассматривается, как обработчик информации (информационный процессор), способный к вводу информации (преимущественно визуальному), ее обработке (мысленной) и выводу (печать на клавиатуре, щелчки мыши), переходящему в компьютерный ввод. В конечном счете, именно благодаря этому подходу появился современный графический интерфейс пользователя.


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

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


В ближайшем будущем человеко-компьютерное взаимодействие неминуемо изменится.Повсеместное проникновение и встраивание технологий вносит колоссальные изменения в сам компьютерный интерфейс. Эти изменения нужны как для того, чтобы массовому потребителю было проще использовать разнообразные компьютеры, так и для того, чтобы граждане и общество могли получать все преимущества компьютерных технологий вообще без непосредственной работы с компьютерами. Сам термин «интерфейс» будет менять свое значение, а в своем настоящем понимании — вероятнее всего, во многом устареет.

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

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

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

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

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


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

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

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


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

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

Многие убеждены, что область Human Computer Interaction (HCI или человеко-компьютерное взаимодействие) сводится только к проектированию сайтов или приложений, а основная задача специалиста — удовлетворить пользователей, увеличивая на несколько пикселей кнопку лайка. В посте мы хотим показать, что это совсем не так, и рассказать, что происходит в HCI на стыке с исследованиями машинного обучения и искусственного интеллекта. Возможно, это позволит читателям посмотреть на эту область с новой для себя стороны.

Для обзора мы взяли труды конференции CHI: Conference on Human Factors in Computing Systems за 10 лет, и с помощью NLP и анализа сетей социтирования посмотрели на темы и области на пересечении дисциплин.



В России особенно силен фокус на прикладных задачах проектирования UX. Многие события, которые помогали росту HCI за рубежом, у нас не произошли: не появилось iSchools, ушли из науки многие специалисты, занимавшиеся близкими аспектами инженерной психологии, и т. д. В результате профессия возникала заново, отталкиваясь от прикладных задач и исследований. Один из результатов этого виден даже сейчас — это крайне низкая представленность российских работ по HCI на ключевых конференциях.

Но и за пределами России HCI развивался очень по-разному, фокусируясь на множестве тем и направлений. На магистерской программе «Информационные системы и взаимодействие человек-компьютер» в Питерской Вышке мы, в том числе, обсуждаем — со студентами, коллегами, выпускниками схожих специальностей европейских университетов, партнерами, которые помогают развивать программу, — что же относится к области человеко-компьютерного взаимодействия. И эти обсуждения показывают разнородность направления, в котором у каждого специалиста своя, неполная, картина области.

Время от времени мы слышим вопросы, как это направление связано (и связано ли вообще) с машинным обучением и анализом данных. Чтобы ответить на них, мы обратились к исследованиям последних лет, представленным на конференции CHI.

В первую очередь мы расскажем, что происходит в таких областях, как xAI и iML (eXplainable Artificial Intelligence и Interpretable Machine Learning) со стороны интерфейсов и пользователей, а также как в HCI изучают когнитивные аспекты работы специалистов data science, и приведем примеры интересных работ последних лет в каждой области.

xAI и iML

Методы машинного обучения интенсивно развиваются и — что важнее с точки зрения обсуждаемой области — активно внедряются в автоматизированное принятие решений. Поэтому исследователи все чаще обсуждают вопросы: как пользователи, не являющиеся специалистами в машинном обучении, взаимодействуют с системами, где подобные алгоритмы применяются? Один из важных вопросов такого взаимодействия: как сделать, чтобы пользователи доверяли решениям, принятым на основе моделей? Поэтому с каждым годом все более горячей становится тематика интерпретируемого машинного обучения (Interpretable Machine Learning — iML) и объяснимого искусственного интеллекта (eXplainable Artificial Intelligence — XAI).

При этом, если на таких конференциях, как NeurIPS, ICML, IJCAI, KDD, обсуждают сами алгоритмы и средства iML и XAI, на CHI в фокусе оказываются несколько тем, связанных с особенностями дизайна и опытом использования этих систем. Например, на CHI-2020 этой тематике были посвящены сразу несколько секций, включая «AI/ML & seeing through the black box» и «Coping with AI: not agAIn!». Но и до появления отдельных секций таких работ было достаточно много. Мы выделили в них четыре направления.

Дизайн интерпретирующих систем для решения прикладных задач

Первое направление — это дизайн систем на основе алгоритмов интерпретируемости в различных прикладных задачах: медицинских, социальных и т. д. Такие работы возникают в очень разных сферах. Например, работа на CHI-2020 CheXplain: Enabling Physicians to Explore and Understand Data-Driven, AI-Enabled Medical Imaging Analysis описывает систему, которая помогает врачам исследовать и объяснять результаты рентгенографии органов грудной клетки. Она предлагает дополнительные текстовые и визуальные пояснения, а также снимки с таким же и противоположным результатом (поддерживающие и противоречащие примеры). Если система предсказывает, что на рентгенографии видно заболевание, то покажет два примера. Первый, поддерживающий, пример — это снимок легких другого пациента, у которого подтверждено это же заболевание. Второй, противоречащий, пример — это снимок, на котором заболевания нет, то есть снимок легких здорового человека. Основная идея — сократить очевидные ошибки и уменьшить число обращений к сторонним специалистам в простых случаях, чтобы ставить диагноз быстрее.


CheXpert: автоматизированное выделение областей + примеры (unlikely vs definitely)

Разработка систем для исследования моделей машинного обучения

Второе направление — разработка систем, которые помогают интерактивно сравнивать или объединять несколько методов и алгоритмов. Например, в работе Silva: Interactively Assessing Machine Learning Fairness Using Causality на CHI-2020 была представлена система, которая строит на данных пользователя несколько моделей машинного обучения и предоставляет возможность их последующего анализа. Анализ включает построение причинно-следственного графа между переменными и вычисление ряда метрик, оценивающих не только точность, но и честность (fairness) модели (Statistical Parity Difference, Equal Opportunity Difference, Average Odds Difference, Disparate Impact, Theil Index), что помогает находить перекосы в предсказаниях.


Silva: граф связей между переменными + графики для сравнения метрик честности + цветовое выделение влиятельных переменных в каждой группе

Общие вопросы интерпретируемости моделей

Третье направление — обсуждение подходов к задаче интерпретируемости моделей в целом. Чаще всего это обзоры, критика подходов и открытые вопросы: например, что понимать под «интерпретируемостью». Здесь хотелось бы отметить обзор на CHI-2018 Trends and Trajectories for Explainable, Accountable and Intelligible Systems: An HCI Research Agenda, в котором авторы рассмотрели 289 основных работ, посвященных объяснениям в искусственном интеллекте, и 12 412 публикаций, цитирующих их. С помощью сетевого анализа и тематического моделирования они выделили четыре ключевых направления исследований 1) Intelligent and Ambient (I&A) Systems, 2) Explainable AI: Fair, Accountable, and Transparent (FAT) algorithms and Interpretable Machine Learning (iML), 3) Theories of Explanations: Causality & Cognitive Psychology, 4) Interactivity and Learnability. Кроме того, авторы описали основные тренды исследований: интерактивное обучение и взаимодействие с системой.

Пользовательские исследования

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

Инструментов и алгоритмов интерпретации появилось очень много, поэтому возникает вопрос: как понять, какой же алгоритм выбрать? В работе Questioning the AI: Informing Design Practices for Explainable AI User Experiences как раз обсуждаются вопросы мотивации использования объясняющих алгоритмов и выделяются проблемы, которые при всем многообразии методов еще не решены в достаточной степени. Авторы приходят к неожиданному выводу: большинство существующих методов построены так, что отвечают на вопрос «почему» («почему у меня такой результат»), в то время как пользователям для принятия решений нужен еще и ответ на вопрос «почему нет» («почему не другой»), а иногда — «что сделать, чтобы результат изменился».

В работе говорится также о том, что пользователям нужно понимать, каковы границы применимости методов, какие у них есть ограничения — и это нужно явно внедрять в предлагаемые инструменты. Более ярко эта проблема показана в статье Interpreting Interpretability: Understanding Data Scientists' Use of Interpretability Tools for Machine Learning. Авторы провели небольшой эксперимент со специалистами в области машинного обучения: показали им результаты работы нескольких популярных инструментов для интерпретации моделей машинного обучения и предложили ответить на вопросы, связанные с принятием решения на основе этих результатов. Оказалось, что даже специалисты слишком доверяют подобным моделям и не относятся к результатам критически. Как любой инструмент, объясняющие модели можно использовать неправильно. При разработке инструментария важно учитывать это, привлекая накопленные знания (или специалистов) в области человеко-компьютерного взаимодействия, чтобы учитывать особенности и потребности потенциальных пользователей.

Data Science, Notebooks, Visualization

Еще одна интересная область HCI посвящена анализу когнитивных аспектов работы с данными. В последнее время в науке поднимается вопрос о том, как «степени свободы» исследователя — особенности сбора данных, дизайна экспериментов и выбора методов анализа — влияют на результаты исследований и их воспроизводимость. Хотя основная часть обсуждений и критики связана с психологией и социальными науками, многие проблемы касаются и надежности выводов в работе аналитиков данных в целом, а также сложностей при донесении этих выводов потребителям анализа.

Поэтому предметом этой области HCI становится разработка новых способов визуализации неопределенности в предсказаниях моделей, создание систем для сравнения анализа, проведенного разными способами, а также анализ работы аналитиков с инструментами, например с Jupyter notebooks.

Визуализация неопределенности

Визуализация неопределенности — одна из особенностей, которые отличают научную графику от презентационной и бизнес-визуализации. Довольно долго ключевым в последних считался принцип минималистичности и фокуса на основных трендах. Однако это приводит к чрезмерной уверенности пользователей в точечной оценке величины или прогноза, что может быть критичным, особенно, если мы должны сравнивать прогнозы с разной степенью неопределенности. Работа Uncertainty Displays Using Quantile Dotplots or CDFs Improve Transit Decision-Making анализирует, насколько способы визуализации неопределенности в предсказании для точечных графиков и кумулятивных функций распределения помогают пользователям принимать более рациональные решения на примере задачи оценки времени прибытия автобуса по данным мобильного приложения. Что особенно приятно, один из авторов поддерживает пакет ggdist для R с различными вариантами визуализации неопределенности.


Однако часто встречаются и задачи визуализации возможных альтернатив, например, для последовательностей действий пользователя в веб-аналитике или аналитике приложений. Работа Visualizing Uncertainty and Alternatives in Event Sequence Predictions анализирует, насколько графическое представление альтернатив на основе модели Time-Aware Recurrent Neural Network (TRNN) помогает экспертам принимать решения и доверять им.

Сравнение моделей

Не менее важный, чем визуализация неопределенности, аспект работы аналитиков — сравнение того, как — часто скрытый — выбор исследователем разных подходов к моделированию на всех его этапах может вести к различным результатам анализа. В психологии и социальных науках набирает популярность предварительная регистрация дизайна исследования и четкое разделение эксплораторных и конфирматорных исследований. Однако в задачах, где исследование в большей степени основано на данных, альтернативой могут стать инструменты, позволяющие оценить скрытые риски анализа за счет сравнения моделей. Работа Increasing the Transparency of Research Papers with Explorable Multiverse Analyses предлагает использовать интерактивную визуализацию нескольких подходов к анализу в статьях. По сути, статья превращается в интерактивное приложение, где читатель может оценить, что изменится в результатах и выводах, если будет применен другой подход. Это кажется полезной идеей и для практической аналитики.

Работа с инструментами организации и анализа данных

Последний блок работ связан с исследованием того, как аналитики работают с системами, подобными Jupyter Notebooks, которые стали популярным инструментом организации анализа данных. Статья Exploration and Explanation in Computational Notebooks анализирует противоречия между исследовательскими и объясняющими целями, изучая найденные на Github интерактивные документы, а в Managing Messes in Computational Notebooks авторы анализируют, как эволюционируют заметки, части кода и визуализации в итеративном процессе работы аналитиков, и предлагают возможные дополнения в инструменты, чтобы поддерживать этот процесс. Наконец, уже на CHI 2020 основные проблемы аналитиков на всех этапах работы, от загрузки данных до передачи модели в продакшн, а также идеи по улучшению инструментов обобщены в статье What’s Wrong with Computational Notebooks? Pain Points, Needs, and Design Opportunities.


Подводя итог

Завершая часть обсуждения «чем же занимаются в HCI» и «зачем специалисту в HCI знать машинное обучение», хотелось бы еще раз отметить общий вывод из мотивации и результатов этих исследований. Как только в системе появляется человек, это сразу приводит к возникновению ряда дополнительных вопросов: как упростить взаимодействие с системой и избежать ошибок, как пользователь меняет систему, отличается ли реальное использование от запланированного. Как следствие, нужны те, кто понимает, как устроен процесс проектирования систем с искусственным интеллектом, и знают, как учесть человеческий фактор.

Всему этому мы учим на магистерской программе «Информационные системы и взаимодействие человек-компьютер». Если вы интересуетесь исследованиями в области HCI — заглядывайте на огонек (сейчас как раз началась приемная кампания). Или следите за нашим блогом: мы еще расскажем о проектах, над которыми студенты работали в этом году.

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

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

Появились идеи естественно-интуитивного взаимодействия человека с компьютером ( perceptual computing ), предполагающие способность вычислительных устройств понимать человека через физический контакт, словесные команды и жесты. Разработчикам программного обеспечения использование новых идей позволит создавать приложения, вносящие ощущение присутствия и погружения. Такого эффекта можно добиться реализацией возможностей отслеживания жестов рук и пальцев, анализа лица (мимики), распознавания голоса (речи), отслеживания перемещений 2D/3D объектов. Умение разрабатывать такие приложения в ближайшем будущем будет востребовано. Данный курс предлагает изучить инструмент Intel Perceptual Computing SDK и научиться с его помощью добавлять элементы естественно-интуитивного взаимодействия в свои приложения. В дополнение к бесплатному комплекту средств разработки Intel разработчикам понадобится интерактивная камера Interactive Gesture Camera производства компании Creative . Эта камера очень похожа на бесконтактный игровой контроллер Kinect от Microsoft, только меньше по размеру. Но главная разница между этими устройствами состоит в том, что интерактивная камера от Creative разработана для работы на более близких дистанциях и поэтому может распознавать движения пальцев. Корпорация Intel использовала возможности этой камеры в своем SDK , позволяющем разработчикам создавать следующее поколение естественного, современного ПО с элементами (эффектом) присутствия.

История развития человеко-компьютерного взаимодействия

Идеи цифровых вычислительных машин начали развиваться еще в XVIII-XIX веках, компьютерные технологии стали доступны в середине XX века. Первые электронно-вычислительные машины были ориентированы, в первую очередь , на выполнение трудоемких расчетов и на взаимодействие со специалистами. Например, для первой электронной машины ENIAC (1943 г.) ввод программы выполнялся с помощью переключателей и гибких кабелей со штекерами, вставляемыми в нужные разъемы.

Взаимодействие человека и ЭВМ ENIAC (From IBM Archives)


Рис. 1.1. Взаимодействие человека и ЭВМ ENIAC (From IBM Archives)

В ЭВМ Mark I (1945 г.) уже использовались перфоленты с нанесенной на них программой, что несколько облегчило труд оператора. Перфоленты и перфокарты долго оставались носителями информации, которые использовались для хранения программ и ввода их в ЭВМ для исполнения.

Устройство чтения перфолент ЭВМ Mark I (From Harvard University Cruft Photo Laboratory)


Рис. 1.2. Устройство чтения перфолент ЭВМ Mark I (From Harvard University Cruft Photo Laboratory)

В 1960 году Дж.К.Р. Ликлайдер (J.R.Licklider) выдвинул идею "симбиоза человека и компьютера" – объединения человеческого интеллекта и вычислительной техники для управления информацией. Предложил промежуточные цели, достижение которых предполагает реализацию данной идеи.

  • разделение времени компьютера между пользователями;
  • электронный ввод/вывод символьной и графической информации;
  • интерактивные системы реального времени для обработки информации и программирования;
  • крупномасштабные системы хранения и поиска информации.
  • координация объединения разработчиков для проектирования и программирования больших систем;
  • способность ЭВМ распознавать речь оператора;
  • способность ЭВМ распознавать рукописные тексты;
  • возможность использования светового пера, в качестве устройства ввода координат и указки (световое перо – светочувствительное устройство, позволяющее выбрать точку экрана дисплея, указывая на нее).
  • понимание ЭВМ естественного языка;
  • способность ЭВМ распознавать речь произвольного пользователя;
  • эвристическое программирование, т.е. "интеллектуализация" работы программы путем придания ей большей гибкости и эвристичности "мышления".

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

В 1963 году Айвен Сазерленд (Ivan Sutherland) разработал SketchPad – графический комплекс, прообраз будущих САПР , оказавший огромное влияние на формирование базовых принципов графических пользовательских интерфейсов. Основные идеи: использование объектно-ориентированной модели, любой нарисованный элемент представлялся n-компонентной структурой, его можно было копировать, перемещать, поворачивать или масштабировать, сохраняя основные свойства. Впервые были реализованы алгоритм прорисовки окон и алгоритм обрезки.

Еще одно важное имя в истории развития вычислительной техники: Дуглас Энгельбарт (Douglas C. Engelbart). В середине 60-х годов командой Дугласа Энгельбарта разработана среда NLS (oN-LineSystem), включающая в себя принципиально новую операционную систему, универсальный язык программирования , электронную почту, разделенные экраны телеконференций, систему контекстной помощи. Представлен прототип т.н. WIMP-интерфейса, т. е. интерфейса, использующего понятия окон ( windows ), пиктограмм (icons), меню (menus) и указателей (pointers), являющихся ключевыми и для сегодняшних графических пользовательских программ и сред. Среда широкого распространения не получила, но как побочный эффект проекта NLS был изобретен первый манипулятор типа мышь , без которого сложно представить любое взаимодействие с компьютером в современной действительности. К оконной среде NLS существующие манипуляторы (джойстики, световые перья и прочие) категорически не подходили, в этой области было проведено целое исследование, итогом которого и стала мышка.

Первая мышь (1964 год)

В конце 60-х годов XX века, технологический уровень позволил задумываться о создании персонального компьютера. В 1969 году американский математик Алан Кей защитил докторскую диссертацию, в которой разработал принципы создания персонального компьютера. С 1971 года Алан Кей занимался теоретической разработкой прототипа персонального компьютера, названного им Dynabook, в исследовательском центре фирмы Xerox в Пало-Альто (Palo Alto Research Center , PARC ). Этот компьютер , не превышающий размер блокнота, должен был обладать возможностями для обработки текстов и графической информации, а также служить средством связи с удаленными базами данных. Кроме того, этот компьютер должен был быть недорогим и доступным широкому кругу покупателей.

Концепция Dynabook описывала то, что сейчас известно как ноутбук, или планшетный ПК. Для Dynabook был спроектирован и смоделирован графический интерфейс Star GUI , одним из основных принципов управления новым компьютером должен был стать не ввод команд с клавиатуры, а выбор их с помощью "мыши" из предлагаемого меню . Графический интерфейс Star стал прототипом интерфейса Macintosh.

Несмотря на то, что графический интерфейс был описан еще в начале 70-х годов, а идеи появились еще раньше, в реальности взаимодействие пользователя с ЭВМ обеспечивалось за счет, так называемого, интерфейса командной строки ( CLI , Command Line Interface ). В процессе взаимодействия человек вводил команды, а компьютер реагировал соответствующим образом, разумеется, ни о каком дружественном интерфейсе речи не шло. Пользователь должен был точно знать, какая команда приведет к выполнению нужных ему действий и правильно ввести ее в командную строку.

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

Человеко-компьютерное взаимодействие ( HCI , Human- Computer Interaction ) – это дисциплина, имеющая дело с проектированием, оцениванием и реализацией интерактивных вычислительных систем для использования человеком, а также с изучением основных явлений, связанных с этими вопросами.

Такое определение было сформулировано в отчете группы, ответственной за разработку рекомендаций к образовательной программе в области человеко-компьютерного взаимодействия (август, 1988). Группа была сформирована из членов ассоциации по вычислительной технике ( ACM , Association for Computing Machinery ). ACM и IEEE Computer Society, крупнейшие научно-профессиональные сообщества специалистов по вычислительной технике, играют ключевую роль в разработке образовательных программ в области компьютерных наук. После этого отчета модуль HCI (человеко-компьютерное взаимодействие) включается как обязательная часть в курс компьютерные науки.

Читайте также: