Techpit:テックピット
  前のパートに戻る 完了して次のパートへ  

  0-3 kanbanの設計を考える

kanbanの設計を考える


今回のパートではkanbanを作る上でどのように設計を行うかを解説して行きます。

必要な情報の洗い出し


今回のコースで開発する機能は、

- サインアップ・サインイン機能
- リスト機能
- カード機能

になります。

これらの機能を開発する上で必要な情報を紙に書き出してみます。

46525422-811c5e80-c8c6-11e8-915c-037ba51556ed.JPG

まとめると必要な情報は、

- ユーザーの情報
- リストの情報
- カードの情報

になります。

情報の関係性を考える


ユーザーの情報とリストの情報の関係性を考えてみると、

- ユーザーは複数のリストを作成できる
- リストAに関して、リストAを作成したユーザーは一人しかいない

このような関係のことを「1対多の関係」と言います。

テーブル設計


先ほど、ユーザーの情報とリストの情報の関係を考えましたが、今度は「リストの情報とカードの情報」など全ての情報の関係性を考えます。全ての情報をの関係を洗い出したら、テーブル設計を行います。テーブル設計は例えばusersテーブルとlistsテーブルにはどういった関係があるか設計することで、後に変更があった場合も対応できる冗長性・拡張性を考慮することができます。

テーブル設計する際はER図を書きます。 ER図に関しては、こちらのURLを参考にしてください。

若手プログラマー必読!5分で理解できるER図の書き方5ステップ

今回作成するkanbanのテーブル設計すると以下のようになります。

一人のユーザーはリストを作成できて、1つのリストに複数のカードを作成できます。

今回開発するコードの完成版

kanbanというフォルダがあるのでそちらをダウンロードすることができます。

https://drive.google.com/drive/folders/1aCMOoeae_L6JVIVQk15UR3f0ejBegfOt

議論
0 質問