Cегодня уже нельзя сказать, что информатизация различных сфер жизни общества у нас лишь набирает обороты. Например, банковский сектор, куда информационные технологии пришли раньше, чем в другие области, уже набрал солидный опыт внедрения как зарубежных, так и отечественных автоматизированных систем. Уже пройден путь, о котором можно написать “Историю создания АБС (автоматизированной банковской системы)” с подзаголовком “Не было бы счастья, да несчастье помогло, или Как отсутствие в начале 90-х годов развитых отечественных АБС способствовало тому, что сегодня в ряде московских банков установлены системы, реализующие самые передовые технологии”.
Место действия - московский коммерческий банк (КБ) “ДиалогБанк”, который, решив в 1993 г. серьезно заняться информатизацией своей деятельности, приобрел ПО BankMaster фирмы Kindle Banking Systems (Ирландия). Оно построено на основе индексных файлов и не включает в свой состав реляционной СУБД. Можно сказать, что BankMaster представляет собой клиент-серверную систему, в ней клиентское ПО, установленное на рабочих местах, обращаются за данными на сервер с помощью низкоуровневых запросов. “Скорее всего, когда-то была система для мэйнфреймов, которую перенесли на Unix-платформу, - рассказал Сергей Севрюгин, вице-президент КБ “ДиалогБанк”. - В общем, не писк моды, но нам понравилась функциональность продукта”.
Надо сказать, что процесс практического формирования концепции АБС в сети КБ “ДиалогБанк” проходил параллельно с развитием отечественной технологии создания банковских систем. На тот момент, когда банк выбирал, какую банковскую систему приобрести, наиболее развитой среди отечественных была разработка фирмы “Диасофт”, однако по своим возможностям она уступала конкурирующей с ней системе ирландской фирмы.
В процессе внедрения ПО BankMaster обнаружилось, что часть его функций, касающихся особенностей российской клиринговой системы (например, расчеты через РКЦ), генерации транзакций для международной системы банковских расчетов SWIFT и отчетных документов для центрального банка РФ, придется реализовывать самостоятельно.
Подсистема, написанная программистами банка, оказалась в конечном варианте достаточно универсальной для обработки сообщений и генерации транзакций в соответствии с содержанием документа. По словам Сергея Севрюгина, она способна работать в условиях неточной информации, например с ошибками в платежных документах. Ведется статистика по всем обращениям клиентов и всем ошибкам, когда-либо допущенным ими при заполнении документов. Эта информация используется при расчете специальной метрики, с помощью которой вычисляется наиболее вероятный правильный вариант заполнения документа. В очень сложных случаях к принятию решения привлекается человек.
В процессе разработки данной подсистемы был разработан свой язык высокого уровня для создания и редактирования форматов документов, а также для автоматического их разбора. Однако что делать с документами после обработки? “Нужна база данных, причем не реляционная, а иерархическая, - рассказал г-н Севрюгин, - поскольку в любой информационной банковской системе имеется по крайней мере три уровня иерархии”. Такую базу данных можно создать на основе СУБД Oracle, если несколько доработать стандартный язык запросов SQL для того, чтобы он мог осуществлять выборку данных из иерархической БД. Так в составе системы появился язык Meta-SQL, а через некоторое время была разработана еще одна подсистема - GIM*Disposal, позволяющая из BankMaster формировать исходящие сообщения.
После этого команда разработчиков АБС из КБ “ДиалогБанк” приступила к решению более крупной задачи, а именно к улучшению производительности всей ИС. Работа только на уровне SQL очень сильно нагружает сеть, и одна из возможностей устранения этой неприятности заключается в отказе от двухуровневой системы клиент - банк. Двухуровневая архитектура АБС, остающаяся у нас достаточно популярной и по сей день, подразумевает распределение данных между сервером и клиентскими рабочими местами, которые обращаются с запросами на сервер, если они нуждаются в каких-либо данных.
“На западном рынке тогда уже появились АБС с трехуровневой архитектурой, реализуемой на основе мониторов транзакций, - отметил г-н Севрюгин. - В отличие от двухуровневой архитектуры в этом случае все данные хранятся на сервере и доступны всем запросам. Кроме того, не требуется повторных инсталляций одного и того же ПО, запускаемого на рабочих местах”. Так в составе АБС появился монитор транзакций Tuxedo фирмы BEA System.
Главная отличительная особенность любого монитора транзакций, по мнению г-на Севрюгина, заключается в том, что он “работает как функция, т. е. не способен сохранять состояние системы, что, однако, часто бывает необходимо”. Значит, архитектура АБС должна быть расширена еще и в сторону поддержки объектно-ориентированной обработки данных.
Фирма BEA объявила о подобной разработке под кодовым названием Aciberg. В ходе реализации проекта (он должен быть завершен в 1998 г.) создается продукт, который встраивает в Tuxedo поддержку архитектуры CORBA. В ожидании этого продукта “ДиалогБанк” применяет два продукта фирмы Iona: объектный монитор транзакций OTS (Object Transaction Service) и ПО Orbix, реализующее архитектуру CORBA.
Кроме того, была разработана собственная подсистема шифрования с открытым ключом. К этому моменту разработчики поняли, что дальнейшие работы над системой надо поставить на рельсы современной и эффективной технологии программирования. С тех пор в КБ “ДиалогБанк” используют технологию OMT (Object Modeling and Technic - объектно-ориентированная технология разработки ПО), представляющую собой стратегию получения программного кода, начиная с составления описания объектов.
По мнению г-на Севрюгина, тандем OTS и Orbix реализует открытый подход, обеспечивающий поддержку любой аппаратной платформы. “Судя по всему, можно считать, что в нашем банке произошло одно из первых удачных внедрений этого подхода в России”, - считает он.
Тел. КБ “ДиалогБанк”: (095) 244-8960. 4
Елена Покатаева
В истории объектно-ориентированных технологий можно выделить три этапа:
- Сначала появились языки программирования
Си и Си++.
- Затем были разработаны технологии OMT и CORBA, расширяющие понятие объектного подхода за пределы языка программирования.
- Сегодня пришло время говорить о том, что вся информационная система в целом стала объектно-ориентированной, так как к технологии программирования на основе объектов добавились объектно-ориентированные базы данных (Informix уже выпустила такой продукт, Oracle вот-вот сделает это).