Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Baza danych: Warsztat samochodowy

No description
by

Marcin Mantke

on 29 January 2015

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Baza danych: Warsztat samochodowy

Plan prezentacji
I. Model konceptualny bazy danych
II. Projekt bazy danych
III. Implementacja i testy
Opis świata rzeczywistego
1. Wstęp
2. Użytkownicy systemu
Klienci
Mechanicy
Właściciele
Administratorzy
3. Współpraca z systemami zewnętrznymi
Wymagania funkcjonalne
1. rejestracja uzytkownika systemu,
2. sprawdzenie historii napraw,
3. sprawdzenie i zmiana stanu naprawy,
4. generowanie statystyk,
5. przypomnienia o najblizszych wizytach,
6. przechowywanie danych o pracownikach,
7. uzytkownik moze przegladac, dodawac, edytowac oraz usuwac dane jedynie w ramach swoich
uprawnien,
Analiza liczby instancji każdej encji
Analiza użycia
Baza danych: Warsztat samochodowy
Autorzy:
Grzegorz Zajac 200664
Marcin Mantke 200633

Model konceptualny
bazy danych
1. Opis świata rzeczywistego
2. Wymagania funkcjonalne
3. Wymagania niefunkcjonalne
4. Diagram przypadków użycia
5. Diagram zwiazków encji
Wymagania niefunkcjonalne
1. Odporność na utratę danych
2. Bezpieczeństwo poufności danych
3. Wydajność
4. Skalowalność
5. Komunikacja z innymi systemami bazodanowymi
SŁOWNIK
osoba korzystajaca z systemu, czyli KLIENT, MECHANIK, WŁASCICIEL
lub ADMINISTRATOR
Użytkownik
UZYTKOWNIK, który ma dostep jedynie do PANELU KLIENTA, a nie do
aplikacji, z której korzystaja pracownicy warsztatu, KLIENT musi posiadac co najmniej
jeden samochód,
Klient
Mechanik
UZYTKOWNIK, który ma mozliwosc tworzenia WIZYT, dodawania KLIENTÓW
oraz SAMOCHODÓW, edycji TOKU NAPRAWY, przegladania HISTORII NAPRAW
kazdego KLIENTA oraz rozliczania wizyty
Właściciel
UZYTKOWNIK, który moze byc jednoczesnie MECHANIKIEM, a wiec posiada uprawnienia MECHANIKA oraz dodatkowo ma mozliwosc generacji oraz przegladania statystyk, dodawania kont MECHANIKÓW, rozliczania ubezpieczenia pracowników z ZUS oraz rozliczania płatnosci z dystrybutorami czesci, materiałów eksploatacyjnych itp.
Administrator
UZYTKOWNIK, który posiada uprawnienia WŁASCICIELA, a ponadto moze dodawac konta WŁASCICIELI oraz ma uprawnienia do zarzadzania baza danych od strony technicznej, czyli przykładowo moze utworzyc backup lub harmonogram
backupów bazy danych,
Panel klienta
strona internetowa, która po zalogowaniu sie przez klienta umozliwia mu sprawdzenie stanu aktualnej naprawy oraz udostepnia mu nastepujace opcje: rezerwacja terminu, wyswietlenie historii napraw, ustawienia uzytkownika, gdzie m.in. jest mozliwosc zarzadzania przypisanymi do uzytkownika samochodami, okreslenie checi otrzymywania
przyponien o zblizajacych sie przegladach okresowych, zmiana hasła
Tok naprawy
sekwencja nastepujacych po sobie stanów naprawy w kolejnosci:
rezerwacja -> potwierdzenie -> w naprawie -> opcjonalne: oczekiwanie na czesci -> zakonczona
Samochód
pojazd znajdujacy sie w bazie danych, który jest przypisany do co najmniej
jednego KLIENTA oraz posiada dane, takie jak marka, model, nr rejestracyjny, nr VIN
Wizyta
wpis w bazie danych, zawierajacy odwołanie do klienta i samochodu oraz
posiadajacy krótki opis słowny naprawy,
Części
element uzywany przy naprawach, system przewiduje mozliwosc pełnej ewidencji
obrotu czesci. Pojawienie sie czesci w firmie jest ewidencjonowane dzieki współpracy z systemem
hurtowni, natomiast opuszczanie firmy przez czesci jest rejestrowane przez mechaników
i zapisywane podczas rozliczania wizyty
Sprzęt
fizyczne urzadzenia znajdujace sie w firmie i słuzace do ułatwienia/umozliwienia wykonania naprawy samochodów. System zakłada monitorowanie stanu zajetosci sprzetu w celu ułatwienia planowania i umawiania terminów wizyt klientów,
Uprawnienia
informacja o mozliwosci wykonywania przez uzytkownika systemu
danych czynnosci, słuza do ochrony poufnosci danych w systemie, sa przydzielane indywidualnie
wszystkim uzytkownikom systemu
Uzytkownik (id_uzytkownika, imie, nazwisko, PESEL, NIP, login, hasło, data_zatrudnienia,
wynagrodzenie, data_urodzenia, adres, uprawnienia, nr_telefonu, stanowisko, dział, superuser, ostatnie_logowanie, teraz_aktywny)
Samochód (marka, model,
nr rejestracyjny, nr VIN, przebieg, id_uzytkownika)
Wizyta (id_wizyty, data, status, klient, samochód, przebieg_w_momencie_wizyty, opis, czesci, cena, czas_pracowników, id_uzytkownika)
Sprzet (nazwa_sprzetu, status, opis, id_wizyty, data_przegladu)
Czesci (id, nazwa, cena_w_hurtowni)
Uprawnienia (id_uzytkownika, uprawniwnie_1,
uprawniwnie_2,
uprawniwnie_3,
. . .
uprawniwnie_n)
Projekt bazy danych
1. Analiza liczby instancji każdej encji
2. Analiza użycia identyfikujaca podstawowe rodzaje transakcji
3. Sformułowanie wymagań dotyczacych dostępu
4. Analiza integralności
5. Dostrajanie pod względem wydajności
Wymagania dotyczace dostępu
Analiza integralności
Proces ochrony integralnosci obejmuje:
kontrole danych wejsciowych oraz synchronizacje dostepu do danych,
poprawianie czyli korekte danych, cofanie i odtwarzanie stanu bazy,
archiwizacje poprzez tworzenie kopii bazy oraz zapisów działania systemu,
testowanie czyli sprawdzanie poprawnosci zawartosci bazy.
Więzy integralności wewnętrznej:
klucza głównego
klucza obcego
dziedziny wartosci
Więzy integralności dodatkowej
wiezy przejscia
wiezy statyczne
wiezy atomowosci transakcji
wiezy ochrony danych
Dostrajanie bazy danych pod wzgledem wydajnosci
1. Sekwencyjnosc
2. Klastry
Tworzenie mechanizmów dostepu zwiazanych z przechowywaniem
Tworzenie mechanizmów dostepu zwiazanych z przechowywaniem
Dodawanie indeksów
Denormalizacja
Wykorzystanie mozliwosci SZBD
Obsługa wiezów integralnosci
Dodawanie indeksów
Uzytkownik - id_uzytkownika, imie, nazwisko,
Samochód - nr rejestracyjny, przebieg, id_uzytkownika,
Wizyta - id_wizyty, data, id_uzytkownika,
Sprzet - nazwa_sprzetu, id_wizyty,
Czesci – id_czesci,
Uprawnienia - id_uzytkownika.
Denormalizacja
Wykorzystanie mozliwosci wybranego systemu zarzadzania baza danych
Obsługa wiezów integralnosci
wiezy integralnosci encji
wiezy integralnosci referencyjnej
wiezy integralnosci dziedziny
wiezy atomowosci transakcji
wiezy ochrony danych
Implementacja i testy
MySQL + Python + Django
Skrypt generujący i wypełniający bazę przykładowymi danymi
Pomiary czasu wykonania zapytań dla zapytań krytycznych
Porównanie alternatywnych rozwiazań
Sprawdzenie jakie powinny być parametry serwera na którym postawiona jest baza
Opis mechanizmów ochrony - ochrona na poziomie bazy danych (weryfikacja dostępu/modyfikacji danych na podstawie uprawnień zalogowanego użytkownika itp.)
Full transcript