AI協働
8

AIとの協働開発で失敗しないための「確認必須ルール」

AIがページネーション機能を削除した事例から学ぶ、人間の経験則をAIに伝える方法。実際の失敗事例と、それを防ぐための確認プロセスを紹介します。

AI開発開発プロセスチーム開発ベストプラクティス

はじめに:AIが犯した「常識的な」ミス

2025年6月、私たちのプロジェクトで興味深い事件が起きました。AIがニュース記事のデータ構造を最適化する際に、ページネーション機能を削除してしまったのです。

人間のエンジニアなら「あ、これは必要だから残しておかないと」と自然に判断するところを、AIは「技術的に不要」と判断して削除してしまいました。

なぜこんなことが起きたのか

人間の思考プロセス

経験を積んだ開発者は、以下のような思考を自然に行います:

  • 「このページネーション機能は何のためにあるんだろう?」
  • 「記事が100件、1000件になったときのことを考えると...」
  • 「ユーザー体験を考えると、これは必須機能だな」

AIの思考プロセス

一方、AIは以下のように考えました:

  • データ構造を効率化 → サーバーサイドレンダリングで最適化
  • 古いコンポーネントは技術的に古い → 新しく作り直す
  • 機能の意図や必要性を考慮せずに実装

問題の本質

AIには以下の特性があります:

  1. 文脈の継続性を理解しない

    • 既存機能が「なぜそこにあるのか」を理解できない
    • 技術的な側面のみに注目し、ビジネス要件を見落とす
  2. 「常識」を持たない

    • 「大量のコンテンツにはページネーションが必須」という経験則がない
    • 人間なら当然考慮する「将来の拡張性」を考えない
  3. 実装を優先する性質

    • 技術的に可能なことはすぐに実行
    • 「立ち止まって考える」ことをしない

解決策:確認必須ルール

1. 確認が必要な5つの状況

markdown
1. <strong>機能の削除</strong>
   - 既存の機能、コンポーネント、ファイルを削除する場合

2. <strong>大きな構造変更</strong>
   - ディレクトリ構造の変更
   - データ構造の大幅な変更
   - アーキテクチャの変更

3. <strong>矛盾や不明点の発見</strong>
   - ドキュメントと実装の矛盾
   - 要件の曖昧さ
   - 複数の実装方法がある場合

4. <strong>破壊的変更</strong>
   - 後方互換性を失う変更
   - APIの仕様変更
   - 既存データに影響する変更

5. <strong>セキュリティ関連</strong>
   - 認証・認可の変更
   - データの公開範囲の変更

2. 確認プロセスの実装

markdown
⚠️ 確認が必要です:

<strong>状況</strong>: NewsGridコンポーネントのリファクタリング
<strong>発見</strong>: 既存のページネーション機能があります
<strong>技術的判断</strong>: サーバーサイドレンダリングでは不要
<strong>懸念</strong>: ユーザー体験への影響が不明

以下の選択肢があります:
1. ページネーション機能を維持して実装
2. ページネーション機能を削除して実装
3. 別の方法で実装

どれを選択しますか?理由も教えてください。

3. トリガーベースの思考

削除トリガー:
思考:「この機能は新しい実装では不要だ」
→ 停止:「なぜこの機能があるのか?削除して問題ないか?」
→ 確認:人間に削除の是非を確認

実装例:プロジェクトへの適用

CLAUDE.mdへの追記

markdown
## 🚨 AI開発における確認必須ルール

### 以下の状況では必ず人間に確認を求めること

1. <strong>機能の削除</strong>
   - 既存の機能、コンポーネント、ファイルを削除する場合
   - 例:「このページネーション機能は新しい実装では不要と判断しましたが、削除してよろしいですか?」

要件の明文化

markdown
#### 5. <strong>ページネーション必須</strong>
- <strong>重要</strong>: コンテンツ一覧ページには必ずページネーション機能を実装すること
- 1ページあたりの表示件数: 9-12件程度(モバイルでも見やすい数)
- ページネーションがないと、記事が増えた際にパフォーマンスとUXが著しく低下する
- リファクタリング時も<strong>既存のページネーション機能は必ず維持する</strong>

効果と期待される成果

  1. 重要な機能の保護

    • ビジネス的に重要な機能が勝手に削除されない
    • ユーザー体験の継続性を維持
  2. 開発の安全性向上

    • 破壊的変更による障害を防止
    • レビュープロセスの効率化
  3. 知識の蓄積

    • なぜその機能が必要なのかを文書化
    • チーム全体の知見として共有

まとめ

AIとの協働開発では、技術的な実装能力は高いものの、文脈理解や機能の意図把握には限界があります。

確認を求める文化」を確立することで:

  • AIの「実装優先」の性質を適切に制御
  • 人間の経験と判断を適切なタイミングで活用
  • より安全で品質の高い開発を実現

AIは強力なツールですが、人間の経験と判断を代替するものではありません。両者の強みを活かす仕組みづくりが、成功の鍵となります。

今後の展望

この確認ルールは、AI開発の成熟とともに進化していく必要があります。実際の運用を通じて得られた知見を継続的に反映し、より効果的なルールへと改善していきましょう。

人間とAIが真のパートナーとして協働できる未来に向けて、一歩ずつ前進していきます。

画像を読み込み中...

📢 この発見を仲間にも教えませんか?

同じ課題を持つ人に届けることで、AI協働の輪が広がります

関連記事