Upgrade to Pro — share decks privately, control downloads, hide ads and more …

知識を蓄積していくAI駆動開発

hayata-yamamoto
March 18, 2025
6.9k

 知識を蓄積していくAI駆動開発

AIを補助的に使う時代は終わりました。これからは、AIがプロセスを置き換える時代です。私たちは、AIを単なる効率化ツールではなく、ナレッジを蓄積しながら自律的に活用する開発手法を提案します。適切に設計すれば、AIはコードを書く、ドキュメントを整理する、意思決定を支援するなど、人間と協業しながら進化できます。人とAIの役割を見極め、開発プロセスを支援・拡張・自律化の3ステップで最適化する。それが、これからのAI駆動開発です。

hayata-yamamoto

March 18, 2025
Tweet

Transcript

  1. 山本隼汰 Tied株式会社 代表取締役 スタートアップ複数社を経験し、途中 EMやCTOをしたり しておりました。現在は、R&DやAI開発を軸に、プロダ クト開発を R&D からモバイルまでよしなにやったりし ています。何事にも仮説を考えるのが生き甲斐です

    好きなこと/も2 T 散歩(池袋〜大手町ルートをよく歩いてます T 動物(猫と暮らしております。犬も飼ってました)m T 会社四季報・業界地図(最近、毎日読んでます)
  2. 生成AI時代に前提としたい考え方 Good... AI を使ってプロセスを置き換える考え方 → AIがいれば、〇〇ができるよね。〇〇はAIにおまかせできるよね Bad... AI を補完的に使って人間の生産性を最大化しようと考え方
 →

    AI使うと〇〇が楽になるよね、XXが効率化されるよね かつてはこっちが主流でしたけどね... この置き換えをプロダクトの状況に応じて使い分けることが大事 「AIに全部丸投げが良い時」と「人間が積極的に関与した方が良い時」とは存在する ...では、状況に合わせて使い分けられるようにするにはどうするか?
 => ナレッジをコードベースに適切に蓄積し、人間とAIどちらも活用できる状態を作ろう
  3. AI活用の成熟段階 支援(Assisted Intelligence) 大量のデータ分析や知見提供を通じて
 人間の意思決定を補助する段階 拡張/協業(Augmented Intelligence) 機械学習などAIの能力を業務プロセスに組み込み、
 人間の分析や判断能力を強化する段階(人間とAIの協業) 自律(Autonomous

    Intelligence) プロセスがデジタル化・自動化され、
 AIが自律的に意思決定し行動できる段階
 (人間がAIに権限委譲した状態) *“AI-fueled organizations”
 https://www2.deloitte.com/us/en/insights/focus/tech-trends/2019/driving-ai- potential-organizations.html
  4. AI駆動開発 プログラム 開発者 AI Agents AI Agents プログラム 開発者 利害関係者

    利害関係者 利害関係者 ドキュメント 等 プログラム 開発者 AI Agents ドキュメント 等 ドキュメント 等 支援
 (Assisted Intelligence) 拡張/協業 (Augmented Intelligence) 自律 (Autonomous Intelligence)
  5. AI駆動開発 プログラム 開発者 AI Agents AI Agents プログラム 開発者 利害関係者

    利害関係者 利害関係者 ドキュメント 等 プログラム 開発者 AI Agents ドキュメント 等 ドキュメント 等 支援
 (Assisted Intelligence) 拡張/協業 (Augmented Intelligence) 自律 (Autonomous Intelligence) これらをうまく切り替えるための鍵が ドキュメントなどのナレッジ
  6. ところで...我々の強み・弱みとは? 代表的なものだけピックアップしてみると... Strength(強み… b 創造性と直感的判I b 倫理的・社会的判断と責e b 対人コミュニケーションとチームワーt b

    個別性が高くて多様 Weakness(弱み… b 感情に左右され„ b 主観的な判断をする可能性があ„ b 疲労や体調の影響を受け„ b 同じ人を瞬間的に増やすなど到底不可能
  7. 人間とAIの協業の可能性を考える 自分以外の人間( )
 AI( ) 関与なし 支援 拡張/協業 自律 関与なし

    E: 自分
 R: 自分
 A: 自分 E: 自分
 R: A: 自分 E: 自分, R: A: 任せた人たちが判断 支援 E: 自分
 R: A: 自分 E: 自分
 R: , A: 自分 E: 自分, R: 自分, , A: 自分, 任せた人たちが判断 拡張/協業 E: 自分, R: 自分
 A: 自分 E: 自分, 
 R: 自分, A: 自分 E: 自分, , R: 自分, , A: 自分, 任せた人たちが判断 自律 E: R: 自分
 A: 自分 E: R: 自分, A: 自分 E: R: 自分, , A: 自分, 任せた人たちが判断 拡張/協業の組み合わせが一番関係者が増え、コミュニケーションが煩雑に
 => 協業相手はAIか人間のどちらかに限定するのが合理的
  8. 緊急 非緊急 重要 対人間: 拡張/協業 対AI: 支援

 システム障害の対応やクレームへの対処など、迅速かつ正確でそ の後の説明まで人間が正しく行える状況を作るのが望ましいた め。一般的な対処法を迅速に知りたい時にAIを活用するなどが程

    よい 対人間: 支援 対AI: 拡張/協業 長期的な取り組みが必要であるが、とはいえリソースや予算を割 り振れない時もある。AIを活用することでよりスピーディかつ効 率的に成果を出せる 非重要 対人間: 自律 対AI: 人間が都度判断

 急ぎの対応が必要であるため、まずは初期対応を AI にやってい ただき、その先の対応は人間同士もオペレーションを作りながら なるべく権限移譲をして対応 対人間: 関与なし(or最小限) 対AI: 自律

 できる限り、AIで人間は関与せずにやる。重要で急ぎでもないが やらないといけないタスクはAIが捌けるように 緊急度と重要度での使いわけを考える 急ぎの場面では人と協業したいが、すぐには難しいのも事実... => 他人が勝手に開発したものをキャッチアップするには時間がかかる
  9. 動画・音声を最大限活用する プロダクトや製品の解説動画をオンボーディング用に作成し 書き起こしや要点をまとめたドキュメントを作成しておく
 (オンボーディングは、あくまで例でどんな会議でも可)
 手{ fc オンライン会議を開く(一人でも複数人でも可„ Qc 一人の方がおすすk Gc

    説明したい内容を長さ気にせず必要な分だけ話H Qc 事前に箇条書きで要点があれば良いがなくてもよU 2c 書き起こしを AI にまとめてもらい内容をチェッ‚ &c 問題がなければ、AIが読めるルールに入れž "c 人間用のオンボーディングコンテンツにリストしてお‘ Qc 要約と合わせて
  10. コードのドキュメントは AI に書かせる すでに書いてしまったコードは、AIに解釈させてみよう 概ね理解してくれると思うが、設計意図が反映されていない場合は フィードバックを重ねていくことで理解度を深めてあげるとよい
 手˜ fd Chat画面や Devin

    のUIなどを開いてドキュメントを書かせ– 8d 作成されてきたドキュメントが設計意図を反映しているか確“ Id 問題なければ採用してエディタが読めるルールに追3 2d 問題があれば、改善を促して再度チェック ※コーディングガイドラインなど方針や設計に関わる部分もそうだ が、コード中のコメントなどもこの方法で書かせてもよい
  11. AIを用途に合わせて使い分ける Chat 形式でインタラクティブにやり取りできるものと
 Devin のように async で動くものを適宜使い分ける。 できる限り、思い出した時に思い出した内容を依頼しておいて
 後からまたキャッチアップするのがベスト
 (重要だが緊急ではないことがほとんどなので)

    手r 43 Chat 形式で AI と開発したいものをやり取りす‡ 03 その途中で出てきた「そういえば」タスクを async に依} ‰3 Chat でのやりとりに戻り、解決すべきタスクを終わらせ‡ #3 タスクが終わったら、非同期で上がってきている PR を確認する
  12. ‍ 一人で開発しない イシューやタスクなどを最初からAIに投げ込んでおき、 調査や対応方針の検討を一緒に検討していく 手| ƒQ GitHub など MCPサーバーのセットアッa YQ

    すでに作成している Issue などのリンクを送c ‚Q ディスカッションを初めて、対応方針を決めてい… @Q (割り込みが入ったら)議論をやめてそちらに集中すT 1Q 対応が一定完了したらAIにドキュメントを書かせる ※
 スタートアップなど忙しい時ほど、
 コンテキストスイッチが起きるので
 自分の脳内に余計な記憶を残さないために重要
  13. 支援(Assisted Intelligence) AI Agents プログラム 開発者 利害関係者 ドキュメント 等 支援

    (Assisted Intelligence) AIが開発者をサポートし、開発者が主体的にプログラムを作成する Pros(利点† ’ 開発者の生産性向 ’ 人間のコントロールが強s ’ 学習効果があ™ ’ リスク管理がしやすい Cons(課題† ’ 開発者の負担が大きs ’ AIの活用度が限定€ ’ 人間の介入が前提
  14. 拡張/協業(Augmented Intelligence) 開発者とAIが共同作業を行い、それぞれが独立した役割を持つ Pros(利点x w AIの貢献度が高q w スピードと品質のバランスが取れI w 開発者の負担が軽減

    Cons(課題x w AIの品質管理が必( w 役割分担の調整が必( w 開発者のスキルが必要 プログラム 開発者 AI Agents 利害関係者 ドキュメント 等 拡張/協業 (Augmented Intelligence)
  15. 自律(Autonomous Intelligence) 利害関係者 プログラム 開発者 AI Agents ドキュメント 等 自律

    (Autonomous Intelligence) AIがプログラムやドキュメントを自律的に作成し、
 開発者はAIを監督する Pros(利点™ — 完全な自動化が可† — 開発スピードが飛躍的に向€ — 開発者は戦略的な役割に集中 Cons(課題™ — 品質管理が難しp — 開発者の役割が変わi — トラブル時の対応が大変
  16. AIを活用した開発で起きうる状況 プラス要因(Positive) マイナス要因(Negative) 内部要因 (Internal) Strengths(強み) 
 繰り返し作業の自動化により開発速度向上
 コード品質の向上(エラーチェック・リファクタリング支 援)


    データ分析や予測による意思決定の強化
 24時間稼働で開発の効率化
 一貫性のある成果物を提供できる
 若手エンジニアの学習支援として機能 Weaknesses(弱み) 
 AIの判断根拠が不透明(ブラックボックス問題)
 未知の問題や新しいアイデアの創出が苦手
 AIによる成果物の品質保証が必要
 導入・運用コストが高い(学習データや計算資源が必要)
 高度なAIを活用するには技術的な知識が必要 外部要因 (External) Opportunities(機会) 
 AI技術の進化による開発効率のさらなる向上
 市場競争力の向上(短期間でのプロダクト開発が可能)
 AI活用による差別化(データ駆動の意思決定やパーソナライ ズ機能)
 エンジニア不足の補完手段としての活用
 クラウドやAPIの活用で導入ハードルが低下
 顧客サポートや運用の自動化で維持コスト削減 Threats(脅威) 
 AIの品質やバイアスによるリスク(誤ったデータ学習による 問題)
 法規制の変化による制約(GDPR、AI倫理規制など)
 AI依存によるスキル低下(エンジニアがAIなしでは開発でき なくなる)
 セキュリティリスク(AIが誤った判断をすると重大な影響)
 競合企業もAIを活用し、優位性を維持しにくい