2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

プロンプトの意図を正しく伝えるには?

Posted at

以下のような質問をClaudeに行いました。

20250925-001.png

Claudeは「どんなフォーマットの仕様書を求めているのか」という不明点と質問の意図を汲みサンプルを出力するという内容を回答してくれています。

20250925-002.png

質問ではフォーマットの指定を行うかサンプルを求めていることをClaudeに対して行う必要があること分かります。

なので何が不足しているかを回答と照らし合わせながら質問を修正して意図を正しく伝えることが大切です。


回答の続き:

20250925-003.png

出力されたMarkdown
# プロジェクト名 仕様書

**バージョン**: 1.0  
**作成日**: 2025年9月25日  
**最終更新**: 2025年9月25日  
**作成者**: [担当者名]

---

## 📋 目次

1. [概要](#概要)
2. [目的・背景](#目的背景)
3. [ユーザー要件](#ユーザー要件)
4. [機能要件](#機能要件)
5. [非機能要件](#非機能要件)
6. [システム構成](#システム構成)
7. [データベース設計](#データベース設計)
8. [API仕様](#api仕様)
9. [UI/UX仕様](#uiux仕様)
10. [セキュリティ要件](#セキュリティ要件)
11. [テスト要件](#テスト要件)
12. [運用・保守](#運用保守)
13. [スケジュール](#スケジュール)
14. [制約事項・前提条件](#制約事項前提条件)
15. [用語集](#用語集)

---

## 🎯 概要

### プロジェクトの概要
このプロジェクトは[プロジェクトの簡潔な説明]を目的とした[システム/アプリケーション]の開発です。

### 主要な機能
- **機能A**: [機能Aの説明]
- **機能B**: [機能Bの説明]
- **機能C**: [機能Cの説明]

### 対象ユーザー
- **プライマリユーザー**: [主要ユーザー層の説明]
- **セカンダリユーザー**: [副次的ユーザー層の説明]

---

## 🎯 目的・背景

### プロジェクトの目的
[なぜこのシステムが必要なのか、解決したい課題は何かを明確に記述]

### 背景・課題
- **現状の課題**: [既存システムや業務の問題点]
- **解決したいこと**: [このプロジェクトで解決する具体的な内容]
- **期待する効果**: [導入後に期待される改善効果]

---

## 👥 ユーザー要件

### ユーザーストーリー

#### ユーザータイプA(例:一般ユーザー)
- **As a** 一般ユーザー
- **I want to** [やりたいこと]
- **So that** [その理由・目的]

#### ユーザータイプB(例:管理者)
- **As a** 管理者
- **I want to** [やりたいこと]
- **So that** [その理由・目的]

### ユーザージャーニー
```mermaid
graph LR
    A[ログイン] --> B[ダッシュボード]
    B --> C[機能選択]
    C --> D[操作実行]
    D --> E[結果確認]
```

---

## ⚙️ 機能要件

### 🔧 主要機能

#### 機能1: [機能名]
- **概要**: [機能の概要説明]
- **詳細**: [機能の詳細な動作説明]
- **入力**: [必要な入力データ]
- **出力**: [期待される出力]
- **制約**: [機能の制約事項]

#### 機能2: [機能名]
- **概要**: [機能の概要説明]
- **詳細**: [機能の詳細な動作説明]
- **入力**: [必要な入力データ]
- **出力**: [期待される出力]
- **制約**: [機能の制約事項]

### 📱 画面一覧

| 画面名 | 説明 | アクセス権限 | 備考 |
|--------|------|--------------|------|
| ログイン画面 | ユーザー認証を行う | 全ユーザー | - |
| ダッシュボード | システムの概要を表示 | 認証済みユーザー | - |
| 設定画面 | システム設定を変更 | 管理者 | - |

---

## 🚀 非機能要件

### パフォーマンス要件
- **応答時間**: 通常操作で3秒以内
- **スループット**: 同時ユーザー数100人まで対応
- **可用性**: 稼働率99.5%以上

### セキュリティ要件
- **認証**: [認証方式の説明]
- **認可**: [認可方式の説明]
- **データ暗号化**: [暗号化方式]

### 互換性要件
- **ブラウザ**: Chrome, Firefox, Safari, Edge(最新版から2バージョン前まで)
- **モバイル**: iOS 14以上, Android 10以上

---

## 🏗️ システム構成

### アーキテクチャ図
```mermaid
graph TB
    A[Web Browser] --> B[Load Balancer]
    B --> C[Web Server]
    C --> D[Application Server]
    D --> E[Database]
    D --> F[External API]
```

### 技術スタック
- **フロントエンド**: [使用技術]
- **バックエンド**: [使用技術]
- **データベース**: [使用技術]
- **インフラ**: [使用技術]

---

## 🗄️ データベース設計

### テーブル設計

#### usersテーブル
| カラム名 | データ型 | 制約 | 説明 |
|----------|----------|------|------|
| id | INTEGER | PRIMARY KEY | ユーザーID |
| username | VARCHAR(50) | NOT NULL, UNIQUE | ユーザー名 |
| email | VARCHAR(100) | NOT NULL, UNIQUE | メールアドレス |
| created_at | TIMESTAMP | NOT NULL | 作成日時 |

### ER図
```mermaid
erDiagram
    USERS ||--o{ ORDERS : places
    USERS {
        int id
        string username
        string email
    }
    ORDERS {
        int id
        int user_id
        string status
    }
```

---

## 🔗 API仕様

### エンドポイント一覧

#### GET /api/users
- **概要**: ユーザー一覧を取得
- **パラメータ**: 
  - `limit`: 取得件数(デフォルト: 20)
  - `offset`: オフセット(デフォルト: 0)
- **レスポンス**: 
```json
{
  "users": [
    {
      "id": 1,
      "username": "example",
      "email": "example@example.com"
    }
  ],
  "total": 100
}
```

#### POST /api/users
- **概要**: 新規ユーザーを作成
- **リクエストボディ**: 
```json
{
  "username": "newuser",
  "email": "newuser@example.com",
  "password": "securepassword"
}
```

---

## 🎨 UI/UX仕様

### デザインシステム
- **カラーパレット**: 
  - プライマリ: #007bff
  - セカンダリ: #6c757d
  - 成功: #28a745
  - 警告: #ffc107
  - エラー: #dc3545

- **タイポグラフィ**: 
  - メインフォント: Helvetica, Arial, sans-serif
  - 見出し: 太字, サイズ可変
  - 本文: 標準, 16px

### レスポンシブ対応
- **デスクトップ**: 1200px以上
- **タブレット**: 768px - 1199px
- **モバイル**: 767px以下

---

## 🔐 セキュリティ要件

### 認証・認可
- **認証方式**: JWT(JSON Web Token)
- **パスワードポリシー**: 8文字以上、英数字記号組み合わせ
- **セッション管理**: 24時間でタイムアウト

### データ保護
- **暗号化**: TLS 1.3による通信暗号化
- **個人情報**: GDPR、個人情報保護法に準拠
- **バックアップ**: 日次自動バックアップ、30日間保持

---

## 🧪 テスト要件

### テスト種別
- **単体テスト**: カバレッジ80%以上
- **結合テスト**: 主要機能の動作確認
- **システムテスト**: 全体的な動作確認
- **ユーザビリティテスト**: 実ユーザーによる使いやすさ確認

### テスト環境
- **開発環境**: 開発者による基本動作確認
- **ステージング環境**: 本番環境と同等の設定でテスト
- **本番環境**: 実際のサービス提供環境

---

## 🛠️ 運用・保守

### 監視項目
- **サーバーリソース**: CPU、メモリ、ディスク使用率
- **アプリケーション**: レスポンス時間、エラー率
- **データベース**: 接続数、クエリ実行時間

### 障害対応
- **レベル1**: 軽微な障害(24時間以内対応)
- **レベル2**: 重要な障害(8時間以内対応)  
- **レベル3**: 致命的な障害(2時間以内対応)

---

## 📅 スケジュール

### 主要マイルストーン

| フェーズ | 開始日 | 終了日 | 成果物 |
|----------|--------|--------|--------|
| 要件定義 | 2025/10/01 | 2025/10/15 | 要件定義書 |
| 基本設計 | 2025/10/16 | 2025/11/15 | 基本設計書 |
| 詳細設計 | 2025/11/16 | 2025/12/15 | 詳細設計書 |
| 実装 | 2025/12/16 | 2026/03/15 | ソースコード |
| テスト | 2026/03/16 | 2026/04/15 | テスト結果報告書 |
| リリース | 2026/04/16 | 2026/04/30 | 本番環境デプロイ |

---

## ⚠️ 制約事項・前提条件

### 制約事項
- **予算**: [予算の制約]
- **期間**: [スケジュールの制約]
- **リソース**: [人的リソースの制約]
- **技術**: [技術的な制約]

### 前提条件
- **既存システム**: [既存システムとの連携前提]
- **インフラ**: [インフラ環境の前提]
- **ユーザー環境**: [ユーザー側の環境前提]

---

## 📚 用語集

| 用語 | 説明 |
|------|------|
| API | Application Programming Interface - アプリケーション間の通信仕様 |
| JWT | JSON Web Token - 認証情報を安全に伝送するための仕様 |
| GDPR | General Data Protection Regulation - EU一般データ保護規則 |
| TLS | Transport Layer Security - 通信暗号化プロトコル |

---

## 📞 お問い合わせ

**プロジェクト責任者**: [担当者名]  
**メール**: [メールアドレス]  
**電話**: [電話番号]  

---

*この仕様書は生きた文書です。プロジェクトの進行に伴い、継続的に更新していきます。*

参考

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?