21 марта для нас не просто дата в календаре, а день рождения нашей компании PVS-Studio. Но этот год особенный, так как наш единорог стал совсем взрослым и отмечает совершеннолетие!

10 лет назад Андрей Карпов — один из основателей компании — написал статью, в которой рассказал о том, какой длинный путь проект прошёл от простой утилиты до мощного анализатора!

Всё началось с того, что два человека поняли: поиск ошибок, связанных с портированием с 32-битных систем на 64-битные, чрезвычайно сложен и не решается имеющимися инструментами, поэтому решили создать собственный анализатор.

Под конец 2006 года появилась первая версия инструмента как утилита для поиска ошибок в 64-битном коде — Viva64 1.0.

Вторая версия инструмента — это VivaMP, созданный для обнаружения ошибок в параллельных программах, использующих технологию OpenMP.

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

В 2009 году инструменты Viva64 и VivaMP объединили в единый продукт — PVS-Studio. Аббревиатура PVS расшифровывается как “Program Verification Systems”, а слово “Studio” подчеркивает, что перед вами не просто отдельный инструмент, а целая “студия” анализаторов.

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

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

Этот шаг стал важным для успеха: PVS-Studio начал приносить доход, появились корпоративные лицензии и регулярные обновления.

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

Это не просто история успеха, а сложный путь, который продолжается: с ошибками, победами и постоянным стремлением развиваться!

Итак, продукт нашёл своих сторонников и начал приносить доход. Казалось, можно выдохнуть. Но в IT стоять на месте — значит откатываться назад. Команда росла, а вместе с ней росло количество тасок... Что дальше? Дальше — масштабирование и выход на новый уровень.

2017-2018

После 2016 года развитие PVS-Studio продолжилось: мы добавили интеграцию в Visual Studio 2017, а также в UnrealBuildTool, начиная с версии Unreal Engine 4.17. Последнее позволило проверять проекты на основе Unreal Engine “из коробки”, что стало важным шагом в расширении возможностей анализатора.

Пока продукт обретал новые интеграции и наращивал больше диагностических правил, расширялась и наша команда. К концу 2017 года встал вопрос о переезде в новый офис. За три месяца мы нашли и отремонтировали наш будущий офис площадью 600 кв. м. Для команды из 22 человек такое пространство казалось огромным, и мы думали, что его хватит лет на десять.

Как показало время, мы немного ошиблись :)

Темпы роста команды только подстёгивали развитие продукта. Если ранее PVS-Studio позиционировался просто как средство для поиска багов, то в 2018 году ситуация изменилась. Мы начали развивать продукт как SAST-решение (Static Application Security Testing) в трёх направлениях: улучшение качества (quality), надёжности (safety) и защищённости (security) исходного кода. Подробнее об этом вы можете прочитать тут.

В январе 2018 (версия 6.21) срабатывания анализатора стали классифицироваться в соответствии с общепринятыми стандартами — Common Weakness Enumeration (CWE) и SEI CERT Coding Standards для C, C++. Таким образом, продукт стал выявлять уязвимости и слабые места защищённости приложений.

Также в этот период команда начала планомерную поддержку анализа кода для встраиваемых систем:

  • в феврале 2018 года (версия 6.22) был поддержан анализ проектов, собирающихся с помощью Keil MDK ARM Compiler 5-6 и IAR C/C++ Compiler for ARM;

  • в июне 2018 года (версия 6.24) был поддержан анализ проектов, собирающихся с помощью Texas Instruments Code Composer Studio;

  • в октябре 2018 года (версия 6.26) был поддержан анализ проектов, собирающихся с помощью GNU Arm Embedded Toolchain и Arm Embedded GCC.

В этом же году была официально выпущена версия для macOS. Теперь C и C++ анализатор работал на трёх основных платформах: Windows, Linux и macOS.

В декабре 2018 (версия 6.27) анализатор начал проверять код на соответствие стандартам MISRA C 2012 и MISRA C++ 2008, которые критически важны для встраиваемых систем и областей, где требуется повышенная надёжность: автомобильная и авиационная промышленность, медицинское оборудование и т. п. Первоначально было реализовано 25 диагностических правил, что заложило основу для дальнейшего роста в этом направлении.

Параллельно в 2018 году была начата работа над Java анализатором, релиз которого состоялся в январе 2019 года (версия 7.00) совместно с интеграцией в IDE IntelliJ IDEA и сборочные системы Maven и Gradle. Для развития этого продукта была сформирована отдельная команда.

Итого за два года PVS-Studio эволюционировал из простого инструмента для поиска багов до многофункциональной платформы статического анализа, способной решать задачи безопасности, надёжности и качества кода в различных CI/CD системах. Это создало прочный фундамент для дальнейшего роста на рынке SAST-решений.

2019

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

В 2019 году мы увеличили присутствие на конференциях, причём совершенно в разных ролях:

  • выезды со стендом;

  • выступления с докладами;

  • мастер-классы;

  • собственные митапы;

  • круглые столы;

  • посещение в качестве участников.

В 2018–2019 годах наша активность в event-маркетинге была особенно высокой. Мы побывали на более чем 65 конференциях в разных городах России и за рубежом. Этот формат мы выбрали не случайно. Помимо прямых задач: представления продукта на стенде, выступлений и общения с клиентами — такие поездки помогали сплочению команды. Разработчики совмещали работу с путешествиями, привозили яркие впечатления, а живое общение с пользователями заряжало их энергией.

В 2019 году также увеличилось число статей в нашем блоге до 100 в год. Мы осознали новое большое направление работы, которым занимались и раньше, но не так масштабно, — обучающий маркетинг.

И до сих пор обучающий маркетинг является нашей ценностью и имеет большое значение для компании. Мы верим, что качественный и безопасный код — это большая ответственность всей IT-индустрии, поэтому активно рассказываем людям про работу статического анализатора в статьях и докладах.

В апреле 2019 года вышла версия 7.02 с поддержкой новой версии IDE Visual Studio 2019.

С лета мы активно начали описывать способы интеграции в различные облачные CI-системы: Travis CI, CircleCI, Azure DevOps, GitLab CI/CD. Со временем число таких интеграций вырастет, полный список здесь.

2019 год выдался активным: десятки конференций, растущая аудитория, новые интеграции. Было много планов, но весь мир резко “остановился” из-за пандемии, и планы пришлось менять...

2020-2022

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

К 2020 году PVS-Studio стал зрелым продуктом для статического анализа для четырёх ключевых языков: C, С++, С# и Java. Однако оставалось заметное архитектурное ограничение: C# анализатор был возможен исключительно в среде Windows. В июне 2020 года (версия 7.08) это было исправлено, и теперь все анализаторы работали на Windows, Linux и macOS. В дополнение к этому, в C# анализаторе была реализована интеграция с кроссплатформенной IDE JetBrains Rider, что значительно расширило аудиторию разработчиков.

В этом же релизе C и C++ анализатор PVS-Studio был интегрирован в онлайн-сервис Compiler Explorer, что позволило разработчикам изучать его поведение на маленьких синтетических примерах. А в августе 2020 года произошёл интересный момент: PVS-Studio был включён в отчёт “Now Tech: Static Application Security Testing, Q3 2020” как SAST-специализированный инструмент. Forrester Research — одним из ведущих исследователей влияния развития инновационных технологий на бизнес.

В ноябре 2020 года (версия 7.10) возможности PVS-Studio как SAST-решения были расширены поддержкой стандартов OWASP ASVS и AUTOSAR C++14 Coding Guidelines. Также в плагине для JetBrains Rider появилась возможность анализировать проекты на основе Unreal Engine.

К 2021 году PVS-Studio подступал со следующими вводными:

  • для C и C++ анализатора была полноценная интеграция только с Visual Studio на Windows;

  • для C# анализатора была интеграция с кроссплатформенной Rider;

  • для Java анализатора была интеграция с кроссплатформенной IntelliJ IDEA.

В составе продукта не хватало IDE, с помощью которой можно запускать анализ C и C++ кода кроссплатформенно. На выбор были JetBrains CLion, Visual Studio Code и Qt Creator. В итоге остановились на JetBrains CLion, т. к. написание плагина для этой IDE потребовало от нас наименьших усилий. В августе 2021 года (версия 7.14) была выпущена интеграция.

В августе 2021 года продукт уже находил 6 из 10 категорий наиболее распространённых угроз защищённости web-приложений согласно OWASP Top 10 2017. Покрытие стандартов MISRA C 2012 и MISRA C++ 2008 достигло 60% и 30% соответственно.

Ближе к концу 2021 года Microsoft выпустила новую версию Visual Studio 2022. Новый плагин PVS-Studio был сделан уже в декабре (версия 7.16). C и C++ анализатор тоже не остался в стороне и обзавёлся возможностью межмодульного анализа проектов.

Мы плавно движемся к 2022 году. К этому моменту покрытие стандарта MISRA C 2012 увеличили до 80%. В апреле 2022 года (версия 7.18) С и C++ анализатор PVS-Studio получает обновлённую систему семантического анализа.

5 апреля выходит Unreal Engine 5, и уже в июне PVS-Studio (версия 7.19) поддерживает анализ проектов на его основе.

В августе (версия 7.20) мы начали работы по покрытию всех категорий OWASP Top 10 2021: на каждую из них сделали минимум по одному диагностическому правилу.

После выпуска плагина для CLion мы решили, что неплохо бы иметь в продукте интеграции ещё с несколькими кроссплатформенными IDE, которые предлагали варианты бесплатного использования. Уже к концу 2022 года выходят два новых плагина для Visual Studio Code и Qt Creator. Пока в них можно было только работать с отчётами анализатора: смотреть предупреждения, фильтровать их и т. д.

За период с 2020 по 2022 год мы преодолели ключевые архитектурные ограничения, расширили поддержку отраслевых стандартов безопасности и надёжности, а также создали экосистему интеграций со всеми основными IDE. Рост продукта сопровождался внутренней трансформацией команды. Несмотря на пандемию, коллектив увеличился на 12 человек за два года. В этом же году появилась команда Tools&DevOps, которая занялась разработкой и поддержкой интеграций анализатора.

2023-2025

В период с 2023 по 2025 год команда сосредоточилась на трёх ключевых направлениях: превращение инструмента в полноценную кроссплатформенную экосистему (интегрируемся и встраиваемся куда угодно), глубокое погружение в мир стандартов информационной безопасности (ГОСТ 56939, РБПО, MISRA и т. д.) и обновление ядер анализатора.

Идея “анализатор везде, где разработчик пишет код” продолжает развиваться. Поддержка плагинов для Visual Studio Code и Qt Creator была дополнена интеграцией с OpenIDE. В 2025 году мы заключили технологическое партнёрство с различными ASOC-инструментами, чтобы анализатор PVS-Studio можно было легко внедрять в конвейер разработки, используя те же инструменты, что и ранее. Теперь результаты анализа интегрируются в AppSec.Hub, Hexway, Securitm, CyberCodeReview, TRON.ASOC. А ещё результаты работы инструментов обеспечения безопасности теперь можно агрегировать и изучать в DefectDojo и CodeChecker.

В декабре 2023 года (версия 7.28) мы начали осваивать новую для себя архитектуру ARM. И начали с ОС Windows. Уже через год в анализаторе PVS-Studio была реализована возможность работы на ОС Windows и macOS, основанных на архитектуре ARM64. Была добавлена работа с инструментарием GNU RISC-V GCC Toolchain для платформы RISC-V. Параллельно адаптировали плагин для Qt Creator под среду разработки для ОС “Нейтрино”.

Появился новый вызов — растущие требования к безопасности кода. Ответом стало планомерное покрытие ключевых отраслевых стандартов. В апреле 2024 года (версия 7.30) продукт научился дополнительно маркировать предупреждения, соответствующие классификации критических ошибок по ГОСТ Р 71207—2024. В анализаторе для C и C++ появилась возможность писать пользовательские аннотации для классов и функций для улучшения качества анализа. К концу 2025 года началась работа по покрытию стандарта OWASP Top 10 2021 для Java анализатора. К октябрю он покрывал 9 из 10 категорий. Параллельно команда приступила к амбициозной задаче: обеспечить покрытие не менее 85% свежего стандарта MISRA c 2023 года.

В августе 2025 года (версия 7.38) C и C++ анализатор получил новое ядро с полностью переработанными парсером, семантическим анализатором и системой типов. Оно обеспечило почву для дальнейших изменений, а также дало возможность лучше поддерживать новую функциональность языков.

Возможностью писать пользовательские аннотации для классов и функций обзавёлся и Java анализатор.

В октябре 2025 года (версия 7.39) плагин для Visual Studio Code научился запускать анализ C и C++ проектов в режиме мониторинга компиляции на ОС Windows.

Всё что умеет анализатор к моменту своего совершеннолетия, описано в большой обзорной статье “Статический анализатор кода PVS-Studio в 2026: ГОСТ Р 71207, ГОСТ Р 56939, приказ ФСТЭК N117”.

18 лет — серьёзный рубеж, говорящий о зрелости бизнеса и об успешном преодолении нескольких экономических циклов. Компания пережила многое, но неизменно продолжала работать и оставалась верна своей миссии: развивать технологии статического анализа, помогать разработчикам создавать более качественный, надёжный и безопасный код и делиться знаниями. Всё это было возможно только благодаря нашей команде и вам, нашим пользователям. Спасибо, что были с нами эти 18 лет. И мы очень надеемся, что еще многие и многие годы сможем помогать вам в разработке и улучшении качества кода.

Увидимся через 10 лет :)