Виктор Гудков
VGoudkov@elco.ru

Действительно мобильные компьютеры появились совсем недавно - компактные, легкие, удобные, но… с ограниченной функциональностью. Среди них можно выделить "ручные" (hand-held), органайзеры и устройства типа Palm. В этой статье мы будем называть их мобильными устройствами - подразумевая под этим любой компьютер, который можно носить с собой и который предназначен для выполнения специфических операций (например, мобильные телефоны, навигаторы GPS, карманные переводчики, считыватели штрих-кодов и т.д.). Все мобильные устройства построены на микропроцессорах и реализуют программную логику. Тем не менее каждое такое устройство представляет собой ограниченное уникальное решение, предназначенное для решения узкого круга конкретных задач и практически не расширяемое за его пределы.

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

Интеграция в корпоративные системы

Сервер мобильных устройств от компании Centura Software* (http://www.centurasoft.com), eSNAPP - это первый программный продукт, позволяющий интегрировать мобильные устройства в корпоративные информационные системы. eSNAPP - это сервер под управлением Windows NT, поддерживающий связь с различными мобильными устройствами, которые, в свою очередь, функционируют под управлением компактного клиентского ПО. Если eSNAPP используется совместно с беспроводной передачей данных, данные на мобильном устройстве никогда не устаревают. Кроме того, такое решение увеличивает безопасность, поскольку важные данные теперь могут храниться на защищенном сервере, а не быть распределенными по сотням мобильных устройств.


*После разделения Centura Software в начале этого года продукты для мобильных и беспроводных систем остались за той частью компании, которая теперь носит имя Mbrane (http://www.mbrane.com). - Прим. ред.

Функционирование eSNAPP

Модель мобильной корпоративной информационной системы от компании Centura состоит из трех слоев.

  1. Слой мобильных устройств, представленный приложениями, работающими на платформе Palm, Windows CE, PocketPC, а также приложениями для Linux и Windows 9x/NT/2000.
  2. Слой сервера eSNAPP, работающего под управлением Windows NT/2000 и обеспечивающего связь между устройствами и корпоративными системами предприятия.
  3. Слой существующей бизнес-логики предприятия, представленный серверами корпоративных баз данных и репозиториями бизнес-логики.

Fig.1 Рис. 1. Схема мобильной корпоративной информационной системы.

Рассмотрим эту модель более подробно.

В настоящее время программисты разрабатывают для мобильных устройств приложения, использующие библиотеки устройств. Эти библиотеки могут использовать, а могут и не использовать слой коммуникации TCP/IP. Клиентская часть встраивается между приложением и библиотеками ОС и обеспечивает набор дополнительных функций. Эти функции могут использоваться приложениями для связи с сервером eSNAPP через слой коммуникации TCP/IP.

Одна из важнейших возможностей сервера eSNAPP - обеспечение динамического доступа к корпоративным БД путем интегрирования интерфейса ODBC - стандартного компонента Windows NT, обеспечивающего приложениям доступ к различным базам данных (рис. 2). Благодаря использованию ODBC eSNAPP предоставляет приложениям, выполняющимся на устройствах, доступ к обычным базам данных, источникам данных XML и системам ERP/MRP -- таким, как SAP, PeopleSoft и Baan.

Fig.2 Рис. 2. Схема доступа приложений к различным видам данных.

Вторая ключевая особенность eSNAPP - его способность обеспечивать мобильным устройствам доступ к существующей бизнес-логике предприятия, при условии, что она инкапсулирована в бизнес-объекты по спецификации Microsoft COM (Component Object Model). Интерфейс к COM-объектам - стандартный компонент Windows NT Server. Он обеспечивает интерфейс для приложений, обращающихся к многократно используемой бизнес-логике. За счет использования этого стандарта сервер eSNAPP позволяет устройствам использовать те же самые компоненты, что и в клиент-серверных или браузер-ориентированных приложениях. Например, существуют COM-интерфейсы к таким приложениям, как SAP и Baan.

Fig.3 Рис. 3. Схема доступа к бизнес-логике предприятий.

Но самая важная особенность eSNAPP - его способность обеспечивать асинхронный обмен сообщениями между клиентскими приложениями. Рассмотрим это свойство подробнее.

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

Fig.4
Рис. 4. Уведомление клиентов о событиях.

Сервер eSNAPP позволяет мобильным устройствам подключаться к корпоративным ресурсам по беспроводным сетям. Одна из особенностей таких сетей состоит в том, что данные, передаваемые без предварительного шифрования, могут быть легко перехвачены. Чтобы избежать такого развития событий, в Centura eSNAPP используется патентованная технология CenturaGarde, основанная на алгоритме шифрования TripleDES с длиной ключа 128 бит.

В настоящее время наиболее распространены следующие способы подключения.

  • кабельное или через инфракрасный порт. Как правило, все необходимое оборудование для организации подключения поставляется вместе с мобильными устройствами, что обеспечивает низкую стоимость развертывания сети. Недостаток этого типа подключения - ограниченная мобильность;
  • подключение по сетям RF. Они обеспечивают широкую полосу пропускания (1-11 Мбит/с) и поддерживаются большим количеством устройств. Однако развертывание сети RF гораздо сложнее, чем в случае с ИК-доступом. Данные, передаваемые по сетям RF, могут быть легко перехвачены (в eSNAPP использование технологии шифрования данных CenturaGarde позволяет предотвратить несанкционированное использование информации).
  • подключение по сотовым сетям. Такой тип подключения позволяет задействовать существующую инфраструктуру. Развертывание сети гораздо проще, чем сети RF, а дальность связи ограничена только площадью покрытия сотовой сети. Существенный недостаток сети, развернутой поверх сотовой инфраструктуры, - ее ограниченная пропускная способность;
  • подключение по спутниковым сетям. Это позволяет снять все ограничения на дальность связи. Но существенный недостаток подключения по спутниковым сетям - высокая стоимость оборудования и передачи информации.

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

 

Спецификации eSNAPP

Поддерживаемые БД

  • SQLBase 6.x и выше
  • Oracle 7.x и 8.x
  • Microsoft SQL Server 6.5 и выше
  • Informix 7.x и 9.x
  • Computer Associates Ingres II
  • ODBC
  • Lotus Notes 4.11a, 4.5 (только OLE DB)

Требования к серверу

  • Intel Pentium
  • 64 Мбайт памяти
  • 5 Мбайт на жестком диске
  • Установленный eSNAPP сервер (около 3,5 Мбайт)
  • Windows NT 4 (с SP4) или Windows 2000

Требования к клиенту

  • Windows CE (SH3 или MIPS) 2.0, 2.1, PocketPC или совместимые
  • Palm III, V, VII или совместимое устройство
  • Mobile Linux
  • Установленный клиент eSNAPP (около 120 Кбайт)

Требования к месту для разработчика

  • Intel Pentium
  • 64 Мбайт памяти
  • 1 Гбайт на жестком диске
  • Среда для разработки GUI (Metrowerks, Microsoft Visual C++)
  • Компоненты разработки eSNAPP