FossID は長年にわたってソフトウェア構成解析(SCA)の最先端に立ち、先進的なスニペットレベルでのコードスキャニング技術によって、他に類を見ない解析精度を実現してきました。生成AIの時代においては、この能力は特に重要です。ソフトウェア開発者がAIによって生成されたコードスニペットを取り入れるようになると、サードパーティ製ソフトウェアやオープンソースソフトウェアがチェックを受けずに使用されることによる法的リスク、セキュリティリスク、運用リスクに対するゲートキーパーとして、スニペットレベルのSCAツールが必要になります。
FossIDのテクノロジーは精度と詳細さに関して業界の水準をリードするいっぽうで、コンポーネントレベルでしか処理を行わない単純なツールに比べると、詳細なスキャンによって膨大な一致を検出することも事実です。より多くのデータが収集されるほど、識別結果を適切に管理するために、より高度な解析およびレビューツールが必要になります。このような必要性を認識しているFossIDは、常にツールを進化させてきました。2023年には、コードスニペットレベルで動作し、事前定義されたライセンスカテゴリを利用してワークフローの合理化と自動化を実現する新世代型ポリシー管理機能を導入しました。
しかし、私たちの継続的なイノベーションは、そこで終わりではありません。FossIDの監査エキスパートチームは、長年にわたるソフトウェア監査業務での経験を通じて、ソフトウェア監査および関連ワークフローのベストプラクティスに関する幅広い知識を獲得してきました。このたび、私たちはこのような知識を結集して製品自体の新機能として取り込み、エキスパートレベルの解析を実現するこの拡張機能を「識別アシスト」と名付けました。識別アシストは、FossIDツールチェーンの機能を強化します。目標とするのは、従来は手動で行われていた作業をさらに自動化し、目視でのレビューの必要性を最小限に抑え、FossIDが長年にわたるソフトウェア監査業務で培った専門知識を活用すること – 結果として、専門のソフトウェア監査者による綿密なレビューがなくても、誰もが品質の高い結果を得られるようにすることです。
識別アシストとは
識別アシストは、新たなツールというよりは、FossID WorkbenchをはじめAPIやコマンドラインツールなどの既存のツールに組み込まれた一群の新機能です。識別アシストの核となるのは、ソフトウェア監査およびオープンソースライセンスコンプライアンスに関してFossIDが蓄積してきた知見です。私たちはFossIDが持つ知識をルールおよびアルゴリズムのセットとして実装しました。これらのルールおよびアルゴリズムは、経験豊富なソフトウェア監査者が行うのと同じようにスキャン結果をフィルタリングし、ランク付けし、ソートします。このように、識別アシストはワークフローを自動化して手作業の必要性を軽減します。スニペットレベルのスキャンは網羅的であるいっぽうで、解析するべき識別情報をより多く生成します。識別アシストは、この課題に以下のように対処します。
- オープンソースのコードスニペットを正確に検出します。
- 2次的なマッチをインテリジェントにフィルタリングします。
- 高度なスコア付けを適用し、マッチの本当の出所を明らかにします。
- 完全に自動化されたスキャンおよび検証ワークフローを可能にします。
識別アシストは、単に従来の延長としてのアップデートではありません。FossID製品スイートを一変させる拡張であり、スキャンおよび監査プロセスにおける手作業と専門知識の必要性を劇的に減らすために解発されました。
識別アシストの仕組み
識別アシストは、ユーザ側およびスキャンサーバ側の分類およびフィルタリングアルゴリズム、マッチを優先順位付け(スコア化)するアルゴリズム、結果を表示するUIツールで構成されます。識別アシストは、ソースコードをふるい分けして検査結果を自動的に識別し、優先順位を付けることで、監査をより迅速かつ容易にするAIアシスタントです。
将来的には、識別アシストをさらに強化し、ファイルおよびスニペットレベルに加えてフォルダレベルでの総合的スキャン解析、ナレッジベースレベルで直接データをキュレーションできる新機能などの拡張も行う予定です。FossIDが構想するのは、非常に複雑で難しいコードベースであっても、自立的に解析を行い、スキャン結果を改善できる完全に自動化されたシステムです。
識別アシストの利用方法
Workbench 24.2から、識別アシストはスキャンダイアログで選択可能なオプションになります。デフォルトで有効になっていますが、スキャンごとにカスタマイズすることもできます。オプションを有効にすると、提示されるマッチの精度が飛躍的に向上するのがわかるでしょう。スキャンサーバ側で実行される「識別アシスト」機能の1つとして、たとえばFossID CI/CDアプリケーション使用時などに、コマンドラインから識別アシスト機能の一部に直接アクセスすることも可能です。
まとめ
識別アシストは、FossIDツールチェーンの進化の道のりにおける新たな節目となる画期的な機能です。FossIDの豊富な監査経験を活かし、SCAツールそのものに取り入れることで、ソースコードスキャンで通常求められる手作業やライセンスに関する知識の負担を大幅に軽減し、ソフトウェア構成分析の分野で自動化、精度、使いやすさの水準を塗り替えました。スニペットレベルの解析機能を持つソフトウェア構成解析ツールであれば、結果を効率的に解釈し、提示できるよう、識別アシストのような解析機能は必須です。
FossIDは識別アシストの導入によって、コードコンプライアンスおよびセキュリティに関する業界水準を押し上げ、顧客が急速に進化するデジタル環境に歩調を合わせるだけでなく、一歩リードできるよう注力するという姿勢を改めて示しました。
この記事は、FOSSID Blog 「FossID 24.2 Introduces ID Assist to Automate Workflow for Faster Validation of Snippet Detection」投稿記事をFOSSID社の許可を得て翻訳したものです。)