第9部:実践プロジェクト Step 31 / 36

実践プロジェクト:要件定義

リアルタイム同期対応のプロジェクト管理ツールを、AIと一緒に要件定義から構築します。

Claude Codeでプロジェクトを始める

まずプロジェクトフォルダを作成し、Claude Codeを起動します。Gitリポジトリを初期化しておくことで、Claude Codeがバージョン管理を活用しながら開発を進められます。

# プロジェクトフォルダを作成
mkdir taskflow
cd taskflow

# Gitリポジトリを初期化
git init

# Claude Codeを起動
claude

Claude Codeが起動したら、プロジェクトの要件をそのまま自然言語で伝えることができます。

プロジェクト概要

作成するアプリ:TaskFlow

カンバン形式のプロジェクト管理ツール。複数ユーザーがリアルタイムで共同作業できる。

主要機能

  • ・カンバンボード(ドラッグ&ドロップ)
  • ・リアルタイム同期
  • ・チーム・メンバー管理
  • ・タスクのコメント

技術スタック

  • ・Frontend: Next.js 14
  • ・Backend: FastAPI
  • ・DB: MySQL
  • ・リアルタイム: WebSocket

AIと要件整理

Claude Codeへの指示

プロジェクト管理ツール「TaskFlow」の要件を整理してください。

【概要】
カンバン形式のタスク管理アプリ。リアルタイム同期対応。
複数ユーザーが同時に同じボードを操作できる。

以下を洗い出してください:
【ユーザーストーリー】主要なユースケースを網羅
【機能一覧】優先度(必須/Phase2/Phase3)付きで作成
【画面一覧】各画面の目的と主要UI要素を記載
【API一覧】RESTful APIのエンドポイント設計

Claude Codeが行うこと

上記の指示を受けると、Claude Codeは以下の作業を自動的に進めます。

  • 要件の分析

    指示内容を解析し、不足している要件や曖昧な点を洗い出します

  • ユーザーストーリーの生成

    「〇〇として、△△したい。なぜなら□□だから」の形式で具体的なストーリーを作成します

  • 機能一覧の作成

    MVP(最小限の実用的な製品)に必要な機能を優先度付きでリストアップします

  • 画面・APIエンドポイントの設計

    画面遷移とRESTful APIのエンドポイントを一覧として整理します

機能一覧(MVP)

機能 説明 優先度
ユーザー認証登録・ログイン必須
プロジェクト作成ボードの作成・編集必須
タスクCRUD作成・編集・削除必須
ドラッグ&ドロップタスクの移動必須
リアルタイム同期WebSocketで即時反映必須
コメント機能タスクへのコメントPhase2

Claude Codeに要件ドキュメントを作成させる

Claude Codeへの指示

TaskFlowプロジェクトのREADME.mdを作成してください。
プロジェクト概要、技術スタック、機能一覧(MVP)、
セットアップ手順のセクションを含めてください。

README.mdを先に作ることで、プロジェクトの全体像をClaude Codeと共有できます。以降の開発でClaude Codeに指示を出す際、README.mdの内容がコンテキストとして自動的に参照されるため、一貫性のあるコード生成が期待できます。

README.mdに含めるべき情報

  • ✓ プロジェクト名と概要説明
  • ✓ 使用する技術スタック(Next.js, FastAPI, MySQL, WebSocket)
  • ✓ MVP機能の一覧と優先度
  • ✓ ローカル環境のセットアップ手順
  • ✓ ディレクトリ構成の概要

次のステップ

要件が整理できたら、次はアーキテクチャを設計します。Claude Codeと一緒に技術選定とディレクトリ構成を決定し、フロントエンドとバックエンドの責務分担を明確にしましょう。

要件定義ドキュメント(README.md)があることで、アーキテクチャ設計時にもClaude Codeが一貫した提案を行えます。

Git操作の効率化 次へ:アーキテクチャ決定