# 開発ロードマップ

## Backend

### ベータ版で実装予定のAPI一覧

| 分類                   | 機能                                                              | メモ                                                                                                                                  |
| ---------------------- | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| 認証                   | ログインする（ユーザー名,PWまたはEmail,PW）                       | 将来的にLINEログインやSign in With なんちゃらにも対応したい                                                                           |
| 全ユーザー             | 表示名、ユーザー名を変更する                                      | ユーザー名は重複禁止                                                                                                                  |
| 全ユーザー             | Emailを変更する                                                   | メール所有確認を行う                                                                                                                  |
| 全ユーザー             | PWを変更する                                                      | 現在のパスワードを再度要求する                                                                                                        |
| 全ユーザー             | PWをリセットする                                                  | メールでリセット用リンクを飛ばす                                                                                                      |
| 学生ユーザー           | 個人整理コードを利用して利用開始（Email,PW,ユーザー名を設定）する |                                                                                                                                       |
| 学生ユーザー           | 利用可能な公開問題セットの一覧を取得する                          |                                                                                                                                       |
| 学生ユーザー           | 指定した公開問題セットの問題を取得する                            |                                                                                                                                       |
| 学生ユーザー           | 利用可能なパーソナル問題セットの一覧を取得する                    |                                                                                                                                       |
| 学生ユーザー           | 指定したパーソナル問題セットの問題を取得する                      |                                                                                                                                       |
| 学生ユーザー           | 問題の回答結果を送信しポイント付与を受ける                        | 解いた問題と回答を履歴として保存の上、正解/不正解、その日の付与レート、上限に達していないかのチェックを実施し付与ポイント数を算出する |
| 学生ユーザー           | ポイントの付与・（使用）履歴を取得する                            |                                                                                                                                       |
| 教員ユーザー（運営者） | 任意の組織のユーザー一覧を取得する                                |                                                                                                                                       |
| 教員ユーザー（運営者） | 任意の学生のクラス、出席番号、表示名を変更する                    |                                                                                                                                       |
| 教員ユーザー（運営者） | 学生ユーザーを新規に発行する                                      | 新規発行後、氏名などの情報と紐づく個人整理コードを発行し返す                                                                          |

## Frontend

## その他検討事項

 - [LIFF(LINE Front-end Frame Work)](https://developers.line.biz/ja/docs/liff/) への対応
 - 外部の認証プロバイダ（Apple ID, Googleアカウント等）への対応（自社でのパスワード管理の廃止）