AI駆動開発による検証──従来の10分の1の時間で修正完了
仮説を検証するため、齋藤氏のチームはAI駆動開発ツールを活用した実証実験を開始した。使用したのはRoo Code(Clineのフォーク)とClaude Sonnetで、実装モード、設計モード、質問モードを駆使してQAエンジニアの開発エンジニア化を図った。Roo CodeはVS Code上で動作するAI開発アシスタントで、Claude SonnetはAnthropic社の大規模言語モデルだ。開発アシスタントは複数の選択肢はあるが、齋藤氏は「2024年12月時点でRoo Codeのユーザー体験が非常に良かったため採用した」と選定理由を説明する。
従来のワークフローとAI駆動開発の違いは劇的だった。従来であれば、QAがバグを発見してチケットを作成し、開発エンジニアに依頼して修正コードを実装するまでに1〜3日を要していた。しかし、AI駆動開発では、QAがバグを発見した後、AIに対して「このボタン、仕様書では青なのに緑で表示されているのを修正して」とチャットで依頼するだけで、AIが修正を実行し適用まで完了する。平均所要時間は10〜30分と大きく短縮できた。
開発エンジニアによる検証を実施し、自社WebアプリケーションのRubyで作られた機能をAI駆動開発に適したNext.jsでリプレースした結果、生産性が52.19%向上した。「AI活用により約1.5倍の機能実装が可能になった」と齋藤氏は成果を報告する。ClaudeのAPI費用として21万円が発生したものの、「開発エンジニアを一人雇うよりもはるかに安い」と費用対効果の高さを強調した。
AI駆動開発を効率的に進めるため、新機能追加と軽微な機能修正の2つのフローを確立した。新機能追加では、要件定義書をRoo CodeのAsk Mode(質問モード)で壁打ちしながら作成し、AI Architect Mode(設計モード)で機能仕様書と詳細設計書を作成、最終的にAI Code Mode(実装モード)で実装する。
軽微な修正では、チケット内容を確認して修正仕様書と計画書をAI Architect Modeで作成し、レビュー後にAI Code Modeで実装を進める。
齋藤氏は、AI駆動開発の重要なポイントとして4つを挙げた。第一に、AIのドキュメントレビューを実装前に必ず行うべきということで、「チーム内でドキュメント共有してフィードバックを入れること。認識のずれや仕様の抜け漏れを防げるので、これは絶対やるべきだ」と強調する。
第二に、AIの方向性に迷いが出たら勇気を持ってやり直すこと。「一度実装を進めると軌道修正が困難で、不要なテーブルや負の遺産が残ってしまう」からだ。第三に、AIの知っている情報になるべく委ねること。知らない情報で進めるとハルシネーションを起こして実装が破綻する可能性がある。
最後に最も重要な点として、「これはAIが書いたコードだから」ではなく「これは自分が採用したコードだから」という姿勢を持つことを挙げた。「AIはあくまでも部下。最終的な責任はそれを採用した本人にある」と責任の所在を明確化した。

