🤖
Claude Opus 4.5、Gemini 3 Flashで仕様駆動でアンケートシステム作成
前回Gitクライアント作成でClaude Opus 4.5を利用すれば仕様駆動ができそうだと感じたので試してみました。
業務でもClaude Opus 4.5を多用していますが、1週間ほどで個人に割り当てられている上限まで使ってしまったこともあり、低コストモデル(Gemini 3 Flash)も使ってコストを抑えることができないかの検証も行いました。
Claude Opus 4.5:仕様駆動ドキュメント作成、Gemini 3 Flashが指示に従ってくれなかったときに代わりに対応、バグの原因確認修正
Gemini 3 Flash:バックエンド・フロントエンド実装とUT作成
Gemini 3 Flashはコストを考えると極めて優秀でした。ただ、プロンプトの指示に従わないこともありそこのチューニングが必要だと感じました。
成果物
| 管理画面 | アンケート作成画面 | アンケート回答画面 |
|---|---|---|
![]() |
![]() |
![]() |
環境
- 作業期間:2025/12/18 - 2025/12/19
- モデル:Claude Opus 4.5、Gemini 3 Flash
- ツール:Antigravity
仕様駆動ドキュメント作成
docs/requirements.md 作成
本プロジェクトは仕様駆動で進めます。ドキュメントはdocs/requirements.md,docs/designs.md,docs/tasks.mdの3つのファイルを作成します。
まずはdocs/requirements.mdを作成します。Webで動作するアンケートシステムの開発です。想定するものをdocs/requirements.mdに記載してください。
# 各ドキュメントの説明
## docs/requirements.md
Natural prompt to structured requirements
Kiro takes your natural language prompt and turns it into clear requirements and acceptance criteria in EARS notation, making your intent and constraints explicit.
## docs/designs.md
Architectural designs backed by best practices
Once you’ve iterated on requirements, Kiro analyzes your codebase and comes up with the architecture, system design, and tech stack that meets your needs.
## docs/tasks.md
Discrete tasks that map to requirements
Kiro then creates an implementation plan with discreet tasks, sequenced based on dependencies, with optional comprehensive tests. Ask Kiro to implement each task using advanced agents, and watch the magic happen.
(docs/requirements.mdにAntigravityの機能からコメント)
コメントを追加したので確認してください。
追加したコメントにより不要になる画面や機能は適宜削除を行ってください。
docs/designs.md 作成
問題ありません。docs/designs.mdの作成を行ってください。
docs/designs.mdはDDDを意識して設計していますか?
DDDを意識した設計に変更してください。
(docs/designs.mdにAntigravityの機能からコメント)
コメント追加しました。確認してください。
バックエンドについて自動テストを導入したいです。テスト方針(メソッド単位のテスト)などの方針を検討してください。
以下ライブラリを利用したいです。使いこなすことはできますか?
github内のドキュメントをdocs_mockioに配置しているので確認してください。
https://github.com/ovechkin-dm/mockio
mockioを使用する方針で設計書を更新してください。
testを実行する際にlocalで起動しているDynamoDBのデータの初期化が必要になるケースがあると思いますがどのように実現しますか
テストヘルパーの説明を追加してください。
docs/designs.mdの記載問題ありません。今回のdocs/designs.mdの作成に伴って、docs/requirements.mdに追記が必要な情報があれば追記してください。
docs/tasks.md 作成
docs/tasks.mdの作成に進んでください。
(docs/tasks.mdにAntigravityの機能からコメント)
コメント記載したので確認してください。
Antigravityの使用感
- 仕様駆動とAntigravityのドキュメントに対するレビューの仕組みの相性がよい。
- ブラウザモードはやや微妙。正常ではない挙動があると何度もリトライしてしまったりしたので、自分が触って問題があるところを指摘したほうが早かった。
環境・AI用ドキュメント整理
- アプリケーションの起動はDockerが絡む関係でsudoすることが多くAIに任せづらかった。Dockerコマンドはsudo不要にしたほうが都合がよいかも。
- AI用にドキュメントを配置する。今回はmockioのドキュメント。ignoreの対象ディレクトリはデフォルトの設定だと参照しないので一時的に外すなどの対応が必要。AI用に見える場所にライブラリのドキュメントを配置するのは有効だった。Git管理外のフォルダをワークスペースに追加してそこに利用するライブラリのドキュメント置くのは良いかも。
仕様駆動のドキュメントで記載したほうが良かったこと
- 画面の入力項目一覧はあったほうがよいかも。Gemini 3 Flashのフロントエンドの対応で項目が足りていないケースがあった。
- tasks.mdにどのような単体テストを作成するか具体的に記載するようにしたほうが良かった。
Opus 4.5
- 何か困ったときはたいていなんとかしてくれる。
- 仕様駆動のドキュメント作成も精度が高いと感じた。
- Gemini 3 Flashのレビュー役、フロントエンドなどテストできないものはOpus 4.5にレビューしてもらったほうがよいかも。
Gemini 3 Flash
良い点
- 速い。精度もかなり高い。
- 仕様駆動の実装役としての適性が高い。
- バックエンド、フロントエンド共に数点ミスがあったが許容できる範囲。
- そのままでは動かず数回やりとりが必要だったがDockerfileやDocker Composeの作成もできた。
プロンプト調整余地
指示から逸脱する挙動が見られ、指示から逸脱するとき連絡がなく気づけなかった。
- 使うように書いていたライブラリを使わなかった。
- tasks.mdに単体テストを作成する旨書かれているのにほとんど作成されていなかった。
フロントエンドについて
- フロントエンドの見た目は自分はあまり好みではなかった。どんな指示をしたらどんなフロントエンドが出来上がるかのパターンは知りたい。
- Tailwind CSSを使うように指示したらどんな感じになるか確認したい。
AIとDDD
- DTO、集約、値オブジェクト、ユースケースなどの構造は適切に作成してくれる。
- ロジックがユースケース層に集中しがちで、ドメインモデル貧血症のような状態になっている。
- 「先にユースケースとして実装させ、後からドメイン層へロジックを寄せる」というリファクタリング工程を挟むのがAIには向いているかもしれない



Discussion