﻿# Как крупнейший в РФ производитель сетевого оборудования Eltex сделал разработку безопаснее благодаря PVS\-Studio

Мы открываем серию материалов о том, как компании используют PVS\-Studio\. В этом кейсе — опыт компании Eltex\.

![1315_Eltex_case_ru/image1.png](https://import.viva64.com/docx/blog/1315_Eltex_case_ru/image1.png)

## О компании

Российская компания Eltex разрабатывает и производит продукты для закрытия полного спектра задач создания сетевой инфраструктуры\. В каталоге — широкий спектр оборудования, в том числе коммутаторы доступа, агрегации, ЦОД и ядра, сервисные и магистральные маршрутизаторы, оборудование для IP\-телефонии и Wi\-Fi, программные системы для управления сетевой инфраструктурой, видеонаблюдения и т\.д\. 

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

Команда под руководством Павла Ильченко отвечает за разработку сервисов безопасности в решении ESR\. В рамках подразделения команда также развивает и внедряет передовые практики обеспечения безопасности кода, включая статический анализ, проверку на уязвимости и security review\.

## Задача

По мере роста команды процесс code review и тестирования стал занимать всё больше времени\. При этом сохранялся риск человеческих ошибок, влияющих на качество контроля\. Возникла необходимость оптимизировать процессы и автоматизировать рутинные проверки, чтобы сократить нагрузку на специалистов и сосредоточиться на более высокоуровневых задачах\.

Более пяти лет назад команда ESR начала последовательно внедрять практики разработки безопасного ПО, ориентируясь на международные стандарты\. 

> "Статический анализ стал для нас первым шагом к построению процесса безопасной разработки", — Павел Ильченко, руководитель группы Security\.

Изучив рынок, команда начала искать подходящий инструмент\. Были протестированы различные анализаторы, но многие либо сложно интегрировались в инфраструктуру, либо значительно замедляли сборку\. Важной задачей было обеспечить корректную работу анализатора с кодом на C и надстройками GCC, используемыми в проектах\. Кроме того, команда хотела получать оперативную техподдержку для минимизации ложных срабатываний и корректной настройки инструмента\.

В итоге выбор пал на PVS\-Studio — инструмент, сочетающий точность анализа, необходимый функционал и качественную техническую поддержку\. Eltex использует его в работе с 2020 года\.

## Решение

Команда направления Security подразделения ESR начала с продолжительного тестирования PVS\-Studio, сравнивая его с другими инструментами на одном и том же участке legacy\-кода, известном большим количеством проблем\. Тестирование продолжалось несколько месяцев и покрывалось политикой PVS\-Studio по [выдаче триальных лицензий](https://pvs-studio.ru/ru/pvs-studio/try-free/)\.

> "На начальном этапе нас поразила скорость работы\. Другие анализаторы могли увеличивать время сборки до 30 минут, а PVS\-Studio добавлял буквально пару минут\. Это стало весомым преимуществом\. Кроме того, интеграция через CMake идеально легла в наши процессы", — Павел Ильченко, руководитель группы Security\.

Хотя часть сотрудников уже имела опыт взаимодействия с PVS\-Studio в личных проектах и с [бесплатной лицензией для open source](https://pvs-studio.ru/ru/order/open-source-license/), большая часть команды не была знакома с анализатором\. Руководитель команды признаёт, что привыкание к инструменту потребовало времени, но постепенно он стал незаменимым для каждого разработчика: 

> "На первых этапах разработка действительно замедлилась, так как разработчикам требовалось время, чтобы разобраться с найденными ошибками в коде\. Со временем они выявили повторяющиеся паттерны и стали быстрее устранять проблемы\. Мы ожидали первоначальное замедление и последующее ускорение работы — именно так и произошло", — Павел Ильченко, руководитель группы Security\. 

Параллельно с внедрением анализатора команда улучшала и другие процессы, в том числе пересмотрела DevOps и ускорила сборку\.

> "Мы переделали наш DevOps, внедрили его лучшим способом, ускорили сборку\. При внедрении анализатора не возникло проблем, как раз за счёт того, что мы вместе с PVS начали хорошо и правильно настраивать процессы", — Павел Ильченко, руководитель группы Security\.

В ходе тестирования команда не только оценивала функциональность анализатора, но и проверяла качество технического сопровождения\. Одним из ключевых факторов при выборе инструмента стала оперативность и вовлечённость [техподдержки](https://pvs-studio.ru/ru/pvs-studio/support/)\.

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

> "Ваша поддержка всегда довольно быстро отвечает, что\-то правит, что\-то нам объясняет", — Павел Ильченко, руководитель группы Security\.

За время сотрудничества команда PVS\-Studio реализовала ряд улучшений, которые сделали использование анализатора удобнее для разработчиков Eltex:

1. **Расширение функциональности**\. Был реализован автоматический поиск и применение конфигурационных файлов анализатора в директориях проекта, добавлен формат [table\-md](https://pvs-studio.ru/ru/docs/manual/0038/) для конвертации отчётов, а также новые опции в [blame\-notifier](https://pvs-studio.ru/ru/docs/manual/0050/): настройка темы письма и добавление вложений\.
1. **Доработки анализатора**\. Внесены доработки в blame\-notifier: добавлена возможность исключить предупреждение V001 из рассылки, исправлена работа с symlink, добавлено сообщение о невозможности подключения к почтовому серверу\. Также были уточнены диагностические правила: например, исправлена выдача ложных срабатываний для V2575 и V556\.

Многие улучшения PVS\-Studio появляются благодаря обратной связи от [Enterprise](https://pvs-studio.ru/ru/order/license/) пользователей\. Полный список улучшений можно увидеть [здесь](https://pvs-studio.ru/ru/pvs-studio/support/)\. 

## Результаты

**Снижение количества ошибок и потенциальных уязвимостей в коде**

Команда разработки ESR отмечает сокращение числа уязвимостей, выявляемых в новых реквестах\. Регулярные проверки с помощью PVS\-Studio способствовали повышению качества кода и снижению количества повторяющихся ошибок\.

> "Если сравнивать период до внедрения практик безопасной разработки, с текущим моментом, то количество ошибок сократилось значительно и начало снижаться уже с момента внедрения статического анализа", — Павел Ильченко, руководитель группы Security\.

**Сокращение возвратов задач**

Команда ESR оценивает эффективность изменений по тому, сколько задач возвращается на доработку на разных этапах: после первичного тестирования, после тестирования при слиянии с основным кодом и в ходе эксплуатации\.

После внедрения PVS\-Studio возвраты задач на доработку значительно сократились\. Это позволяет команде быстрее закрывать задачи и уменьшает объём повторных проверок на различных этапах\. 

> _"Задачи из тестов возвращаются гораздо реже, потому что у них нет очевидных проблем: меньше багов находится на этапе эксплуатации", — Павел Ильченко, руководитель группы Security\._

**Формирование устойчивых привычек безопасной разработки**

Регулярные проверки с помощью PVS\-Studio помогли разработчикам быстрее распознавать уязвимые участки кода и избегать повторения ошибок\. Команда ESR придерживается устойчивых привычек безопасной разработки, а внимание к качеству кода является частью внутренней культуры\. 

> "Сейчас количество ошибок заметно снизилось\. Анализатор PVS\-Studio на текущем этапе находит маленькое количество проблем, в чем, на самом деле, его заслуга: разработчики стали достаточно опытными и не допускают типичных ошибок", — Павел Ильченко, руководитель группы Security\.

## Заключение

Интеграция PVS\-Studio помогла команде разработки сервисных маршрутизаторов ESR компании Eltex выстроить эффективный процесс безопасной разработки и значительно улучшить качество кода\. Инструмент не только автоматизировал поиск потенциальных ошибок, но и стал частью культуры разработки, способствуя росту экспертизы команды\.

Сегодня PVS\-Studio — важный инструмент разработки в компании Eltex, который повышает стабильность, безопасность и надёжность конечного продукта\. 

Хотите оценить эффективность внедрения статического анализа в вашей компании? Протестируйте бесплатную пробную версию PVS\-Studio по [ссылке](https://pvs-studio.ru/ru/pvs-studio/try-free/) и свяжитесь с нами для [получения информации о ценах](https://pvs-studio.ru/ru/order/)\.