Opis związków
- Asocjacja
- ‘Klient’ i ‘Rezerwacja’ – klient może nie mieć rezerwacji lub mieć ich wiele, a każda
rezerwacja należy do jednego klienta.
- ‘Rezerwacja’ i ‘Stolik’ – rezerwacja może dotyczyć wielu stolików, ale stolik może
należeć tylko do jednej rezerwacji.
- ‘Klient’ i ‘Zamówienie’ – klient może mieć wiele zamówień, a każde zamówienie
należy do jednego klienta.
- ‘Kelner’ i ‘Zamówienie’ - kelner może obsługiwać wiele zamówień, a każde
zamówienie jest obsługiwane przez jednego kelnera.
- ‘Kucharz’ i ‘Zamówienie’ - kucharz może przygotowywać wiele zamówień, a każde
zamówienie może być przygotowane przez wielu kucharzy.
- ‘Zamówienie’ i ‘Potrawa’ - zamówienie może zawierać wiele potraw, a każda
potrawa może być częścią wielu zamówień.
- ‘Zamówienie’ i ‘Płatność’ - zamówienie może mieć wiele płatności, a każda płatność
dotyczy jednego zamówienia.
- Agregacja
- ‘Stolik’ i ‘KrzesłoStolika’ – stoliki składają się z krzeseł, ale krzesła mogą istnieć
niezależnie od stolików.
-
‘Zamówienie’ i ‘Potrawa’ - zamówienie może zawierać wiele potraw, a każda potrawa może być częścią wielu zamówień.
- Generalizacja - specjalizacja
- ‘Osoba’ → ‘Pracownik’, ‘Klient’ – pracownik i klient są specjalizacjami klasy osoba.
- ‘Pracownik’ → ‘Kucharz’, ‘Kelner’ – kucharz i kelner są specjalizacjami klasy
pracownik.
- ‘Płatność’ → ‘TranzakcjąKartąKredytową’, ‘TranzakcjaGotówkowa’, ‘BLIK’ – są to
specjalizacje klasy płatność.
Nietypowa/Rzadka sytuacja
Klient Andrzej Kowalski przychodzi do restauracji z wcześniej zarezerwowanym
stolikiem dla 2 osób(Andrzej Kowalski i Bartosz Piórkowski). Składa zamówienie, w trakcie
oczekiwania na zamówione potrawy, dołączają do nich 2 osoby(Celina Świętochowska
i Daniel Świętochowski). Trzeba dostawić do stolika dwa krzesła, ponieważ nie ma wolnych
innych stolików. Nowi klienci składają kolejne zamówienia, każdy osobno. Klienci Andrzej
i Bartosz chcą podzielić rachunek między siebie, klient Andrzej ma zamiar swoją część
zamówienia zapłacić gotówką, a klient Bartosz BLIK’iem.