目的
既存機能を改修するときに、基本設計レベルでざっくりとその機能について知りたい。
その説明を片手にコードを追えば、仕様把握が爆速になるような予感。
環境
- Cursor
- Gemini 2.5 Pro
準備
(超重要) 自分でコードなり画面なりを眺めて、知りたいドメインに関係するキーワードを洗い出す!
例えば、ECサイトだったら下記のようなものを想定
- 注文金額
- 商品
- リードタイム
Bizサイドとの会話でも出てくるような粒度の単語をピックアップしておく。
AIへのインプット
- ドメインキーワードを列挙する
- 「このドメインに関して説明して」とお願いする
- 参考になるエントリーポイントを教える
- APIエンドポイントのファイル (
@HogeService
みたいな感じで) - Serviceクラスの処理が始まってる箇所 など
- APIエンドポイントのファイル (
- 「まとめたものをmdファイルに出力して」と頼む
実際のプロンプトはこんな感じ。
@HogeService で配達可能日のロジックを出していると思います。
登場する概念は下記と認識しています(間違っているかも)
## 登場する概念
配達可能日のリストを出したいという意図
- 配達不可日
- 締め時間 xx時までの注文をxx日に最短配達
この概念がそれぞれどのモデルと紐ついているかわかりますか?
また、指定の概念が見つからなければ見つけられないと言って
調査結果はmdファイルで出力してください。
ブラッシュアップ
AIが一発で完璧な答えを出してくれるとは限らない。
下記のようにブラッシュアップしていく。
- 「この部分、もっと詳しく教えて」「この解釈で合ってる?」みたいに、ガンガン質問する。
- AIの回答をもとに、mdファイルをどんどん更新させる
やってみた感想
- こっちが指定したドメインの単語ベースで会話してくれるので、スムーズ
- 多少コードがカオスってても、いい感じに仕様をまとめてくれる印象