Миграция данных в СИЭР: как перенести информацию из унаследованных систем без потерь

22.09.2025
Поделиться
Ссылка скопирована

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

Цель публикации — поделиться имеющимся опытом, а также рассказать о разработанной в ФОРС методике миграции данных при переносе прикладных систем на платформу СИЭР. Особое внимание мы уделим следующим аспектам:

  • сохранение историчности данных
  • перенос информации в реестровую модель
  • минимизация рисков при переходе на новую платформу.
Екатерина Третьякова, старший аналитик компании «Форс – Центр разработки» (ГК Форс)
Третьякова.jpg


Денис Пичаев, руководитель отдела автоматизации бизнес-процессов компании «Форс – Центр разработки» (ГК Форс)

Пичаев.jpg

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

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

Платформа СИЭР разработана и поставляется компанией «Эволента», она предназначена для автоматизации административно-управленческих процессов предоставления государственных и муниципальных услуг и внутриведомственных административных процессов, а также оперативного доступа к соответствующей информации. В продукте используется реестровая форма ведения записей. Это особенно удобно при оказании услуг, связанных с аттестацией и выдачей разрешений/лицензий для организаций из различных сфер деятельности. Так, например, если на основании заявления от организации принимается положительное решение о выдаче/продлении/аннулировании лицензии или разрешения, то после завершения работы с таким заявлением на платформе СИЭР будет автоматически создана или обновлена реестровая запись с данными об организации и об объекте её деятельности. Эти данные сохраняются в системе таким образом, чтобы можно было оперативно найти все записи, относящиеся к организации или объекту деятельности, а также сформировать выписку или необходимую отчетность.

В связи с этим специалистами ФОРС был разработан механизм, позволяющий переносить данные из системы, где не был предусмотрен реестровый тип хранения данных, в систему с реестровой моделью хранения данных на платформе СИЭР с сохранением всей истории операций.

Процесс миграции исторических данных из старой системы в новую начинается с ее подготовки.

Подготовка к миграции данных

Этот процесс следует начинать сразу после разработки основной функциональности, когда уже описаны бизнес-процессы, а в СИЭР они описываются в формате BPMN, созданы и согласованы с заказчиком статусная модель, экранные формы, структура реестровой записи, а также налажен процесс её создания и обновления.

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

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

На этом этапе у разработчиков могут возникнуть определенные трудности, связанные с разницей в структуре старой и новой базы данных. Поэтому необходимо уделить серьезное внимание приведению в соответствие формата данных. Так, например, при переносе данных из реляционной базы Oracle в NoSql базу MongoDB данные следует преобразовать в совместимый формат JSON, что потребует:

  • анализа структуры исходных данных
  • написания скриптов для конвертации
  • проверки целостности информации после переноса.

Варианты создания/обновления реестровых записей при миграции

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

Для этого необходимо уточнить, как работает механизм создания и обновления реестровой записи в новой системе. Напомним, что реестровая запись в СИЭР создаётся/обновляется автоматически посредством встроенных функций и собственного обработчика, который задаёт структуру записи.

Однако такой способ не подходит для создания/обновления реестровых записей по переносимым данным, поскольку обработчик срабатывает только после действия пользователя в системе. Поэтому для реализации создания/обновления реестровых записей в автоматическом режиме возможны два варианта действий:

  • Прописать в скрипте миграции при переносе данных из старой системы в новую алгоритм заполнения коллекции реестровых записей на основании переносимых сущностей.
  • Воспользоваться реализованным в СИЭР функционалом создания/обновления реестровой записи, адаптировав его посредством script task на BPMN схеме. Таким образом, каждое дело с признаком «мигрированное» и положительным решением будет проходить через такую задачу при попадании в СИЭР, и на его основании будет создаваться либо обновляться реестровая запись.
    Важно: чтобы соблюсти историчность данных в реестре, миграцию необходимо проводить от наиболее старых сущностей к новым.

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

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

Подробнее о втором варианте миграции реестровых записей

При реализации решения прежде всего необходимо определить место для script task на BPMN схеме. Так, в нашем случае лучшим вариантом размещения стало выделение отдельного потока операций (flow) с условием на завершенные дела с положительным решением. В данной ветке последовательно устанавливаются:

  • script task с кодом на groovy
  • service task со стандартными настройками для внесения записи в реестр
  • service task для перевода дела в конечный статус.

Далее в структуре дела были предусмотрены логические поля для признака «мигрированное дело» и «положительное решение».

В script task потребовалось написать средствами groovy функцию, аналогичную внутренней функции СИЭР «create License», задачей которой является передача необходимых данных из дела в лицензию. В случае первичного создания реестровой записи важно прописать генерацию id лицензии, а в случае обновления — установку нужного статуса лицензии.

Заключение

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

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

В то же время, правильно продуманная миграция в СИЭР позволяет:

  • сохранить все накопленные данные
  • автоматизировать переход на реестровую модель хранения данных без потери историчности
  • обеспечить максимально бесшовный переход для пользователей.

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


Поделиться
Ссылка скопирована

Возврат к списку

WhatsApp
Telegram