| 版 | 作成者 | 作成日 |
|---|---|---|
| 初版 | 鈴木健吾 | 2022/05/09 |
| 第2版 | 鈴木健吾・森田大雅 | 2022/05/16 |
| 第3版 | 鈴木健吾・森田大雅 | 2022/05/26 |
| 第4版 | 鈴木健吾 | 2022/06/23 |
第2版修正箇所
- システム概要(ジャンルの詳細化、感想の字数制限、ランキング機能のアルゴリズム記載、)
- 用語定義(開発者と読書記録を追加)
- 機能要求(ログアウト機能、パスワードとIDの制限について記載)
- 非機能要求(脆弱性対策に対する対策案の具体例記述)
第3版修正箇所
- 用語定義の開発者とユーザの定義について詳細化
- 機能要求に本のデータ削除・変更機能を追加
- 機能要求に本のデータ登録時に必須入力事項と任意入力事項を決定
- 機能要求に本のデータ登録時の「公開」・「非公開」の選択状態を追加。
- 機能要求に本の読書記録検索は公開データのみだと明記
- 機能要求に本の読書記録は評価とジャンルを用いて検索可能だと追加。
第2版修正箇所
- ランキングの掲載はトップ10までであることを記載。
| 役割 | 学年 | 氏名 |
|---|---|---|
| 班長 | b3 | 鈴木健吾 |
| b3 | 森田大雅 |
「読書管理アプリ」
概要
目的としては、自身の読書記録を管理し、本の評価等を検索可能なWebアプリケーションを実装する。
会員情報を登録してもらい、読書記録を管理、共有可能なアプリケーションの開発をします。
本のジャンルは、「実用書」、「ビジネス」、「芸術」、「児童書」、「医学」、「福祉」、「理工書」、「人文書」、「語学」、「教育」、「情報」、「雑誌」、「コミック」
ユーザが読んだ本ごとに点数と感想、ジャンルを登録可能にします。
感想は、200文字以内で自由に記述出来るようにします。
ユーザの読書記録を他ユーザに公開・非公開を選択できるように実装します。
5段階評価、ISBNコードの集計数をもとにした、人気の本をランキング(トップ10)で表示可能にします。
他ユーザの読書記録を検索から絞り込めるようにします。
- ユーザとは「読書管理アプリ」を利用する人を指す。自身の非公開レビューは編集可能だが、他ユーザの非公開レビューの閲覧は不可能。
- 開発者とは「読書管理アプリ」を開発する人を指す。全てのユーザのレビュー(公開・非公開)の閲覧が可能。
- 読書記録とは、読んだ本の題名、感想、評価、ジャンル、版数、ISBNコードのことを指す。
| 機能名 | 内容 |
|---|---|
| ランキング表示機能 | ユーザがデータ登録時の5段階評価、ISBNコードの集計数で絞り込みの本を1~10番目までのランキング形式で表示できる。ランキングは2つあり、ジャンルと全種類の5段階評価の値とジャンルと全種類のISBNコードの集計数でユーザがランキングをトップ10で表示可能にする。開発者は5段階評価の数値の算出は、(5段階の評価の合計)を(評価を実施した人数)で割ることで算出する。開発者はISBNコードの集計数は、登録された数を集計し、ジャンルと全種類ごとにトップ10でランキング形式で表示可能に実装する。開発者は非公開レビューもランキングの数値集計をする際に活用する。 |
| ログイン機能 | ユーザが本アプリケーションにログインするための機能。ログイン時には新規ユーザ登録時に登録したIDとパスワードの入力を要求する。 |
| ログアウト機能 | ヘッダーにログアウトボタン実装。 |
| ユーザ登録機能 | ユーザが本アプリケーションにWebページより登録する。登録時に氏名・性別・年齢・パスワード・IDの登録ユーザに要求する。DB(Mysql)と連携しデータのやり取りを行う。パスワードは大文字小文字含む英数字とする、パスワードは6文字以上。IDは重複を禁止とする。 |
| 本のデータ登録機能 | ユーザが読んだ本の題名(記述式)(必須)、評価(5段階)(任意)と感想(200文字以内記述式)(任意)、ジャンル(選択式)(必須)、版数(任意)、ISBNコード(任意)を登録する。また、本の読書記録を公開するか非公開にするかも登録可能。 |
| 本のデータ変更機能 | 登録済みの自身の本のデータ(任意登録項目)について変更可能。 |
| 本のデータ削除機能 | 登録済みの自身の本のデータについて削除可能。 |
| 読書記録検索機能 | ユーザは他人の読書記録(公開可能な状態)をIDや本のタイトル、評価、ジャンルを用いて検索し、閲覧可能にする。 |
| 機能名 | 内容 |
|---|---|
| 独自の404ページの作成 | 404ページ表示において、使用しているサーバーのバージョンやエラー文がユーザに閲覧されることで、脆弱性を発見される可能性がある。そこで、開発者は独自の404ページを実装する。 |
| XSS対策 | エスケープ処理、プレースホルダの実装 |
| SQLインジェクション対策 | エスケープ処理、プレースホルダの実装 |