Кейс "ВИК-ИТ: Внедрение DevOps-практик в команду разработки 1С"
О клиенте
Группа компаний «ВИК» – крупный федеральный холдинг, в составе которого работает собственное ИТ-подразделение «ВИК-ИТ». Команда отвечает за развитие и поддержку корпоративных информационных систем, в том числе, решений на платформе 1С. Для бизнеса, активно использующего 1С в качестве ключевого инструмента, особенно важны стабильность разработки, прозрачность процессов и скорость выпуска релизов.Чтобы повысить качество кода и ускорить вывод изменений в продуктив, руководство «ВИК-ИТ» приняло решение внедрить современные DevOps-практики.

Бизнес-задача
Цель проекта – создать единый DevOps-процесс для команды разработки с автоматизацией тестирования, сборки и релизов, а также подготовить специалистов для самостоятельной поддержки и дальнейшего масштабирования практик на другие информационные системы компании.
В команде заказчика уже был выстроен зрелый процесс разработки: релизы выпускались быстро, практически ежедневно, роли в команде четко распределены, а специалисты отличались высокой ответственностью и вовлеченностью. Это позволяло поддерживать стабильную работу системы.
При этом значительная часть работы выполнялась вручную, а также отсутствовали важные элементы DevOps-процессов, такие как:



Этапы внедрения
Совместно с экспертами заказчика наша команда реализовала план внедрения DevOps из пяти итераций-спринтов длительностью по две недели каждый. Такой формат работы позволил не просто развернуть инфраструктуру и инструменты автоматизации тестирования, но и встроить новые практики в повседневные процессы команды разработки:
01 Аудит и планирование
• Анализ текущих процессов и инструментов; • Интервью с руководителями и разработчиками;
• Формирование рекомендаций по улучшению процессов разработки, тестирования, передачи на поддержку;
• Формирование проектного плана, состава команды и календаря встреч.

02 Настройка «под ключ» и обучение DevOps-инженера
• Внедрение GitLab и Jenkins, настройка контура CI/CD;
• Подключение SonarQube и автоматического статического анализа кода;
• Настройка дымовых тестов, автоматического развертывания и контроля изменений релизов;
• Обучение внутреннего DevOps-инженера для поддержки решений.

03 Обучение команды
• Освоение Git и GitLab, частичный отказ от хранилища и переход на современный процесс разработки;
• Обучение инструментам тестирования (Vanessa-ADD, Vanessa Automation, vanessa-runner);
• Внедрение практики code review для повышения качества кода;
• Доработка сборочной линии совместно с релиз-инженером.

04 Опытная эксплуатация конвейера
• Выполнение реальных задач в новой среде;
• Ежедневные созвоны, контроль и сопровождение экспертов.

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

Организовано версионирование всех артефактов разработки современными инструментами контроля версий (GIT и GitLab)
Внешние отчеты, обработки и расширения конфигурации теперь хранятся в системе контроля версий Git, что обеспечивает полную прозрачность и управляемость вносимых изменений

Создана основа для перехода на современную схему разработки
Для исходного кода конфигурации внедрена гибридная схема «Хранилище + Git», что является подготовительным этапом для будущего перехода команды на прямую работу через Git в среде EDT

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

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

Повышена квалификация команды в области автоматизации тестирования
Все разработчики, а также привлеченные к процессу аналитики, прошли обучение и получили практические навыки написания автоматизированных тестов для своих задач