590 likes | 1.22k Views
Modelowanie model związków encji. Wykład 3 Prowadzący: dr Paweł Drozda. Modelowanie. Odwzorowanie obiektów rzeczywistych w systemie informatycznym Dwa typy modeli: Konceptualny Model związków encji Model UML Implementacyjny Relacyjny Obiektowy Obiektowo-relacyjny.
E N D
Modelowanie model związków encji Wykład 3 Prowadzący: dr Paweł Drozda
Modelowanie • Odwzorowanie obiektów rzeczywistych w systemie informatycznym • Dwa typy modeli: • Konceptualny • Model związków encji • Model UML • Implementacyjny • Relacyjny • Obiektowy • Obiektowo-relacyjny dr Paweł Drozda
Etapy projektowania systemu • Analiza – jakie wymagania (dane, funkcjonalność) powstaje model konceptualny • Projektowanie – zmiana modelu konceptualnego w model implementacyjny • Implementacja • Wdrożenie • Utrzymanie dr Paweł Drozda
Etapy tworzenia bazy danych Zapis za pomocą modelu związków encji Model relacyjny Model w głowie Baza danych dr Paweł Drozda
Model związków encji • Część rzeczywistości zapisana za pomocą encji (entities) • Atrybuty – właściwości encji • Powiązania w strukturze obiektów – związki pomiędzy encjami dr Paweł Drozda
Model związków encji – przykład – notacja Chena nrindeksu nazwisko nazwisko pesel zarobki Student Pracownik data Prowadzenie Egzamin Przedmiot ocena nazwa id dr Paweł Drozda
Przykład – notacja Barkera PRZEDMIOT STUDENT PRACOWNIK zdaje Id Nazwa NrIndeksu Nazwisko Pesel Nazwisko Zarobki prowadzi dr Paweł Drozda
Encja • Odpowiednik klasy w modelu obiektowym • Zbiór obiektów o tych samych cechach (atrybuty, własności, związki) • Konkretny obiekt = wystąpienie encji dr Paweł Drozda
Encje – przykład Chen rasa nazwisko imię pesel płeć Pies Osoba Przykład wystąpienia Osoba: 76040603149, Kucka, K Osoba: 79072203350, Drozda, M Pies: Kundel, Bury Pies: Jamnik, Długi dr Paweł Drozda
Przykład Barker PIES OSOBA Rasa Imię Pesel Nazwisko Płeć Pies Rasa = Kundel Imię = Bury Osoba Pesel = 77021211111 Nazwisko = Kowalski Płeć = Kobieta dr Paweł Drozda
Reguły modelowania encji • Unikalność nazw • Atrybuty • Związki między encjami • Obiekt reprezentowany tylko przez jedną encję • Nazwa – rzeczownik w liczbie pojedynczej dr Paweł Drozda
Atrybuty encji • Identyfikatory – jednoznacznie opisują wystąpienie encji • Naturalne – PESEL, NrDowodu, itd. • Sztuczne – nrIdentyfikacyjny, idpracownika • Deskryptory – pozostałe atrybuty opisujące encję • Deklaracja atrybutu • Nazwa • Dziedzina (typ danych i max rozmiar, zbiór bądź zakres dozwolonych wartości) • Opcja unikalności • Wartości puste (dozwolone lub nie) dr Paweł Drozda
Rodzaje atrybutów - przykład tytuł nazwisko rok pesel zarobki Film Osoba adres gatunek telefon długość płeć dr Paweł Drozda
Przykład Barker Film OSOBA # Tytuł # Rok (#) Gatunek * Długość # Pesel * Nazwisko * Płeć * Zarobki Adres Telefon dr Paweł Drozda
Związki encji • Opisują połączenia pomiędzy encjami • Powiązane dwie lub więcej encji • Przykład: uczestniczy STUDENT WYKŁAD Przewidziany dla Pytania: W ilu wykładach uczestniczy student, dla ilu studentów przewidziany jest wykład, czy wykład musi być przewidziany dla studenta, czy student musi uczestniczyć w wykładzie dr Paweł Drozda
Cechy związku • Liczebność (unarny - rekursywny, binarny, tetrarny, n-arny) • Istnienie (opcjonalny, obowiązkowy) • Karynalność • 1:1 – jeden do jednego • 1:M – jeden do wielu • N:M – wiele do wielu dr Paweł Drozda
Związek 1:1 - Przykład Nauczyciel Klasa Wychowawca nazwisko adres nazwa sala 1b 2c 6a Wychowawca Jan Mucha Marta Ącka Stefan Kula wychowuje KLASA NAUCZYCIEL ma wychowawcę dr Paweł Drozda
Związek 1:m - Przykład Prowadzenie Wykładowca Przedmiot Jan Mucha Marta Ącka Stefan Kula Bazy danych Analiza matematyczna Logika Prowadzenie prowadzi PRZEDMIOT WYKŁADOWCA Jest prowadzony dr Paweł Drozda
Związek m:n - Przykład Egzamin Student Przedmiot Bazy danych Analiza matematyczna Logika Egzamin Jan Mucha Marta Ącka Stefan Kula zdaje PRZEDMIOT STUDENT Jest zdawany dr Paweł Drozda
Związki wieloargumentowe (1) • Możliwość definicji związku wieloargumentowego • Co najmniej 3 encje są związane Mandat Kierowca Policjant Wykroczenie dr Paweł Drozda
Związki wieloargumentowe (2) Sala Pielęgniarka Operacja Lekarz Pacjent dr Paweł Drozda
Związki wieloargumentowe – notacja Berkera • Gdy związek wieloargumentowy – zamienia się w encję KIEROWCA Mandat POLICJANT WYKROCZENIE dr Paweł Drozda
Rozszerzenie – poprzedni przykład Ze strony ważniak dr Paweł Drozda
Związek rekursywny • Podwójne wystąpienie encji w związku • Zarówno dla związków dwuargumentowych jak i wieloargumentowych rodzic Osoba dr Paweł Drozda
Typy związków - podsumowanie Sędzia Mecz Stadion Gospodarze Goście Drużyna dr Paweł Drozda
Atrybuty związków • Gdy związek posiada specyficzne cechy • Można stworzyć encję dla związku z atrybutami odnoszącymi się do związku dr Paweł Drozda
Atrybuty związku - przykład Sędzia liczba widzów Mecz typ meczu Stadion data Drużyna dr Paweł Drozda
Przykład – atrybuty związku Występuje Gaża FILM AKTOR Gdy związek posiada atrybuty – konieczność wprowadzenia dodatkowej encji Pojawiają się związki typu wiele Od strony związku – obowiązkowe dr Paweł Drozda
Zamiana związków wielo- argumentowych na binarne • Zamiana związku na encję • Każda encja związku wieloargumentowego wchodzi w związek binarny jeden do wielu z nową encją dr Paweł Drozda
Zamiana związków wielo- argumentowych na binarne -przykład Sędzia Arbiter Mecz Stadion Miejsce Gospodarze Goście Drużyna dr Paweł Drozda
Zasady projektowania • Dokładność • Unikanie redundancji • Prostota • Dobór właściwych elementów dr Paweł Drozda
Projektowanie – przykład (1) Nauczyciel cylindry powirzchnia Osoba Wychowawca telefon płeć Klasa Wychowawca dr Paweł Drozda
Projektowanie – przykład (2) Nauczyciel Klasa ? Wychowawca Nauczyciel Klasa dr Paweł Drozda
Podklasy/Nadklasy • Uszczegółowienie encji • Reprezentowane przez trójkąt na krawędzi łączącej encje (często z napisem isa) • Podziałcelu wyodrębnienia podgrup o specyficznych cechach dr Paweł Drozda
Cechy hierarchizacji • Podencje dziedziczą atrybuty z nadencji • Każde wystąpienie podencji jest wystąpieniem nadencji i na odwrót • Podencje nie mają swoich identyfikatorów – wspólny dla wszystkich jest w nadencji dr Paweł Drozda
Podklasy - przykład nazwisko nrindeksu Student isa isa stypendium czesne Zaoczny Dzienny dr Paweł Drozda
Model Berkera • Specjalizacja – dzieli encje na podencje • Generalizacja łączy podencje w encje dr Paweł Drozda
Przykład hierarchii Źródło: ważniak dr Paweł Drozda
Zbiory słabych encji • Atrybuty klucza wybierane z innego zbioru encji • Oznaczane przez podwójne linie • Przyczyny • Hierarchiczny układ zbiorów encji • Zbiory łączące eliminujące związki wieloargumentowe dr Paweł Drozda
Zbiór słabych encji – przykład(1) NrSali Sala Znajdujesię Adres Budynek dr Paweł Drozda
Zbiór słabych encji – przykład(2) Sędzia Arbiter Mecz Stadion Miejsce Mecz Gospodarze Goście Drużyna dr Paweł Drozda
Zbiór słabych encji – przykład, notacja Berkera Występuje Gaża FILM AKTOR dr Paweł Drozda
Słabe encje - wymagania • Encje (F) dostarczające klucza muszą być w związku (R) ze słabą encją (E) • Związek (R) binarny jeden (F) do wielu (E) • Atrybuty klucza E pochodzące z F muszą być w kluczu F • Gdy F jest słabą encją – atrybut klucza E może pochodzić z innych encji powiązanych z F związkiem jeden do wielu dr Paweł Drozda
Związki encji => projekty relacyjne • Encja (nie słaba) przekształcana do relacji z tą samą nazwą oraz tym samym zbiorem atrybutów nazwisko PESEL Osoba telefon płeć dr Paweł Drozda
Reguły przekształcania • Encja Relacja • Atrybut encji Atrybut relacji • Typ danych atrybutu encji Typ danych atrybutu relacji • Identyfikator klucz podstawowy • Obowiązkowość atrybutu NOT NULL • Opcjonalność NULL • Pozostałe ograniczenia atrybutów encji ograniczenia integralnościowe relacji dr Paweł Drozda
Przykład dr Paweł Drozda
Przekształcanie związków • 1:1 – klucz obcy w wybranej tabeli • 1:M – klucz obcy w tabeli po stronie wiele • N:M – nowa tabela dr Paweł Drozda
Związek binarny 1:1 • Dodany klucz obcy po stronie związku obowiązkowego KLASA NAUCZYCIEL Wychowuje Id Nazwa Pesel Nazwisko Zarobki dr Paweł Drozda
Związek binarny 1:1 • Dodany klucz obcy po stronie mniejszej tabeli KOMPUTER PRACOWNIK Id IP Pesel Nazwisko Zarobki Uzywa dr Paweł Drozda
Związek N:M encji do relacji • Związki przyjmują postać relacji • Klucze encji uczestniczących w związku jako atrybuty relacji • Gdy związek ma własny klucz – dołączany do atrybutów relacji dr Paweł Drozda