Relacyjne bazy danych - laboratorium 3
Post

Relacyjne bazy danych - laboratorium 3

Wprowadzenie

W przeciągu ostatnich dwóch zajęć zaprezentowane zostały zasady, dobre praktyki oraz właściwości projektowania oraz modelowania diagramów związków encji. Na dzisiejszych laboratoriach zbierzemy i wykorzystamy przerobione informacje - zaprojektujemy baze danych.

Zadanie

Zadanie wspólne

Zadaniem na dzisiejszych zajęciach, tak jak zostało wspomniane we wprowadzaniu, bedzie zaprojektowanie schematu bazy danych, a dokładniej - bazy danych dla aplikacji zamawiania transportu samochodowego. Aplikacja umożliwia użytkownikom zamówienie przejazdu samochodowego pod wskazany przez użytkownika adres, ale tylko pod warunkiem że lokalizacja użytkownika oraz docelowe miejsce przejazdu, są w obszarach obsługiwanych przez aplikacje. Przed zamówieniem przejazdu wyświetlana jest przywidywana cena usługi. Użytkownik aplikacji, po zamówieniu przejazdu otrzymuje informacje o kierowcy oraz o pojeździe jakim będzie się poruszał. Wyświetlanymi informacjami są: imię, zdjęcię kierowcy, jego ocena oraz model, marka, kolor oraz numery rejestracyjne pojazdu. Po zakończeniu przejazdu, użytkownik ma możliwość wystawienia oceny kierowcy, jak i kierowca ma możliwość wystawienia oceny pasażerowi. Pasażer może ocenić umiejętności kierowcy, stan samochodu oraz przestrzeganie przepisów. Kierowca natomiasst może ocenić zachowanie pasażera podczas jazdy i czas oczekiwania do odjazdu. Dodatkowo, użytkownik aplikacji podczas procesu zamawiania przejazdu, ma możliwość wyboru typu pojazdu. Takimi typami są: zwykły, suv, mini-van, luxury. Użytkownik za przejazd może zapłacić kartą kredytową, debetową lub gotówką u kierowcy. Usługa rozliczania transkacji z kart płatniczych realizowana jest przez zewnętrznego dostawce.

Zadanie indywidualne

Zaprojektuj bazę danych aplikacji do krótko terminowego wynajmu samochodów. Użytkownicy aplikacji, mają możliwość wynajmu samochodu oraz jego zdania na obszarze obsługiwanym przez aplikacje. System za każdy przyjazd automatycznie ocenia kierowcę pod kątem: przestrzegania przepisów ruchu, agresywności za kierownicą czy drogi hamowania. Użytkownik ma możliwość wynajmu trzech typów samochodu: elektrycznego, hybrydowego oraz spalinowego. W aplikacji w zależności od typu pojazdu, dostępnych jest łącznie kilkanaście modeli aut różnych marek. Aplikacja podczas przejazdu zbiera informacje o czasie trwania oraz pokananym dystansie oraz finalniej cenie. Jedyną opcją płatności za przejazd jest karta płatnicza, którą użytkownik podaje raz podczas rejestracji.

Na podstawie powyższych informacji zaprojektuj tabele, atrybuty, ograniczenia oraz relacje. Zadanie wykonaj indywidualnie na platformie draw.io. Gotowy diagram wyeksportuj do HTML oraz umieść w swoim repozytorium w nowo stworzonym folderze lab03.