Open smptmhr opened 2 years ago
ER図おっけー! あとはログイン画面やユーザ管理画面など他の画面も作って欲しい。おそらく開発するときになってどうしようと困ることになると思うので
このアプリがどのような形で利用されるか(インターネットに公開するのか、社内向けか、etc…)
さっき話していたと思うので、ここについてもどこかに明記しておいて欲しいです
エラーページ 404 500
これもあるの良いね!
ログインページ
ログインするだけのページと、サインアップするページもあると思いました!
一般ユーザ向け
ここはユーザ自身の名前変更やアイコン変更ができるようなマイページはないということでOK? つくらなきゃいけない!という訳ではなく、ともがつくるアプリケーションで必要ないと思っているのであればなしでも大丈夫です!
サインアップするページもあると思いました!
その通りです!
ここはユーザ自身の名前変更やアイコン変更ができるようなマイページはないということでOK?
確かにマイページは必要そうですね。 そこで確認・編集できる属性は以下の3つかなと思います。
ユーザは自分のタスクしか見られないため、別のユーザを識別するためのアイコンは必要ないと考えてます。
・名前についての指摘を受けて
一人のユーザが異なるメールアドレスでアプリを使い分ける可能性もあると思い、
ワークスペース名(すなわちユーザ自身の名前とほぼ同義だが)を持たせるのはアリだと思いました。
ユーザは自分のタスクしか見られないため、別のユーザを識別するためのアイコンは必要ないと考えてます。
お、どうしてそう思ったか書いてくれるのありがたい!その考えならアイコンはなしで良いね!
一人のユーザが異なるメールアドレスでアプリを使い分ける可能性もあると思い、 ワークスペース名(すなわちユーザ自身の名前とほぼ同義だが)を持たせるのはアリだと思いました。
なるほど。それはあるかもですね。 追加するのであればER図も更新して、ペーパープロトタイプも更新しちゃいましょう!
足りてなかったページも考慮してペーパープロトタイプを更新しました!
※「ユーザ一覧ページ」と「管理ページトップ」は合体させて問題なさそうなので一つにしました。
ユーザは自分のタスクしか見られないため、別のユーザを識別するためのアイコンは必要ないと考えてます。
どうしてそう思ったか書いてくれるのありがたい!
今回は想定される使われ方が個人で完結しているためです。
社内ツールのように複数ユーザが一つのワークスペースを使用する想定ならアイコンは必要かと思いますが、1ワークスペース 1ユーザなので!
「ユーザ」エンティティに「ユーザ名」を追加 「タスク」エンティティから「カテゴリID」を削除
あ、ER図なにも問題ないと言ってたんだけれど、1つのタスクに対して複数のラベルを扱えるようにするには今のままじゃダメだったのに気がついた もし今のER図のままラベルを複数つけようとするとこんな感じになると思います!
tasks テーブル | id | label_id |
---|---|---|
1 | 1,2,3 |
これはジェイウォークといってできるだけ避けたいアンチパターンです sqlで検索するときにとても大変になってしまいます 😣 https://qiita.com/aconit96/items/24f790662d9b88a3ab74
なので交差デーブルというラベルとタスクの間にそれぞれを紐づけるテーブルをつくるようにしてみてほしいです https://post-output.com/185/
交差テーブルというラベルとタスクの間にそれぞれを紐づけるテーブルをつくるようにしてみてほしい
中間テーブルのイメージですね。 Qiitaの記事読んでなんとなくですが理解しました。ER図更新します!
指摘部分を反映させたER図こんな感じでしょうか。 ラベルとタスクをつなぐ中間テーブルを追加しました。
お、そんな感じ!
テーブルの名前も 中間テーブル
ではなくちゃんとした名前を今のうちにつけてあげましょう!テーブル作成(マイグレーション)のときに困ると思うので
あとはタスクテーブルにある ラベルID(FK)
が要らなくなるね
ちょっと疑問に思ったことで確認なんだけれども、タスクグループはカテゴリを跨いで存在することはありえない? 例えば、タスクAとタスクBがあったとして、どちらもタスクグループ1に紐づいている。これがカテゴリ研究にどちらもあるならば問題なさそうだけれど タスクAはカテゴリ研究に、タスクBはカテゴリ授業に、みたいなことは起こり得ない?
更新しました! こんな感じでしょうか?
ラベルID(FK)
削除タスクグループはカテゴリを跨いで存在することはありえない?
使用方法によっては起こり得ると思うんですが、今回はそこまでカバーしない(同一カテゴリの中で収める使い方を想定する)つもりでした! 今回、関連タスクという項目を設けた理由が、大きなタスクを分割して小さく管理することでタスクへの取り掛かりやすさをサポートすることなので、その目的であればカテゴリを跨ぐ必要はないかと思います。
使用方法によっては起こり得ると思うんですが、今回はそこまでカバーしない(同一カテゴリの中で収める使い方を想定する)つもりでした! 今回、関連タスクという項目を設けた理由が、大きなタスクを分割して小さく管理することでタスクへの取り掛かりやすさをサポートすることなので、その目的であればカテゴリを跨ぐ必要はないかと思います。
理解。であれば大丈夫だね!
あと気になったのはタスク編集ページとかにある 重要度
はER図にないけれど書き忘れ?
https://github.com/smptmhr/el-training/issues/3#issuecomment-1113196046
重要度は書き忘れです! 追加したのがこちらになります!
ペーパープロトタイプ
ER図
ペーパープロトタイプをもとに作ったER図
あっているか不安な点
参考 : 若手プログラマー必読!5分で理解できるER図の書き方5ステップ | NTTコミュニケーションズ 法人のお客さま