すいません質問お願いします(*_ _)

友達の美容院のサイト頼まれて、
「管理画面からシフト登録して、スタッフシフトがお客さんから確認できるようにしたい」
との事なんですが、どんなようなシステムを考えたら良いのでしょうか。。

やりたい事はこんな感じです。
1.
スタッフ山田さんは毎週月/水/金が出勤だからそのように登録(管理画面から)出来る = 以後ずーっと山田さんは月/水/金になると出勤スタッフ一覧に表示。
2.
10/20の水曜日は山田さんがお休みしたいとの事なので、その日のみ表示しないようにする。
3.
10/20に休んだ代わりに10/24出勤になったので、反映させたい。

(1)はDBにスタッフ用のテーブルを作って、どっかのフィールドに出勤曜日を入れとけばいいのかな?
と思ったのですが、すると(2)や(3)の時にどーすんだろ?と・・・。


通常こういったシフト管理システムとかって、どんなようなロジックで構成されるモノなのでしょうか?
ヒントだけでもいただけると死ぬほどありがたいです('A`)