Заметки из Зазеркалья

23.09.2015

Невизуальная доступность прикладных решений 1С:Предприятия

Реализовано в версии 8.3.8.1652.

Невизуальная доступность

Не все люди, работающие за компьютером, имеют хорошее зрение. Поэтому существует целый ряд средств и приёмов, которые облегчают работу за компьютером людям с плохим зрением. Многие из них реализованы на уровне операционных систем. Обычно они обозначаются как «специальные возможности». В большей или меньшей степени эти средства решают задачу удобства. Удобства пользования компьютером или программами. Некоторое время назад, например, мы рассказывали о доработках платформы для работы с нестандартным DPI. Эти доработки позволяют, как раз, сделать работу с программами 1С:Предприятия более удобными для некоторого круга пользователей.

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

С одной стороны, если посмотреть на профессии, которые осваивают незрячие специалисты, это профессии экономистов, менеджеров по персоналу, и даже бухгалтеров предприятий. С другой стороны, несмотря на то, что для выполнения этих задач могут использоваться самые разные программные продукты, в России и в странах СНГ в подавляющем большинстве случаев используются программы 1С:Предприятия 8.

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

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

В чём проблема

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

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

Для наглядности можно привести пару примеров. Как это выглядит сейчас, и как это «должно быть».

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

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


Из этих примеров становится понятно, что существующая версия 1С:Предприятия непригодна для невизуальной работы.

Доработка платформы

Программы экранного доступа не взаимодействуют с озвучиваемыми приложениями напрямую. Для своей работы они используют интерфейсы, предоставляемые операционной системой. Поэтому при реализации этой задачи мы, в первую очередь, занимались тем, что обеспечивали совместимость платформы 1С:Предприятия с Microsoft UI Automation. Microsoft UI Automation это один из основных механизмов ОС Windows, обеспечивающих невизуальную доступность прикладных интерфейсов.

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

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

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

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

Во-первых, эта функциональность реализована не для всех операционных систем, а только для ОС Windows, начиная с Windows XP.

Во-вторых, она работает не во всех клиентских приложениях, а только в толстом и тонком клиентах.

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

Пример работы

Ниже, на примере 1С:Бухгалтерии, показан небольшой фрагмент работы с прикладным решением без использования мыши и экрана компьютера. В примере открывается информационная база, создаётся новый контрагент, и выполняется одна задача. Навигация по интерфейсу осуществляется только с помощью горячих клавиш, и стандартных клавиш навигации TAB, Up и Down.

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


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

Рассказать друзьям: