AI CODE ANALYSIS

AIによるソースコード解析と人による調査の違い|できること・限界・使い分け

2026年8月11日公開 ・ 9 min read

2人でパソコン画面を確認している様子
Photo by Vitaly Gariev on Unsplash

AIは大量のコードから構造や候補を速く抽出できますが、そのシステムが業務で何を意味し、どの挙動を守るべきかまではコードだけで確定できません。人による調査は、利用者、運用、契約、障害履歴などを照合し、事業判断に使える結論へ変える役割を担います。

AI解析と人による調査の違い

観点AIによる解析人による調査
速度多くのファイルを並列に読み、要約候補を作りやすい確認に時間はかかるが、重要度を判断できる
構造把握クラス、関数、API、DB参照、依存関係を抽出できる例外、暗黙の前提、実運用とのずれを確認する
仕様コードに実装された挙動から仕様を推定する正しい仕様か、偶然残った挙動かを関係者と判断する
業務背景入力された資料の範囲で関連づける利用者、契約、制度、顧客対応まで含めて意味を確認する
責任候補と根拠を提示する採用・修正・保留を判断し、説明可能な結論にする

AIが得意なこと

全体像の仮説づくり

ディレクトリ構成、主要モジュール、起動点、データの流れを整理します。

横断検索

同じデータ項目、外部API、認証処理、設定値が使われる場所を探します。

説明のたたき台

コードを読まない人向けに、処理の概要や用語集の初稿を作ります。

調査漏れの候補

未使用に見える処理、古い依存、例外的な分岐など、確認すべき箇所を挙げます。

AIの価値は、最終回答を無条件に得ることより、調査対象を絞り、人が確認する順番を速く作れることにあります。

AIだけでは確定できないこと

コードにない業務

電話や紙で補われる処理、担当者だけが知る例外対応、月末の手作業はリポジトリに現れません。

正しい仕様かどうか

実装されているからといって、現在も必要とは限りません。不具合、暫定対応、過去の契約条件が残っている可能性があります。

本番環境の実態

コードと本番設定が一致しているか、どのバージョンが動いているか、外部サービスの契約者は誰かを別途確認する必要があります。

優先順位とリスク許容度

同じ問題でも、決済、社内集計、キャンペーン機能では影響が異なります。事業側の判断なしに改修優先度は確定できません。

セキュリティ上の注意:解析対象のコード、設定、ログには秘密情報や個人情報が含まれる可能性があります。利用するAI環境、保存期間、学習利用の有無、アクセス権限、削除手順を確認してから投入範囲を決めます。

AIの出力を検証する6つの方法

  1. 根拠ファイルを示す説明ごとに対象ファイル、関数、設定箇所を紐づけます。
  2. 複数の情報源を照合するコード、DB、クラウド設定、ログ、画面、運用資料を比較します。
  3. 実行結果を確認するテスト環境や読み取り専用の調査で、推定した挙動を確かめます。
  4. 利用者へ聞く通常手順だけでなく、例外時や締め処理も確認します。
  5. 不明を不明のまま残す推定を事実として書かず、確度と未確認事項を分けます。
  6. 更新日と対象版を記録するどのコミット、環境、資料を調査したかを残します。

NISTのSecure Software Development Frameworkも、自動解析と人によるレビューを二者択一にせず、検出結果を人が確認し、優先順位付けと修正へつなげる考え方を示しています。

実務では「AIで広く、人が深く」調べる

最初にAIで全体を走査し、機能、依存関係、データ、外部連携の候補を作ります。その後、人が重要領域を選び、コード以外の証拠と照合します。最後に事業側と、守る仕様、廃止候補、追加調査が必要な点を合意します。

この分担なら、AIの速度を利用しながら、推測を確定情報として扱う危険を抑えられます。成果物には、結論だけでなく根拠と未確認事項を含めることが重要です。

AI解析を、経営判断に使える説明へ

Poge Lensは、AIによる解析と確認プロセスを組み合わせ、既存システムの機能、構造、データ、外部連携、変更時の注意点を整理します。出力イメージは成果物サンプルで確認できます。

まとめ

AIによるソースコード解析は、調査の速度と範囲を広げます。人による調査は、コード外の事実を集め、推定を検証し、事業上の意味と優先順位を決めます。どちらか一方に任せるのではなく、AIの出力に根拠と確度を持たせ、人が意思決定できる情報へ変えることが重要です。

参考資料

著者

高田 勝裕

チア株式会社 代表取締役・博士(理学)。Pogeの運営責任者として、ソフトウェア開発、既存システム可視化、システム内製化、生成AI活用に関する記事を執筆・監修しています。

← モダナイゼーションとの違いコラム一覧へ戻るソフトウェア設計のテーマを見るPoge Lensについて読む →