ソースコードの静的解析+LLMで限界突破! Claude Code で変えるコード解析とその未来 by Kuu (Kume Fumiya)

YAPC::Fukuoka 2025
トーク(40分)
当日の配信可(OK) アーカイブ配信可(OK)

ソースコードの静的解析+LLMで限界突破! Claude Code で変えるコード解析とその未来

fumiya_kume Kuu (Kume Fumiya) fumiya_kume
3

ソースコードを解析するには、静的解析や動的解析などの手法があります。 また、昨今ではLLMの進化が激しいためChatGPTなどにソースコードの解析を任せるケースが増えてきたのではないでしょうか?

従来の手法では、精度が高いが実装コストが高く、LLMだけに任せた場合は柔軟なフォーマットですが精度に疑問が残ります。
特に解析対象のソースコードの量が増えていくと、一筋縄で行かない問題が増えていきます。

実例: 大規模Android アプリに含まれる画面一覧をソースコードより取得したい。
・手動でドキュメント等をメンテナンスするのは限界があるから自動化したい
・Cursor等に単純にリクエストを投げるだけだと、かなりの数の取り残しが発生した。
・静的解析だけでは、画面の存在は知ることができるが、どのような画面なのか判別できない

そこで、このセッションではメルカリの大規模ソースコードを解析するために静的解析とLLMを組み合わせ、従来の弱点を克服する手法を提案します。
また、単純に静的解析とLLMを組み合わせただけでは、限界があります。 LLMとのSessionのContextが埋まってしまい、精度高く処理を完了することができません。
Claude Code の Sub-Agent 機能を有効活用し、意識的なContext Engineeringを実施することで、より効果的に、精度高く解析を完了させることができます。

本セッションでは、従来手法の課題、実際のユースケース、導入による改善、そしてLLMを活用する際の限界や工夫を共有します。
「なぜそうなるのか」も時間の許す限り丁寧に説明していきます。 今後のLLMを業務で活用する場合に、活きる話を手堅くしていきます。