Skip to main content

US-005:簡易クーポン管理機能

基本情報

項目内容
IDUS-005
タイトル簡易クーポン管理機能の実装

ユーザーストーリー

As a マーケティング担当者
I want 割引クーポンを作成・配布できる
So that 顧客の購買意欲を高めることができる

日本語記述

マーケティング担当者として、顧客の購買意欲を高めるために、シンプルな割引クーポンを作成・配布できる機能が必要である。

背景・目的

ビジネス背景

プロモーション施策として、特定のコードを入力することで割引が適用される「クーポン」機能は必須である。本フェーズでは複雑なルールを排除し、運用が容易な定率割引クーポンに特化して実装する。

ユーザーニーズ

  • マーケティング担当者: 簡単にクーポンを発行したい
  • 顧客: クーポンコードを入力して安く買いたい

受入基準(Acceptance Criteria)

機能要件

AC-1: クーポン作成

Given マーケティング担当者が管理画面にログインしている
When クーポンコード、割引率、有効期限を入力する
Then クーポンが作成され、利用可能になる

詳細説明:

  • クーポンコードは一意(重複チェック)
  • 割引タイプは「パーセント割引」のみ(例:10% OFF)
  • 有効期限(開始・終了日時)を設定可能

AC-2: クーポン適用

Given ユーザーがカート画面でクーポンコードを入力する
When 「適用」ボタンを押下する
Then クーポンが有効であれば割引が適用され、小計が更新される

詳細説明:

  • 1注文につき1クーポンのみ適用可能
  • 有効期限切れや無効なコードの場合はエラーメッセージを表示
  • 割引額 = 小計 × 割引率(端数切り捨て)

非機能要件

パフォーマンス

  • クーポン検証APIのP99レスポンスタイム: 50ms以内

セキュリティ

  • クーポンコードのブルートフォース攻撃対策(レート制限)
  • 価格改ざん防止(サーバー側で割引額を再計算)

可用性

  • クーポンサービスのSLA: 99.9%

UI/UX要件

画面遷移

[クーポン一覧] → [クーポン作成]

インタラクション

  • クーポン入力時の即座なバリデーションとエラー表示
  • 割引適用後の価格変化を表示

依存関係

前提条件

  • 注文管理機能が実装済み(US-003)

依存するストーリー

  • US-003: カート管理と注文確定

ブロッカー

  • なし

備考・コメント

設計上の決定事項

  • クーポンとプロモーションは同一テーブルで管理せず、シンプルなCouponエンティティを使用
  • 複雑な優先順位ロジックは実装しない

将来の拡張性

  • 固定額割引、送料無料クーポンの追加
  • ユーザー限定クーポン
  • 利用回数制限