要件
機能要件
- ユーザーはイベントを一覧表示・詳細表示できる
- ユーザーはイベントのチケットを予約できる
- イベント予約時には座席指定ができる
- 座席はいくつかのセクションに分かれており座席一覧の情報を取得できる
- 予約確定通知は外部のメールサービスとモバイルアプリプッシュサービスを利用して送信する
- 課金サービスは外部を利用するが、課金処理に関しては設計のスコープ外
非機能要件
- 複数ユーザーから重複して同じチケット予約がされないようにする
- 人気なイベントの一つでは同時に数百万人が予約時にアクセスする
- イベントを一覧・詳細表示に関してはスケーラビリティ、高可用性が重要視される