Эдуард Каган, Егор Богословский :: User Experience Russia 2010

Эдуард Каган, Егор Богословский


Эдуард Каган
Место в команде: team-lead команды, человек основавший teamX72, проджект-менеджер проекта hand-talking. Разработчик подсистемы аудио сопровождения.
Опыт: начал заниматься программированием во втором классе. За 12 лет пробовал себя в разных проектах, начиная с участия в разработках, как простого программиста, до формирования своей команды и запуска своих проектов.
Сфера интересов: нейронные сети, системы, построенные на нечётких множествах.
Мечта: приложить руку к созданию, «машинного интеллекта».


Егор Богословский
Место в команде: проджект-менеджер проекта Ideal Symphony, разработчик SilverLight и .Net приложений, также выполняет специалиста по внешним связям и HR-консультанта команды.
Опыт: Разработчик модулей на базе платформы Hand-talking. Активное участие в командных проектах, создание эффективного концепта.
Сфера интересов: распределённые системы, новейшие веб-решения, embed-системы, изыскания в области новых языков программирования.
Мечта: участие в создании эффективной образовательной системы.

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

1. Вступление
За прошедшие 30 лет, произошел огромный скачок в области информационных и компьютерных технологий. Сегодня, практически все программы имеют визуальный, интуитивно понятный для пользователя интерфейс. Но помимо обыкновенных пользователей, существуют люди с ограниченными возможностями, для которых компьютерные технологии – это способ значительно облегчить жизнь. И, несмотря на то, что существующие технологии позволяют пусть и не полностью, но хотя бы частично решить данную проблему – разработок практически не ведется, а те, что есть – неудобны, дорогостоящи или вообще неприменимы.
Условно все эти решения можно разделить на две категории: программные и аппаратные. Первые – это экранные дикторы, абсолютно не мобильные и зависимые от клиентского компьютера, требующие посторонней помощи в установке, настройке и обучении. Последние – дисплеи брайля – слишком дорогостоящи (цена такого устройства составляет 2000$ за самый дешевый вариант).
Что касается сети Интернет – то ресурсов, адаптированных под людей с отсутствием зрительной функции, просто нет. Таким образом, почти для 315 миллионов слабовидящих и слепых людей в мире Интернет, на сегодняшний день, является непозволительной роскошью. Используя преимущества современных информационных технологий, командой teamX72 было разработано решение, которое уже сейчас находится на стадии внедрения в организации, работающими со слепыми людьми.

2. Методы и способы решения
Прежде всего, каким образом слепой человек может взаимодействовать с информацией?
В 1829 году, Луи Брайль разработал используемый до настоящего времени во всём мире рельефно-точечный шрифт незрячих, получивший название в честь своего создателя – шрифт Брайля.
Для изображения букв и цифр в шрифте Брайля используются 6 точек, расположенных в два столбца, по 3 в каждом. Одной из особенностей шрифта Брайля является то, что текст пишется справа налево, затем страница переворачивается, и текст читается слева направо.
Нумерация точек при чтении идёт сверху вниз по столбцам (рисунок 1). Нумерация точек при записи идёт в обратном порядке — сначала по правому столбцу, затем по левому. Наличие или отсутствие точек (проколов) в ячейке дает определенный символ. Всего в шрифте Брайля существует 63 различных символа. На рисунке 2 показан пример символа в шрифте Брайля


Рисунок 1. Нумерация точек шрифта Брайля при чтении

Рисунок 2. Буква “T” в шрифте Брайля

Язык Брайля достаточно сложен для начинающих, поэтому в настоящее время существует еще одна разновидность брайлевого шрифта – инвертированный Брайль. Единственное его отличие в том – что текст после написания не нужно переворачивать, символы печатаются слева направо и также читаются.
За время существования компьютеров появился еще один класс незрячих пользователей – пользователи, владеющие методом десятипальцевого ввода, то есть работе на обычной компьютерной клавиатуре.
Перед командой была поставлена задача – дать пользователю возможность использовать все эти способы ввода информации. На стандартной клавиатуре шрифт Брайля не предусмотрен, поэтому единственный способ его воспроизвести – эмулировать с помощью существующих клавиш. В качестве таких клавиш были выбраны клавиши S,D,F,J,K,L, эмулирующие ячейки 1-6 (рисунок 3). Именно эти клавиши были выбраны потому, что на всех современных клавиатурах, на клавишах F и J есть насечки – то есть эти клавиши можно без проблем отличить от других. Эмуляция выше перечисленных клавиш производится с помощью языка Javascript. Происходит эмуляция по следующей схеме: пользователь нажимает клавишу, после чего система перехватывает код нажатой клавиши, сравнивает его со словарем, и транслирует его в некоторый код, означающий ячейку брайлевого шрифта. Далее информация по протоколу SOAP передается на обработку в ядро.
Стоит сказать, что помимо основных символьных клавиш, в системе присутствуют также и специальные «горячие клавиши» (рисунок 4).


Рисунок 3. Рабочие клавиши пользователя

Рисунок 4. Символы, эмулирующие рабочие клавиши пользователя

Второй проблемой, возникшей перед командой, стал вывод информации. Опять же, обычная клавиатура не сможет вывести точки, чтобы пользователь мог их прочесть – такую возможность предоставляют только дисплеи Брайля, цена которых, как говорилось выше, достаточно высока. Единственный способ вывести информацию пользователю – это звук. Специально для данной цели в систему был введен сервис TTS&FS. Синтез звука производится встроенными средствами Windows, а именно Microsoft Speech API 5.0

В общем виде сервис работает по следующему алгоритму:

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

Вывод звука производится плеером, написанным с применением Flash. Благодаря существующей архитектуре, команде в конечном итоге удалось добиться рекордной скорости генерации аудио потока, 1000 звукосимволов менее чем за 1 секунду.
После проведения опроса среди конечных пользователей, в число приоритетных задач, поставленных перед командой, стало предоставление пользователю максимальной мобильности. Отчасти, описанная выше архитектура решает проблему мобильности – пользователь может работать с системой на любом компьютере, имеющем колонки и доступ в интернет. Но компьютер не всегда может оказаться под рукой. Необходимо, чтобы пользователь мог использовать систему даже в условиях отсутствия компьютера, например с помощью мобильного телефона или КПК.
К сожалению, большинство современных мобильных операционные систем (в первую очередь браузеры этих ОС) с трудом поддерживают работу с flash, да и работа с протоколом SOAP во многих из них осложнена. Поэтому, в систему была внедрена поддержка RESTful сервисов и написано небольшое дополнение для мобильных устройств средствами мобильного .NET Framework. Запрос, отправленный с мобильного устройства, посредством HTTP заголовков передается на передачу в ядро, после чего, обработанная информация возвращается в мобильное приложение. Архитектура проекта приведена на рисунке 5.


Рисунок 5. Архитектура проекта

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


Рисунок 6. Мобильное приложение Hand-talking

На данный момент в системе поддерживается два языка: русский и английский, но, в целом, количество языков, с которыми способна работать система – неограниченно. В любой момент пользователь может переключить язык на необходимый с помощью «горячей» клавиши.
Необходимо заметить, что при работе с системой, страницы не перегружаются, погрузка осуществляется динамически, благодаря использованию AJAX. Во-первых, это частично ускоряет работу системы, избавляя пользователя от ненужного ожидания. Во-вторых, это придает системе некоторый образ целостности, по сути, перед вами находится самое обычное приложение, но только в среде Web.

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

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

5. Литература
[1] Магазин товаров для слепых ООО «Невский берег» . [Web resource]. – URL: http://www.nbb.spb.ru/
[2] Freedom Scientific – Магазин товаров и услуг для слепых людей [Web resource]. – URL: http://www.freedomscientific.com
[3] WebAnywhere – К сожалению не законченная «заброшенная» разработка для слепых [Web resource]. – URL: http://webanywhere.cs.washington.edu/beta/
[4] Институт профессиональной реабилитации «РЕАКОМП» [Web resource]. – URL: http://www.rehacomp.ru/

Share and Enjoy:
  • Print this article!
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks