Поддержка и развитие legacy-проекта на Drupal 7: доработка игровой платформы Classic Reload

Как мы модернизировали портал с ретро-играми, улучшили пользовательский опыт и продлили жизнь проекту без дорогостоящего переписывания
Клиент: Платформа браузерных ретро-игр Classic Reload.
Отрасль: игровые проекты, онлайн-сервисы, ретро-игры.
Услуги:

  • техническая поддержка Drupal;
  • сопровождение legacy-проектов;
  • доработка существующего сайта;
  • UX/UI-доработка;
  • оптимизация производительности;
  • рефакторинг пользовательских сценариев;
  • технический аудит;
  • поддержка игровых платформ.
Технологии: Технологии: Drupal 7, PHP, JavaScript, кастомная Drupal-тема, HTML, CSS.

О проекте

Classic Reload — крупная браузерная платформа с коллекцией классических компьютерных игр.

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

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

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

Когда поддержка сайта становится сложнее его разработки

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

В подобных системах почти каждое изменение связано с техническим долгом, устаревшими библиотеками и большим количеством взаимозависимостей.
В случае Classic Reload ситуация осложнялась сразу несколькими факторами:

  • проект работал на Drupal 7;
  • использовалось несколько различных игровых эмуляторов;
  • часть контента загружалась из Archive.org;
  • тема оформления содержала большое количество кастомного кода;
  • отсутствовала единая архитектура пользовательских сценариев.
Любая доработка могла затронуть сразу несколько подсистем.

Какие задачи стояли перед нами

Перед началом работ клиент поставил несколько практических задач:

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

Редизайн без полного переписывания сайта

Полностью менять архитектуру проекта клиент не планировал. Поэтому мы использовали более рациональный подход. Новый дизайн был интегрирован поверх существующей темы без вмешательства в ядро системы. Это позволило:

  • снизить стоимость работ;
  • сохранить существующий функционал;
  • быстро обновить внешний вид проекта;
  • избежать появления новых ошибок.
Раньше пользователь одновременно видел:

  • большое количество рекламных блоков;
  • окно эмулятора;
  • вспомогательные элементы интерфейса.

Улучшение пользовательского сценария запуска игр

Одной из основных проблем была страница запуска игры.
Мы полностью переработали сценарий запуска. Теперь пользователь сначала открывает карточку игры, после чего переходит на отдельную страницу с эмулятором. На странице запуска осталось минимальное количество рекламы, а игровое окно стало значительно больше.
В результате улучшились:

  • скорость загрузки;
  • производительность;
  • удобство игры;
  • восприятие интерфейса.

Поддержка Drupal 7 и работа с legacy-кодом

Несмотря на завершение официальной поддержки Drupal 7, клиент продолжал использовать эту CMS. Мы не стали навязывать дорогостоящую миграцию. Вместо этого сосредоточились на безопасной эксплуатации существующей системы.
В рамках сопровождения проекта мы:

  • исправляли ошибки;
  • вносили небольшие функциональные доработки;
  • контролировали влияние изменений на существующую архитектуру;
  • предупреждали клиента о возникающих рисках безопасности;
  • подготовили рекомендации по дальнейшей миграции на современную версию Drupal.

Что получил клиент

В результате проекта удалось существенно улучшить существующую платформу без капитальной переработки системы.
Клиент получил:

  • современный внешний вид сайта;
  • более удобный запуск игр;
  • улучшенную структуру каталога;
  • повышение производительности отдельных страниц;
  • сохранение рекламной монетизации;
  • стабильную техническую поддержку;
  • рекомендации по дальнейшему развитию платформы.
Клиент получил:

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

Какие услуги мы оказали

В рамках проекта наша команда выполнила:

  • техническую поддержку Drupal;
  • сопровождение legacy-проекта;
  • UX/UI-доработку;
  • интеграцию нового дизайна;
  • оптимизацию пользовательских сценариев;
  • реорганизацию структуры сайта;
  • оптимизацию производительности;
  • технический аудит;
  • консультации по информационной безопасности;
  • долгосрочную поддержку проекта.

Когда стоит дорабатывать существующий сайт, а не переписывать его

Не каждый проект требует полной разработки с нуля. Во многих случаях грамотная техническая поддержка позволяет значительно продлить срок службы продукта, улучшить пользовательский опыт и подготовить систему к дальнейшей модернизации. Мы регулярно работаем с проектами, которые уже находятся в эксплуатации, выполняем аудит архитектуры, развиваем существующий функционал и помогаем бизнесу постепенно модернизировать сложные legacy-системы без остановки работы сервиса.
Подпишитесь на рассылку
Мы регулярно выпускаем новые статьи и кейсы
Отправляя эту форму, вы даёте согласие на обработку персональных данных ООО “Дроп Софт”
в целях обработки заявки и обратной связи.