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

Тренды
4577
0
Михаил Мальцев, руководитель проекта перевода RS-Bank V.6 на Postgres Pro, департамент банковского ПО RS-Bank, R-Style Softlab
Большинство критически важных банковских систем работают на иностранных СУБД — это факт. Значит ли это, что, чтобы перейти на использование российских СУБД, нужно создавать новые автоматизированные банковские системы (АБС)? Вовсе нет! Автор нашей статьи докажет, что для реализации стратегии импортозамещения можно не отказываться от привычного функционала. Также он даст ряд полезных советов банкам, планирующим проект обновления АБС, какую предварительную работу им нужно провести, чтобы процесс перехода на российский системный софт был проще и быстрее.



Почему банки не торопятся «импортозамещаться»?

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

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

  1. Замена АБС — это дорогостоящий, сложный и довольно длительный процесс. Если текущая АБС устраивает всех, а новая не содержит важной сейчас бизнес-функциональности, то проект замены АБС превращается в расходный внутренний проект компании.
  2. Всем известная устойчивость Oracle дает возможность несколько лет стабильно работать без сбоев даже при отсутствии технической поддержки от вендора. 
  3. Свою роль играет также приверженность имеющемуся функционалу и платформе — многие хотели бы получить его же в реализации на новом технологическом стеке, чтобы не пришлось переучивать персонал и привыкать к новому ПО, что всегда чревато определенным стрессом. 

Мультиплатформенность как способ перевести АБС на новый стек технологий

Флагманский продукт нашей компании — АБС RS-Bank V.6 — функционирует на СУБД Oracle. Эта система нашла своего потребителя и хорошо себя зарекомендовала при работе в высоконагруженном режиме. Кроме российских банков в числе ее пользователей немало кредитных учреждений из стран СНГ, и их имеющийся стек вполне устраивает. А вот для отечественных пользователей нам необходимо было найти решение по импортозамещению. И тогда пришла идея сделать нашу АБС мультиплатформенной. 


В чем суть проекта?

Итак, что мы имеем? У нас есть система, которая работает на СУБД Oracle, в операционной системе MS Windows, с использованием офисного пакета MS Office. Наша цель — все три компонента АБС (терминальную часть, сервер приложений и базу данных) научить работать еще и на импортонезависимом стеке технологий. В качестве платформы для этого мы выбрали СУБД Postgres Pro, операционную систему Astra Linux с установленным ПО WINE@Etersoft, а для выпуска отчетов — программу Р7-Офис — все эти решения зарегистрированы в реестре РосПО.  

Тогда на выходе мы получим все ту же АБС RS-Bank V.6, но обладающую свойством мультиплатформенности — одинаково эффективно работающую и на СУБД Oracle, и на СУБД Postgres Pro. Достаточно при инсталляции выбрать нужный стек.  

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

Что предстоит сделать, и что уже сделано в рамках проекта?

Остановлюсь подробнее на том, что же собой представляет проект перевода АБС на новые технологические рельсы и по каким направлениям ведутся работы. 

1. Конвертация хранимых процедур. В СУБД Oracle есть хранимые процедуры, написанные на PL/SQL. С помощью созданного нами специального конвертора они в автоматическом режиме переводятся на Postgres Pro, то есть, по сути, мы делаем их аналоги на PG/SQL. Если какую-то часть хранимого кода перевести из одной базы данных в другую не удается, то для них мы либо дорабатываем конвертор, либо переписываем запросы вручную. 

2. Чтобы наша АБС могла работать на Postgres Pro, необходимо доработать SQL-код, который используется непосредственно в коде на C++ и в макросах на RSL. Проще говоря, вся интерфейсная часть, задействованная при взаимодействии с базой данных, проверяется на корректность конвертации SQL-кода на Postgres Pro и при необходимости дорабатывается вручную. Однако это касается только сложных запросов, потому что простые запросы преобразуются конвертором запросов с Oracle на Postgres Pro корректно. 

3. Отдельно разрабатывается конвертор БД, выполняющий перенос данных из базы Oracle в базу Postgres Pro. Не секрет, что эти СУБД существенно различаются. Поэтому в конвертор БД заложен алгоритм, преобразующий различные сущности базы данных на Oracle в необходимые сущности БД на Postgres Pro. Этот конвертор клиенты будут использовать лишь однажды — непосредственно при переходе с одной СУБД на другую. Сделать это они могут либо самостоятельно, либо с привлечением нашей проектной команды. 

4. Следующий шаг — замена операционной системы. Она потребовала небольшой доработки инструментального кода, потому что наша АБС на Astra Linux использует программное обеспечение WINE@Etersoft. С помощью этого ПО, которое является альтернативной реализацией Win23 API функций, Windows-приложения работают на Astra Linux. 

5. Инструментальная доработка понадобилась и для того, чтобы системные отчеты могли выпускаться и открываться в Р7-Офис. 

6. На текущий момент конвертор БД готов, сейчас выполняется полный цикл тестовых испытаний. Проверяем, корректно ли переносятся данные в таблицах, соответствуют ли типы данных нужным и т.д. Нам предстоит выполнить функциональное ручное тестирование, автоматизированное тестирование, нагрузочное тестирование, многопользовательское тестирование, тестирование обратной совместимости на Oracle, чтобы в конце проекта мы могли утверждать, что наша АБС одинаково хорошо работает как на Oracle, так и на Postgres Pro. 

7. Чтобы систему можно было устанавливать и обновлять на разных СУБД, мы внесем соответствующие изменения в инсталлятор и апгрейдер. И, конечно же, доработаем веб-интерфейс, чтобы он корректно функционировал не только на Windows, но и на Astra Linux. 

Должен заметить, что работы по проекту идут весьма активно. Созданный конвертор для трансформации кода на PL/SQL в код на PG/SQL большинство языковых конструкций переводит в автоматическом режиме. 

Как банку подготовиться к переходу на импортозамещенную АБС?

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

Первое, чем нужно озаботиться, — это установкой на сервера банков необходимого ПО — Postgres Pro, Astra Linux, WINE@Etersoft, Р7-Офис. 

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

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

А вот кому готовиться и адаптироваться к новому ПО не придется, так это непосредственным пользователям системы — для них ничего не изменится, так как вся известная им функциональность АБС останется прежней.  

Перевод уже работающей АБС на новый стек банк сможет осуществить самостоятельно: для этого им достаточно будет запустить конвертор, который автоматически перенесет большую часть функционала из Oracle в Postgres Pro. Что же касается доработок самого банка, то для них наша команда либо адаптирует конвертор, либо окажет консультации в части необходимого изменения SQL-кода.  

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

Источник


Комментарии



Подписка на рассылку
Сортировать
Теги:
Все теги
Выберите интересующий Вас продукт компании
Любой продукт
Сортировать по году:
2015 2017 2018 2020 2021 2022 2023