International Packaging Group Association

Как объединить два сайта в один и закрыть технический долг

6,5х
снизился показатель TTI
ПЕРЕНЕСТИ САЙТЫ НА DRUPAL 8
ОБЪЕДИНИТЬ САЙТЫ
ПЕРЕНЕСТИ ТЕХНИЧЕСКУЮ ИНФОРМАЦИЮ
ПРОВЕСТИ РЕФАКТОРИНГ КОДА
Хотите так же?

О клиенте

International Packaging Group Association — международное объединение профессионалов в области производства упаковки из картона, ведущее свою историю с 1963 года. Работа IPG способствует развитию прозрачного рынка со здоровой конкуренцией. Один из инструментов формирования такого рынка — сайт Ассоциации. 

Главная страница сайта International Packaging Group Association

Задача

У Ассоциации было два сайта на Drupal 7: визитка с информацией об Ассоциации и сайт для работы с отчётами и статистикой. Основной задачей ADCI Solutions стал перенос сайтов с Drupal 7 на Drupal 8 и их объединение для простоты и дешевизны обслуживания в будущем. Редизайн не требовался, поэтому задача сводилась к буквальному воспроизведению сайта, но на более актуальном ядре.

Объединение сайтов

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

Панель управления

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

Панель управления сайта IPG Association

В разделе Machines член Ассоциации может внести в список новую единицу оборудования через админ-панель Drupal. Каждая node — это тип оборудования. Внутри node пользователь заполняет поля с технической информацией.

Раздел Machines сайта IPG AssociationНоды на сайте IPG AssociationСоздание страницы для нового оборудования на сайте IPG Association

Миграция данных и формул

За долгие годы существования Ассоциации накопилось очень много данных о разных станках: производительности, износе, обслуживании и других параметрах. Их миграция требовала от команды ADCI Solutions внимательности — некоторые единицы оборудования отличались друг от друга одним-двумя параметрами, и построить одинаковые таблицы для них было нельзя. 

Миграция данных и формул на сайте IPG Association

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

Параметры станков на сайте IPG AssociationВычисление производительности станков

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

Раздел Statistics на сайте IPG AssociationГистограммы в разделе Statistics на сайте IPG Association

Рефакторинг кода

Проект выглядел типичным для Drupal-разработки, пока специалисты ADCI Solutions не столкнулись с кучей беспорядочного легаси PHP-кода, игнорировавшего привычные методы и паттерны Drupal. Формы и отчёты строились нестандартно, а данные не были связаны друг с другом. Это был сайт с огромным техническим долгом — накопленными в программном коде или архитектуре проблемами из-за низкого качества разработки, вызывающими дополнительные трудозатраты в будущем. Рефакторинг кода с нашей стороны решил ряд старых проблем.

Drupal 7 и Drupal 8 принципиально отличаются друг от друга, поэтому прямой перенос структуры данных и кастомного кода с одного ядра на другое стало сложной и тонкой задачей.

Результаты

С учётом необычных и в чём-то даже экстремальных условий ADCI Solutions удалось объединить два сайта в один и сохранить прежнюю функциональность таким образом, чтобы оставить для пользователя привычные сценарии взаимодействия с сайтом.

Кастомный код был переработан, стал выглядеть и исполняться гораздо лучше. Это привело к уменьшению унаследованного технического долга и улучшению производительности сайта. За счёт правильного кэширования снизилась общая нагрузка на сайт и время вывода на экран первого интерактивного элемента страницы — с 7,1 до 1,1 секунды. Это соответственно ускорило отрисовку страницы и построение отчётов и гистограмм.

Мы держим связь с клиентом и готовы к новым задачам.

Напишите нам!

Мы регулярно просматриваем не только почту, но и спам. Ваша заявка от нас не ускользнёт.

Напишите нам!

Но сначала правильно заполните обязательные поля.