Перейти к содержанию

Функциональные характеристики

Общие функциональные характеристики

  • поддержка анализа 18 языков программирования: Python, Java, Scala, Kotlin, Swift, Go, JavaScript, TypeScript, Ruby, PHP, C, C++, C#, Objective-C, Bash, Perl, PLSQL и PGSQL;
  • поддержка анализа манифестов пакетных менеджеров: Maven, Gradle, NPM, NuGet, Go, PyPi, Ruby Gems, Cocoapods, Packagist и CONAN;
  • интеграция с системами хостинга кода: Gitlab, Github, Bitbucket и Azure DevOps;
  • ведение перечня используемых программных компонент (в том числе, с открытым исходным кодом) с учетом версии в SBoM-формате (Software Bill of Materials);
  • построение отчетности;
  • управление политиками оповещений:
    • подключение CI/CD через API (в т. ч. блокирующие политики);
    • интеграция с почтовым сервером;
    • интеграция с системой управления задачами Jira;
  • обеспечение многопользовательского ролевого доступа;
  • обеспечение журналирования всех выполняемых операций (ведение аудит-логов);

Функциональные характеристики SCA (Software Composition Analysis)

  • обнаружение OSS зависимостей (прямых и транзитивных) по файлам конфигураций (манифестам) пакетных менеджеров;
  • обнаружение заимствованных OSS-зависимостей (OSS-включения) по мета-данным, с применением алгоритмов гибкого поиска;
  • актуализация информации об обнаруженных зависимостях:
    • общая информация о зависимости: дата релиза; автор; официальная веб-страница; на размещение в пакетном индексе;
    • информация о лицензиях;
    • информация об уязвимостях;
  • определение схожести проектов по используемым зависимостям;
  • работа с лицензиями:
    • выявление лицензий по найденным зависимостям для прямых и транзитивных зависимостей;
    • определение совместимости лицензий (license compliance);
    • определение особенностей лицензий в рамках дополнительной политики от вендора;
  • работа с уязвимостями:
    • идентификация уязвимостей по найденным OSS компонентам;
    • выдача рекомендаций к устранению идентифицированных уязвимостей OSS;
  • информирование о публикации новых уязвимостей в рамках пост-релизного мониторинга ранее учтенных OSS компонентов;
  • встраивание в цикл разработки программного обеспечения (SDLC) посредством интеграции с системами версионирования исходного кода, CI/CD-конвейером, системами управления задачами и почтовым сервером.

Функциональные характеристики CodeScoring Firewall

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

Функциональные характеристики TQI (Teams & Quality Intelligence)

  • построение профиля проектов, детализация технического и авторского состава разработки;
  • построение профиля разработчиков, детализация их работы в анализируемых проектах с учетом объема работ и качества произведенных изменений;
  • автоматический скоринг схожих разработчиков в анализируемых проектах:
    • по опыту в проектах и технологиях;
    • по схожести технической базы и подходов к разработке;
    • по близости качественных характеристик;
  • поиск активности разработчиков в Open Source проектах;
  • анализ заимствований с применением алгоритмов нечеткого поиска (толерантность к переименованиям объектов в коде):
    • поиск внутри-проектных дубликатов кода;
    • поиск кросс-проектных дубликатов кода;
    • определение объема найденных заимствований;
    • построение интерактивной карты заимствований;
    • определение времени возникновения заимствования;
    • привязка авторства к найденным дубликатам кода;
  • оценка сложности сопровождения проекта:
    • расчет цикломатической сложности кода в разрезе проекта;
    • расчет цикломатической сложности кода в разрезе автора;
  • построение аналитических ретроспективных карт:
    • развития проектов;
    • работы авторов;
    • эволюции сложности проектов;
  • встраивание в цикл разработки программного обеспечения (SDLC) посредством интеграции с системами версионирования исходного кода, CI/CD-конвейером, системами управления задачами и почтовым сервером.