А может быть и не было меня…

А может быть и не было меня…, image #1

Сегодня расскажем историю одной из самых сложных интеграций в истории существовании Geometa. Команда ZT оглянулась на квартал назад и вспомнила историю рождения ГИСОГД РФ, а это весьма объемная работа на 6 спринтов. По вложенным усилиям разработка могла стать ещё одним драгоценным камнем (так называются модули Geometa) в коллекции Gems, но это только дополнение к существующему модулю Diamond.

А может быть и не было меня…, image #2

Ребята являются держателями домена ГИСОГД и задачи, прямо или косвенно относящиеся к данной теме, ложатся именно на них. Они настоящие профи в этой области.

«Интеграция с федеральной системой для нас началась с вводной от Натальи Федоровой, директора по продукту. Перед тем, как включиться в непосредственную разработку, мы изучили матчасть в разрезе ГИСОГД РФ, примерили решения под нашу систему (прим. Geometa) и провели ряд созвонов, чтобы понять процессы и требования», поделился Виталий Дмитрачков.

«Это сейчас всё звучит просто, а 6 спринтов назад мы встретились с задачей “стыкани с тем, не знаю с чем, но успей к такому-то сроку”. Иронизирую. Если серьезно, то сложности были и в самом начале работ, и есть сейчас, и будут ещё. Дело не в ГИСОГД РФ, так происходит при любой интеграции: важно учесть все особенности системы, модели и ввода данных.
Стартовые итерации делались в режиме создания прототипа: минимум передаваемой атрибутивной информации. Первые документы для пересылки определяли с учётом критичности для конечной цели ГИСОГД РФ, поэтому на первом этапе сосредоточились на 13-ом разделе ГИСОГД (разрешения на строительство, разрешения на ввод)», вспоминает Дмитрий Ульянов.

«Со временем наш прототип обрёл форму и стал полноценным сервисом. С каждым спринтом задачи в нашем бэклоге таяли, количество документов и разделов передаваемых в ГИСОГД РФ, а также объём передаваемой информации увеличивался», подметил Дмитрий Шамрик.

«Всё это результат совместной работы нашей команды, представителей разработчика федеральной системы и, в не меньшей мере, Наташи, нашего директора по продукту. Мы помогали друг другу. Требования к ГИСОГД РФ уточнялись в процессе: мы делились своими мыслями и рекомендациями, система в свою очередь трансформировалась.
Мы знали, что это будет нелегко, но мы справимся», дополнил Данила Лазарев.

Реальный процесс разработки это не только гордость за результат и единый продукт, но и проработка множества деталей.

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

В основе самой масштабной интеграции этого года стандартный REST-протокол с описанием в стандарте OpenAPI.

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

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

  • первичную выгрузку всех сведений, документов и материалов, размещенных в региональной ГИСОГД, и связанных с ними объектов на момент запуска интеграции;
  • передачу сведений в момент размещения документов и материалов в региональных ГИСОГД;
  • процесс отслеживания отправки данных в ГИСОГД РФ и фиксацию возникающих при этом ошибок;
  • переотправку документов, которые по каким-либо причинам не удалось отправить с первого раза;
  • отправку сведений, дозагружаемых в систему уже после размещения документов (например, в случае с ПЗЗ — информацию о тер.зонах и град.регламентах).
А может быть и не было меня…, image #3

Сам процесс взаимодействия двух систем обеспечивается четырёхэтапным алгоритмом:

  1. Документ размещается в региональной ГИСОГД.
  1. Сведения готовятся для передачи, то есть система собирает и объединяет все составляющие.
  1. Осуществляется непосредственная транспортировка данных в ГИСОГД РФ.
  2. Сохраняется информация о статусе отправки сведений в ГИСОГД РФ.

«Благодаря логированию процесса, мы видим, “улетел” документ и его составляющие в ГИСОГД РФ или “не улетел”, если нет, то почему», поделился Денис Благодарев.

Ни один процесс разработки не обходится без тестирования. Интеграция с ГИСОГД РФ не стала исключением. Данила Лазарев вспоминает, что это было нелегко:

«Потому что был не один круг процесса “ознакомиться с требованиями — написать код — протестировать”. Мало того, что на старте был большой объём данных (свыше 80 видов документов, причем часть из них передавалась с дополнительными объектами), так и большой объем доработок, связанных с изменяющимися требованиями. Самому было тяжело осилить такой объем, благо на помощь пришли коллеги из нашей и смежных команд. Не могу сказать что тестирование проходило гладко, но оно позволило выявить проблемы и различные упущенные моменты в бизнес-логике формирования пакетов на отправку. На исправление и повторное тестирование таких багов приходилось тратить больше всего времени.
Отдельное спасибо хотелось бы сказать нашему директору продукта Наталье, которая взяла на себя роль альфа-тестера и проверяла, как работают выгрузки данных и их отправка, уже на реальных данных».

Сейчас работы на финишной прямой, как отмечает Дмитрий Ульянов:

«И мы, и разработчики ГИСОГД РФ старались всё успеть в срок, с трепетом ждали финальный релиз 1 декабря. Дальше доделываем доделки и переделываем переделки».

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

Для нас (и для ZT Team, и для Gems) как для разработчиков крупнейшей геоинформационной системы России важно использовать такие уникальные возможности. Наш опыт позволяет не просто создавать свои проекты, но и способствовать зарождению новых федеральных продуктов.

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

172 views·3 shares