Система банкомата и способ ее осуществления

Иллюстрации

Показать все

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

Реферат

ОБЛАСТЬ ТЕХНИКИ

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

ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ

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

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

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

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

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

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

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

Были разработаны прикладные программы для банкоматов с использованием множества различных операционных систем, например, "Microsoft® Windows® NT" фирмы "Майкрософт" и "IBM® OS/2®" фирмы "АйБиЭм". Кроме того, для каждой целевой операционной системы может быть использовано более одного типа инструментальных средств разработки прикладных программ или версий инструментальных средств. Например, для операционной системы "Microsoft® Windows® NT" при создании прикладных программ для банкоматов могут быть использованы различные компиляторы языка C++, выпущенные компаниями "Майкрософт" (Microsoft®), "АйБиЭм" (IBM) и другими поставщиками инструментальных средств.

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

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

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

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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