私はここ1年ほど、Product Owner の役割で業務を行っています。
Product Owner はスクラムにおいて「何を作るか・なぜ作るか」を決める役割で、プロダクトバックログアイテム(PBI)の作成や受け入れ条件の整備などを主な仕事としています。
ここ最近は業務の各工程でコーディングエージェントを利用することが欠かせなくなりました。
開発業務以外にもコーディングエージェントは非常に役に立っています。
真新しい技術の話ではないですが、ちょっと紹介させてください。
コーディングエージェントの3つの利用シーン
(1) プロダクトバックログアイテム (PBI) 作成時の活用
Product Owner の主な仕事の一つに、PBI の作成があります。
これは簡単に言えば「作りたいもの」を文字列で書くわけです。
コーディングするわけではないので、コーディングエージェントと関係無さそうと思いきや、結構使えます。
特に既存のコードの手直しをするような PBI を定義する際に有効です。
関連性の強いリポジトリでコーディングエージェントを起動し、自分で手書きした雑な PBI 案を渡してあげることで、既存のコードを考慮して前提条件の整理等をやってくれます。
注意点としては、様々な障壁を把握できすぎてしまうので、長大な PBI になってしまうことです。
PBI に実装上の観点を入れすぎると開発の進め方を不要に制限してしまったり、認知負荷が高まったりするので、最後に記載の簡略化を実施するようにしています。
(試行錯誤中です...)
Tips: 地味な工夫
たまにチケット作成時、自分がミスリードする指示を出してしまったことに気付くことがあります。
そういう時は、「ごめん、さっきの前提が間違ってた。〜」のような形で「ごめん」を明記したプロンプトを書いてます。
効果があるかは正直まだ検証できていないですが、自分のミスを明確にする習慣として続けています。
逆に意図した回答があった場合は「ありがとう。」を明記して後続のプロンプトを与えます。
(成果が全部出た後の単発「ありがとう」は書いていません)
(2) プルリクエスト (PR) レビュー時の議論の裏取り
PR に自動で AI レビューする仕組みを動かしているリポジトリがあります。
AI 側は私たちのチームより多くの「一般的な用語」を知っていたりするので、よく知らない言葉で返信してくることがあります。
また、私の知らない理論で説明してくることがあります。
このようなケースでは、PR の修正とコメントをコーディングエージェントに読ませて追加の解説を求めることがあります。
「何となく OK」を避ける工夫です。
また、AIとのやりとりで「ここは修正した方が良いかも..」と思っても、自分の理解が浅い技術的な内容をうまく説明できないなと思う場面が何度かありました。
このような場合は返信コメント自体もコーディングエージェントに書いてもらうことがあります。
これも長大になりがちなので、簡潔に整理し直してから投稿しています。
(3) コード作成時
Product Owner かつエンジニアなので、たまにチケットを自ら遂行することもあります。
その場合は通常通りのコーディングエージェント活用になりますね。
PBI 作成時のサンプルコード作成も、関連リポジトリでコーディングエージェントを開くことで精度が上がります。
これによりリファインメント時の説得力が高まります。
Tips: 生成されたコードで見落としがちと思う観点
生成したコードが機能面では問題なく動作していたが、実行権限や環境設定に関わる変更が紛れていたことがありました。
例えばチケット作成時に詰めた仕様の一部が、実装してみたら上手く行かず、別の方式に切り変えたことがありました。
この実装にセキュリティリスクを抱えた構成がありました。
このため、実装後の手元でのコード確認時や PR レビュー時は「機能面」だけでなく「権限・実行環境が変わっていないか」も確認するようになりました。
共通する注意点: AIは「もっともらしく」振る舞うのが得意
AI は与えられたプロンプトに対して「もっともらしく」回答してくることに注意が必要と思います。
例えば AI が投稿したレビューコメントに対して強めに反論を書くと、若干技術的に怪しい反論でも割と簡単に折れてしまいます。
また、コード生成時も当初のプロンプトの考慮不足に対して「ここはこう調整しました」の一言がある場合には、致命的な設計ミスを隠していることがあります。
AI が「迎合していないか?」を意識的にチェックする必要があると感じています。
まとめ
- AI が得意なことは AI に任せると強い
- 言語化、整理、たたき台作成など
- ただし最後は自分で判断する
- AIが「迎合」してしまうケースに要注意
- 特に強めの主張への応答は要チェック
以上、Product Owner という非エンジニア寄りに見られがちな役割でも、コーディングエージェントは日々の業務の随所で活躍しています。同じような立場の方の参考になれば幸いです。