あらすじ
このシリーズでは、私の個人開発であるバンドサークル管理webアプリの
開発の内容をまとめていく。
前回はユースケースをまとめた。
この記事は
ユースケースを元に、搭載する機能を
要件定義として落とし込んでいく。
実際、前回のユースケースをまとめる段階で
必要な機能は大方明確になっている。
ただしユースケースはあくまで
ユーザがどのように使うかなので、
要件定義では
アプリケーションがどう動作するかに重点をおいて
まとめていく。
業務フロー
ユースケースと少し内容は被ってしまうが、
ユーザのやることに対する
アプリケーションの振る舞いを定義する為に、
業務フローを予めまとめておく。
機能要件
機能要件とは、クライアントが求めている機能のことを指します。
システムを実装することで何ができるようになるのか
システム側の観点から洗い出していく。
【認証】
・メンバーと管理者のマルチ認証
【管理者権限】
・サークルの管理
・ライブの管理
【メンバー権限】
・メンバ0情報の管理
・サークル登録
・バンド加入申請
・バンド作成
【メンバー権限(バンド加入者)】
・バンド情報管理
・ライブエントリー
・加入申請承認
メンバーはブラウザ、管理者はPCで見たり操作することが
多いと考えられるので、
どちらにも対応するWebアプリケーションとする。
各情報はデータベースで保存する。
テーブルは
- メンバー
- 管理者
- バンド
- ライブ
をメインとし、他は中間テーブルや補佐的なテーブルとする。
非機能要件
こちらは初期サイクルでは明確にならない為
かっちりと決めないこととする。
しかしユーザ個人情報やサークルの情報を取り扱う為
セキュリティに関してはOWASP Webセキュリティ要件書に
なるべく沿う形で実装する。
UI的には、下記の内容を満足するよう
設計する。
【全体】
チュートリアルや説明が無くても
直感的に操作できる
【メンバー】
スタジオやライブハウス等落ち着かない場所でも
モバイル端末で見やすい・操作しやすい。
【管理者】
大人数のライブや多数のバンド情報を
PC上で捌きやすい
まとめ
業務フローや機能・非機能要件をまとめることで
システムには具体的にどんなことが必要か
改めて認識することができた。
次回は設計に入っていく。
バックログ
バンドサークル管理webアプリ製作日記 - Introduction
バンドサークル管理webアプリ製作日記 - 問題提起
バンドサークル管理webアプリ製作日記 - 競合比較
バンドサークル管理webアプリ製作日記 - ユースケース
参考
要件定義とは何?スムーズな進め方や成果物(要件定義書)についても解説
機能要件とは?システムの品質向上にかかわる非機能要件との違い
OWASP Webセキュリティ要件書