CodeScoring
Краткое описание программного обеспечения
Продукт CodeScoring обеспечивает функции композиционного анализа программного обеспечения (Software Component Analysis, SCA), контроль совместимости лицензий открытого программного обеспечения и оценку качества исполнения в разрезе команд. Решение распространяется по dedicated SaaS-модели и в виде on-premise инсталляции (представлена на оценку экспертам Реестра).
Функциональные характеристики программного обеспечения
Общие функции
- поддержка анализа 18 языков программирования;
- поддержка анализа манифестов пакетных менеджеров: Maven, Gradle, NPM, NuGet, Conda, PyPi, Ruby Gems, Cocoapods, Packagist и CONAN;
- интеграция с системами хостинга кода: Gitlab, Github, Bitbucket и Azure DevOps;
- ведение перечня используемых программных компонент (в том числе, с открытым исходным кодом) с учетом версии в SBoM-формате (Software Bill of Materials);
- построение отчетности;
- интеграция с почтовым сервером;
- интеграция с системой управления задачами Jira;
- обеспечение многопользовательского ролевого доступа;
- обеспечение журналирования всех выполняемых операций (ведение аудит-логов).
Функции композиционного анализа
- обнаружение OSS зависимостей (прямых и транзитивных) по файлам конфигураций (манифестам) пакетных менеджеров;
- обнаружение заимствованных OSS-зависимостей (OSS-включения) по мета-данным, с применением алгоритмов гибкого поиска;
- актуализация информации об обнаруженных зависимостях:
общая информация о зависимости: дата релиза; автор; официальная веб-страница; на размещение в пакетном индексе; - информация о лицензиях;
- информация об уязвимостях;
- работа с лицензиями:
- выявление лицензий по найденным зависимостям для прямых и транзитивных зависимостей;
- определение совместимости лицензий (license compliance);
- определение особенностей лицензий в рамках дополнительной политики от вендора;
- работа с уязвимостями:
- идентификация уязвимостей по найденным OSS компонентам;
- выдача рекомендаций к устранению идентифицированных уязвимостей OSS;
- информирование о публикации новых уязвимостей в рамках пост-релизного мониторинга ранее учтенных OSS компонентов.
Функции оценки качества
- построение профиля проектов, детализация технического и авторского состава разработки;
- построение профиля разработчиков, детализация их работы в анализируемых проектах с учетом объема работ и качества произведенных изменений;
- автоматический скоринг схожих разработчиков в анализируемых проектах:
- по опыту в проектах и технологиях;
- по схожести технической базы и подходов к разработке;
- по близости качественных характеристик;
- поиск активности разработчиков в Open Source проектах;
- анализ заимствований с применением алгоритмов нечеткого поиска (толерантность к переименованиям объектов в коде):
- поиск внутри-проектных дубликатов кода;
- поиск кросс-проектных дубликатов кода;
- определение объема найденных заимствований;
- построение интерактивной карты заимствований;
- определение времени возникновения заимствования;
- привязка авторства к найденным дубликатам кода;
- оценка сложности сопровождения проекта:
- расчет цикломатической сложности кода в разрезе проекта;
- расчет цикломатической сложности кода в разрезе автора;
- построение аналитических ретроспективных карт:
- развития проектов;
- работы авторов;
- эволюции сложности проектов.