管理者ダッシュボードをAIと共に設計・実装して分かったこと

プロトタイプから運用可能なサービスへ — 設計書99件追加と管理機能の全貌

運用基盤なきサービスは成り立たない

wagahiアプリの開発がMVP_05(2025年12月4日〜26日)に入り、いよいよ管理者機能と運用基盤の構築に着手しました。

ゲームとしての機能がいかに優れていても、ユーザー管理、お知らせ配信、セキュリティ管理ができなければ、サービスとして成り立ちません。MVP_05は、wagahiアプリを「プロトタイプ」から「運用可能なサービス」に進化させるフェーズでした。

プログラム設計書99件の追加作成

MVP_05の管理者機能は、MVP_01〜04とは異なる設計アプローチが必要でした。管理者専用のEntity、Repository、Service、Controller、DTO、フロントエンドコンポーネントを新たに設計する必要があります。

Claude Codeを使って99件のプログラム設計書を追加作成しました。MVP_01で確立した7フェーズ方式と同じ手法で、依存関係を考慮した順序で生成しています。

しかし今回は、設計書のレビュープロセスを強化しました。

189件の指摘対応 — 品質プロセスの進化

99件の設計書に対して実施した品質レビューで、189件の指摘事項が検出されました。

指摘の内訳は以下の通りです。

  • 命名の不整合: 上位設計書との命名規約の齟齬
  • セキュリティ考慮不足: 管理者権限チェックの漏れ、入力バリデーションの不備
  • エラーハンドリング: エラーコードの未定義、例外処理の不足
  • API設計: RESTful原則との乖離、レスポンス形式の不統一

189件すべてに対応し、全設計書を修正。この「99件作成→189件指摘→全対応」のプロセスは、MVP_01での「140件作成→準拠性100%検証」の経験が活きた結果です。AI駆動開発における品質プロセスは、プロジェクトを重ねるごとに洗練されていきます。

管理者MFA認証(TOTP)の実装

管理者ダッシュボードへのアクセスには、多要素認証(MFA)を必須としました。採用したのはTOTP(Time-based One-Time Password)方式です。

TOTPは、Google AuthenticatorやMicrosoft Authenticator等のアプリで30秒ごとに更新される6桁のコードを使って認証する方式です。パスワード(知識要素)+ ワンタイムコード(所持要素)の2要素認証により、管理者アカウントの不正アクセスリスクを大幅に軽減します。

実装にあたっては、oathtool(コマンドラインTOTPジェネレーター)を使った自動ログインスクリプトも作成しました。Claude CodeのセッションからMFA認証を含むログインを自動実行できるため、結合試験の自動化にも支障がありません。

Phase 1-9の10段階実装

MVP_05の実装は、Phase 1からPhase 9までの10段階(Phase 0含む)で進めました。

  • Phase 0: 管理者DBマイグレーション(19件のFlywayスクリプト)
  • Phase 1-2: Entity・DTO定義
  • Phase 3: Repository実装
  • Phase 4-5: Service層・ビジネスロジック
  • Phase 6: Controller・APIエンドポイント
  • Phase 7-8: フロントエンド管理画面
  • Phase 9: 統合テスト・受け入れ試験

各Phaseの完了条件を明確に定義し、Phase単位でのビルド・テスト通過を必須としました。この段階的アプローチにより、23日間という限られた期間で大規模な機能追加を完了できました。

メールアドレス変更機能 — 39/39合格

地味ながら重要な機能として、メールアドレス変更機能を実装しました。

Magic Link認証を採用しているwagahiアプリでは、メールアドレスがログイン手段そのものです。メールアドレスの変更には、旧アドレスへの確認メール→新アドレスへの検証メール→本人確認完了という3ステップのセキュリティフローを設計しました。

結合試験では39項目の期待結果すべてに合格。正常系だけでなく、無効なメールアドレス、既に使用中のアドレス、検証トークンの期限切れなど、異常系のテストケースも網羅しています。

お知らせ管理とCOPPA準拠

管理者ダッシュボードの主要機能として、お知らせ管理ユーザー属性情報機能を実装しました。

お知らせ管理では、管理者がMarkdown形式でお知らせを作成し、対象ユーザーグループに配信できます。reCAPTCHA v3を統合し、管理画面からのbot攻撃を防止しています。

ユーザー属性情報では、COPPA(Children's Online Privacy Protection Act)準拠を重視しました。13歳未満のユーザーに対するデータ収集制限、保護者同意の要求など、法令に基づいた設計を行っています。位置情報ゲームは子どもも利用する可能性が高いため、法令対応は設計段階から組み込む必要がありました。

次回予告

次回は、MVP_05からRC_01にかけてのTCGカード風UIとキャラクター擬人化機能の詳細をお伝えします。ゲーム要素決定アルゴリズムの設計、画像DB格納の技術的課題、そしてリリース候補版への道のりについて記録します。


本記事は2025年12月時点の情報に基づいています。

著者: 株式会社シーテン — インフラ系から宇宙関連システムまで20年以上の開発経験を持つ技術者集団。2025年より生成AI・AIエージェントを活用したAI駆動開発に本格参入し、自社プロダクト「wagahi」の開発を通じて実践知見を蓄積中。

関連記事:

投稿者プロフィール

Mark4
Mark4