Создание единого информационного пространства средствами TEKTON-Matrix
Объединение информационных потоков предприятия в единую информационную среду превращается сегодня из перспективного элемента повышения конкурентоспособности в фактор выживания. У предприятий возникла потребность в единой платформе, связывающей территориально распределенные информационные системы и предоставляющей инструмент для их эффективного управления.
Наличие нескольких несвязанных систем, удаленных пользователей и распределенной структуры информационного пространства создает проблему методического характера (рис. 1). Проблемы, связанные со сложностью сопровождения и развития информационной системы, необходимостью использования сложных решений и большого количества средств разработки — технологические. Но над всем этим довлеет человеческий фактор: для преодоления проблем требуются высококвалифицированные специалисты, владеющие необходимыми навыками и знаниями инструментальных сред разработки современных информационных систем. В явном виде проявляется конфликт между потребностью в решении задач определенного уровня и возможностями разработчиков. Выход заключается в развитии инструментария, дающего возможность разработчику сосредоточиться на бизнес-логике, а не на технологических аспектах. Одним из таких инструментальных средств является система TEKTON-Matrix.
Архитектура TEKTON-Matrix
TEKTON-Matrix — открытая инструментальная среда, позволяющая разрабатывать сложные, территориально распределенные системы сбора, хранения и обработки информации от физически удаленных серверов баз данных, работающих с разными форматами и интерфейсами. Эта среда изначально создавалась для интеграции и развития сложных информационных систем. В ее основу положены технологии COM, DCOM, MIDAS, XML, SOAP и др.
С помощью TEKTON-Matrix программные решения реализуются доступными большинству пользователей средствами: достаточно хорошо ориентироваться в собственной предметной области и знать VBA. Основу этих средств составляют визуальные дизайнеры: дизайнер структуры баз данных (таблицы, триггеры, ссылочная целостность); дизайнер SQL-запросов; дизайнер процедур (VB Script, Pascal, JavaScript, процедуры «1С» и т.д.); дизайнер бизнес-объекта (элемент системы, объединяющий данные в виде таблиц и запросов, процедуры, события независимо от интерфейсов); дизайнеры форм; дизайнер отчетов. Кроме того, в состав системы включены визуальные средства администрирования баз данных и бизнес-логики (в том числе, определение прав доступа), документирование работы с базой данных, настройка индивидуальных меню и интерфейсов и т.д.
Рис. 2. Внутренняя структура TEKTON-Matrix |
Внутренняя архитектура TEKTON-Matrix (рис. 2) разрабатывалась с учетом возможности расширения функциональности инструментария. Система ничего «не знает» о таблицах, формах и процедурах, а манипулирует объектами соответствующих типов. Базовые типы определяют функциональное назначение объекта: источник данных, набор данных, бизнес-объект, процедура, форма, отчет, прочие объекты. Конкретный тип реализует какой-либо базовый тип и полностью отвечает как за дизайн объектов этого типа, так и за их функционирование, причем в системе может быть несколько типов, реализующих один базовый тип. Таким образом, в системе может одновременно использоваться несколько разных отчетных механизмов или языков программирования.
Примеры решений
Системы, не связанные друг с другом
В процессе развития системы управления предприятия иногда возникает потребность на отдельных участках использовать те или иные программные средства, решающие какую-то одну узкую задачу. Такая ситуация порождает трудности у обслуживающих систему сотрудников ИТ-департаментов. Им требуется получить взаимосвязанные данные из различных, чаще всего не связанных друг с другом, систем. Такие данные необходимо определенным образом обрабатывать, используя сразу несколько различных источников. Ситуация обычно осложняется тем, что информационные системы, решающие задачи автоматизации различных направлений деятельности, используют данные из разных СУБД и разных форматов.
TEKTON-Matrix позволяет свести несколько не связанных друг с другом информационных систем в единый комплекс, позволяя им работать одновременно с несколькими гетерогенными источниками данных, находящимися на самых разных SQL-серверах. Соответствующий механизм работы поддерживается объектами специальных типов «источник данных» и «коннектор». Благодаря этому в одном бизнес-процессе могут присутствовать одновременно несколько таблиц из разных баз. Для интеграции с внешними системами на уровне бизнес-логики TEKTON-Matrix позволяет расширять набор базовых элементов; так, может появиться процедура, обеспечивающая выполнение бизнес-логики программы «1С». Для запуска удаленной процедуры служит специальный SOAP-сервер, отвечающий за всю логику обмена двух TEKTON-серверов. Объектная модель COM позволяет использовать внешние COM-серверы. Кроме того, благодаря компонентной архитектуре, в TEKTON-Matrix может быть встроен новый процедурный механизм, использующий бизнес-логику внешней системы через ее же интерпретируемый язык или набор специализированных команд.
Распределенная структура информационного пространства
Бизнес не стоит на месте: открываются новые филиалы, идет поглощение и объединение предприятий в холдинги. Обычно на предприятиях, входящих в новые образования, имеются собственные системы и базы данных. В подобных случаях возникают реальные сложности при синхронизации бизнес-процессов и данных территориально разнесенных подразделений. Как сделать так, чтобы данные, введенные в одном месте, сразу были доступны в других? Как добиться того, чтобы данные в системе были едины и актуальны?
ТЕКТОN-серверы, поддерживающие работу локальных приложений, могут взаимодействовать между собой по протоколу SOAP, что позволяет связать распределенные автономные системы в единую информационную среду. Интеграция возможна на двух уровнях. Первый — использование данных одновременно из нескольких источников или их извлечение напрямую либо из единой локальной сети, либо через SOAP-расширение TEKTON-Matrix. Указанный способ имеет существенные недостатки. Прежде всего, его нельзя использовать без детального знания структуры данных всех используемых систем. Кроме того, для записи в базы данных используемых систем необходимо знать все нюансы алгоритмов, по которым они заполняются. Поэтому данный способ используется в основном при чтении и лишь в случае детального знания структуры данных и алгоритмов их формирования — при записи информации. Второй уровень — использование объектов COM и ActiveX от сторонних разработчиков.
SOAP-расширение, реализованное в TEKTON-Matrix, позволяет использовать бизнес-логику, находящуюся на удаленном TEKTON-сервере, к которому в момент выполнения процедуры необходим доступ через Internet; при этом разработчику совершенно не нужно быть знакомым с транскрипцией SOAP. Аналогичный механизм, также основанный на SOAP, реализован в Axapta, однако разработчик должен хорошо ориентироваться в нем, как минимум, умея встраивать его в код приложения. Такой же механизм можно разработать и в Delphi, но для этого также надо хорошо разбираться в тонкостях SOAP.
В TEKTON-Matrix процедура пишется на одном из языков скриптов, а выполняется на сервере SOAP, для доступа к которому нужно лишь один раз при настройке приложения указать URL.
Мобильные пользователи
Многие популярные программы делового назначения либо не поддерживают работу удаленных и мобильных пользователей, либо накладывают ряд ограничений при использовании терминального сервера (необходимость запуска специального сеанса, а не конкретного приложения, высокий уровень трафика и т.д.). Кроме того, эти системы как правило ограничивают возможности разработчика (например, работают только с собственными решениями и бизнес-логикой, используют только Web-интерфейс и пр.).
Удаленный доступ в TEKTON-Matrix организуется по технологии TAXXI-Baikonur. На рабочее место при этом устанавливается только TAXXI Communicator, причем на удаленном рабочем месте пользователь видит точно такой же интерфейс, что и на стандартном. Для функционирования удаленных рабочих мест достаточно модемного соединения со скоростью 9600 бит/c, причем трафик будет меньше, чем при работе аналогичного Web-решения. Это преимущество наследуется от TAXXI.
Удаленные рабочие места с Windows-интерфейсом пользователю в TEKTON-Matrix предоставляются автоматически без каких-либо доработок, а другие платформы подключаются средствами TAXXI, Wев и WAP. Разработанная компанией Epsylon Technologies технология TAXXI-Baikonur позволяет создавать удаленные сверхтонкие клиентские места с нулевым администрированием. Пользователи через браузер работают с системой в удаленном режиме, не имея на своем рабочем месте ни базы данных, ни клиентского приложения. Для этого в TEKTON-Matrix имеется специализированное Web-расширение — COM-надстройка над Internet Information Server, позволяющая работать с TEKTON-Matrix через Web, автоматически генерируя HTML-страницы. Для обеспечения работы пользователей, использующих мобильные устройства в составе TEKTON-Matrix, имеется WAP-расширение. Интерфейсы для Web и WAP создаются дизайнерами форм с использованием уже существующей бизнес-логики. Разработчику же достаточно уметь работать с дизайнером визуальных форм и знать языковую среду TEKTON-Matrix.
Сопровождение и развитие закрытых информационных систем
TEKTON-Matrix упрощает решение задач сопровождения и развития, скрывая от разработчиков приложений сложность используемых технологий. Например, указание по использованию протокола SOAP сводится к указанию настроек сервера, а остальное создается визуальными дизайнерами TEKTON-Matrix. Предусмотрен ряд дополнительных инструментов сопровождения: настройка индивидуальных интерфейсов меню и прав доступа; автоматическое протоколирование изменений данных; администратор приложений, связывающий репозиторий и базы данных, на которые тот ссылается (при переносе нового модуля бизнес-логики в центральный репозиторий администратор автоматически создаст необходимую структуру таблиц в базах данных); средство обновления, при изменении версий инструментария изменяющее репозитории бизнес-логики. Существует механизм протоколирования изменений данных. Средствами TEKTON-Matrix можно создать новый интерфейс к имеющимся данным, прописать для них дополнительный алгоритм и развивать такую систему.
Благодаря визуальным интерфейсам скорость разработки приложения в среде TEKTON-Matrix оказывается выше скорости разработки при помощи традиционных средств. Возможность реализации собственных компонентов и расширений с их последующим использованием через TEKTON-Matrix добавляет гибкость. Дополнительные «мастера» и специализированные визуальные инструменты позволяют быстрее создавать многозвенные распределенные информационные системы. При создании приложения с использованием традиционных механизмов работы с распределенными базами данных разных типов разработчику потребуются знания всех задействованных технологий, что предполагает достаточно высокую квалификацию. Использование TEKTON-Matrix позволяет больше сосредоточиться на бизнес-логике, не отвлекаясь на тонкости настройки сложных технологий.
Гетерогенность
На многих предприятиях встает серьезная задача поиска компромисса между необходимостью использования новейших технологических решений и стоимостью технических средств. Система TEKTON-Matrix не требовательна к производительности клиентских рабочих мест и позволяет создавать информационные системы с многоуровневой архитектурой, организуя с помощью TAXXI-Baikonur выполнение бизнес-логики на серверах. Сервер приложений (TEKTON-Server) отвечает за выполнение бизнес-логики и взаимодействие с сервером баз данных. Сервер удаленного доступа (TEKTON Remote Server) обрабатывает всю бизнес-логику, которая отображается клиентским рабочим местом, оснащенным TAXXI.
Заключение
Платформа TEKTON-Matrix может быть использована для решения большого круга задач. Подготовленное решение для финансового планирования и бюджетирования демонстрирует достоинство базовой технологии: система открыта для развития и доработки средствами TEKTON-Matrix, любое рабочее место сможет работать в удаленном режиме, обеспечена работа через Internet, данные можно получить практически из любой учетной системы, из разных баз данных. Кроме того, в этом решении реализуется возможность построения распределенной системы, когда учетные системы филиалов или дочерних предприятий географически удалены от системы бюджетирования управляющей компании.
Планируется создать спектр прикладных решений-заготовок, разработать методики использования платформы в различных приложениях, расширить возможности инструментария средствами моделирования бизнес-процессов, создать дополнительные утилиты администрирования и ведения проектов.
Дмитрий Глямшин (glyamshin@tekton.ru), Виталий Ляпин (developer@tekton.ru) — сотрудники компании «Тектон».
Два примера
Средствами TEKTON-Matrix реализована схема работы с «1С», позволяющая создавать процедуры на внутреннем языке этой программы, исполнять которые будет главный модуль «1С». Это дает возможность реализовать распределенную систему, в которой в филиалах устанавливается «1С», а в центральном офисе — «ТЕКТОN-Предприятие». Справочники товаров, контрагентов, план счетов, аналитика, иная информация вводится в центральном офисе при помощи процедур TEKTON-Matrix; а на удаленных TEKTON-серверах средствами SOAP автоматически запускаются процедуры, формирующие такие же справочники.
На платформе TEKTON-Matrix создана система бюджетирования и финансового планирования. За счет механизмов одновременной работы с разными источниками данных можно на уровне данных (плановые/фактические показатели, справочники и т.п.) интегрироваться практически с любой учетной системой. Естественно, для этого потребуется сделать ряд доработок, но средствами самой TEKTON-Matrix. Эта возможность реализуется для СУБД Oracle и Sybase.