Modelowanie model zwizkw encji Wykad 3 Prowadzcy dr

  • Slides: 56
Download presentation
Modelowanie model związków encji Wykład 3 Prowadzący: dr Paweł Drozda

Modelowanie model związków encji Wykład 3 Prowadzący: dr Paweł Drozda

Modelowanie o Odwzorowanie obiektów rzeczywistych w systemie informatycznym o Dwa typy modeli: n Konceptualny

Modelowanie o Odwzorowanie obiektów rzeczywistych w systemie informatycznym o Dwa typy modeli: n Konceptualny o Model związków encji o Model UML n Implementacyjny o Relacyjny o Obiektowo-relacyjny dr Paweł Drozda

Etapy projektowania systemu o Analiza – jakie wymagania (dane, funkcjonalność) powstaje model konceptualny o

Etapy projektowania systemu o Analiza – jakie wymagania (dane, funkcjonalność) powstaje model konceptualny o Projektowanie – zmiana modelu konceptualnego w model implementacyjny o Implementacja o Wdrożenie o Utrzymanie dr Paweł Drozda

Etapy tworzenia bazy danych Zapis za pomocą modelu związków encji Model w głowie Model

Etapy tworzenia bazy danych Zapis za pomocą modelu związków encji Model w głowie Model relacyjny dr Paweł Drozda Baza danych

Model związków encji o Część rzeczywistości zapisana za pomocą encji (entities) o Atrybuty –

Model związków encji o Część rzeczywistości zapisana za pomocą encji (entities) o Atrybuty – właściwości encji o Powiązania w strukturze obiektów – związki pomiędzy encjami dr Paweł Drozda

Model związków encji – przykład – notacja Chena pesel nrindeksu nazwisko zarobki Student Pracownik

Model związków encji – przykład – notacja Chena pesel nrindeksu nazwisko zarobki Student Pracownik data Prowadzenie Egzamin ocena Przedmiot nazwa dr Paweł Drozda id

Przykład – notacja Barkera PRZEDMIOT PRACOWNIK Pesel Nazwisko Zarobki prowadzi Id Nazwa dr Paweł

Przykład – notacja Barkera PRZEDMIOT PRACOWNIK Pesel Nazwisko Zarobki prowadzi Id Nazwa dr Paweł Drozda STUDENT zdaje Nr. Indeksu Nazwisko

Encja o Odpowiednik klasy w modelu obiektowym o Zbiór obiektów o tych samych cechach

Encja o Odpowiednik klasy w modelu obiektowym o Zbiór obiektów o tych samych cechach (atrybuty, własności, związki) o Konkretny obiekt = wystąpienie encji dr Paweł Drozda

Encje – przykład Chen rasa nazwisko pesel imię płeć Pies Osoba Przykład wystąpienia Osoba:

Encje – przykład Chen rasa nazwisko pesel imię płeć Pies Osoba Przykład wystąpienia Osoba: 76040603149, Kucka, K Osoba: 79072203350, Drozda, M dr Paweł Drozda Pies: Kundel, Bury Pies: Jamnik, Długi

Przykład Barker OSOBA PIES Pesel Nazwisko Płeć Rasa Imię Osoba Pesel = 77021211111 Nazwisko

Przykład Barker OSOBA PIES Pesel Nazwisko Płeć Rasa Imię Osoba Pesel = 77021211111 Nazwisko = Kowalski Płeć = Kobieta dr Paweł Drozda Pies Rasa = Kundel Imię = Bury

Reguły modelowania encji Unikalność nazw Atrybuty Związki między encjami Obiekt reprezentowany tylko przez jedną

Reguły modelowania encji Unikalność nazw Atrybuty Związki między encjami Obiekt reprezentowany tylko przez jedną encję o Nazwa – rzeczownik w liczbie pojedynczej o o dr Paweł Drozda

Atrybuty encji o Identyfikatory – jednoznacznie opisują wystąpienie encji n Naturalne – PESEL, Nr.

Atrybuty encji o Identyfikatory – jednoznacznie opisują wystąpienie encji n Naturalne – PESEL, Nr. Dowodu, itd. n Sztuczne – nr. Identyfikacyjny, idpracownika o Deskryptory – pozostałe atrybuty opisujące encję o Deklaracja atrybutu n Nazwa n Dziedzina (typ danych i max rozmiar, zbiór bądź zakres dozwolonych wartości) n Opcja unikalności n Wartości puste (dozwolone lub nie) dr Paweł Drozda

Rodzaje atrybutów - przykład tytuł nazwisko pesel rok zarobki Film Osoba adres telefon długość

Rodzaje atrybutów - przykład tytuł nazwisko pesel rok zarobki Film Osoba adres telefon długość płeć dr Paweł Drozda gatunek

Przykład Barker OSOBA Film # Pesel * Nazwisko * Płeć * Zarobki Adres Telefon

Przykład Barker OSOBA Film # Pesel * Nazwisko * Płeć * Zarobki Adres Telefon # Tytuł # Rok (#) Gatunek * Długość dr Paweł Drozda

Związki encji o Opisują połączenia pomiędzy encjami o Powiązane dwie lub więcej encji o

Związki encji o Opisują połączenia pomiędzy encjami o Powiązane dwie lub więcej encji o Przykład: uczestniczy STUDENT Przewidziany dla WYKŁAD 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 o Liczebność (unarny - rekursywny, binarny, tetrarny, n-arny) o Istnienie (opcjonalny, obowiązkowy)

Cechy związku o Liczebność (unarny - rekursywny, binarny, tetrarny, n-arny) o Istnienie (opcjonalny, obowiązkowy) o Karynalność n 1: 1 – jeden do jednego n 1: M – jeden do wielu n N: M – wiele do wielu dr Paweł Drozda

Związek 1: 1 - Przykład Klasa nazwisko nazwa sala 1 b Nauczyciel Wychowawca 2

Związek 1: 1 - Przykład Klasa nazwisko nazwa sala 1 b Nauczyciel Wychowawca 2 c adres Jan Mucha Marta Ącka 6 a Stefan Kula wychowuje KLASA ma wychowawcę dr Paweł Drozda NAUCZYCIEL

Związek 1: m - Przykład Przedmiot Bazy danych Prowadzenie Wykładowca Jan Mucha Analiza matematyczna

Związek 1: m - Przykład Przedmiot Bazy danych Prowadzenie Wykładowca Jan Mucha Analiza matematyczna Marta Ącka Logika Stefan Kula PRZEDMIOT prowadzi Jest prowadzony dr Paweł Drozda WYKŁADOWCA

Związek m: n - Przykład Przedmiot Bazy danych Egzamin Student Jan Mucha Analiza matematyczna

Związek m: n - Przykład Przedmiot Bazy danych Egzamin Student Jan Mucha Analiza matematyczna Marta Ącka Logika Stefan Kula PRZEDMIOT zdaje Jest zdawany dr Paweł Drozda STUDENT

Związki wieloargumentowe (1) o Możliwość definicji związku wieloargumentowego o Co najmniej 3 encje są

Związki wieloargumentowe (1) o Możliwość definicji związku wieloargumentowego o Co najmniej 3 encje są związane Kierowca Mandat Wykroczenie dr Paweł Drozda Policjant

Związki wieloargumentowe (2) Sala Lekarz Operacja Pacjent dr Paweł Drozda Pielęgniarka

Związki wieloargumentowe (2) Sala Lekarz Operacja Pacjent dr Paweł Drozda Pielęgniarka

Związki wieloargumentowe – notacja Berkera o Gdy związek wieloargumentowy – zamienia się w encję

Związki wieloargumentowe – notacja Berkera o Gdy związek wieloargumentowy – zamienia się w encję KIEROWCA Mandat WYKROCZENIE dr Paweł Drozda POLICJANT

Rozszerzenie – poprzedni przykład Ze strony ważniak dr Paweł Drozda

Rozszerzenie – poprzedni przykład Ze strony ważniak dr Paweł Drozda

Związek rekursywny o Podwójne wystąpienie encji w związku o Zarówno dla związków dwuargumentowych jak

Związek rekursywny o Podwójne wystąpienie encji w związku o 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

Typy związków - podsumowanie Sędzia Mecz Stadion Gospodarze Goście Drużyna dr Paweł Drozda

Atrybuty związków o Gdy związek posiada specyficzne cechy o Można stworzyć encję dla związku

Atrybuty związków o Gdy związek posiada specyficzne cechy o 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 Stadion Mecz typ meczu data Drużyna dr

Atrybuty związku - przykład Sędzia liczba widzów Stadion Mecz typ meczu data Drużyna dr Paweł Drozda

Przykład – atrybuty związku Występuje AKTOR Gaża FILM Gdy związek posiada atrybuty – konieczność

Przykład – atrybuty związku Występuje AKTOR Gaża FILM 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 wieloargumentowych na binarne o Zamiana związku na encję o Każda encja związku

Zamiana związków wieloargumentowych na binarne o Zamiana związku na encję o Każda encja związku wieloargumentowego wchodzi w związek binarny jeden do wielu z nową encją dr Paweł Drozda

Zamiana związków wieloargumentowych na binarne -przykład Sędzia Arbiter Stadion Mecz Miejsce Gospodarze Goście Drużyna

Zamiana związków wieloargumentowych na binarne -przykład Sędzia Arbiter Stadion Mecz Miejsce Gospodarze Goście Drużyna dr Paweł Drozda

Zasady projektowania o o Dokładność Unikanie redundancji Prostota Dobór właściwych elementów dr Paweł Drozda

Zasady projektowania o o Dokładność Unikanie redundancji Prostota Dobór właściwych elementów dr Paweł Drozda

Projektowanie – przykład (1) powirzchnia Nauczyciel cylindry Osoba Wychowawca telefon płeć Wychowawca dr Paweł

Projektowanie – przykład (1) powirzchnia Nauczyciel cylindry Osoba Wychowawca telefon płeć Wychowawca dr Paweł Drozda Klasa

Projektowanie – przykład (2) Nauczyciel Klasa ? Nauczyciel Wychowawca Klasa dr Paweł Drozda

Projektowanie – przykład (2) Nauczyciel Klasa ? Nauczyciel Wychowawca Klasa dr Paweł Drozda

Podklasy/Nadklasy o Uszczegółowienie encji o Reprezentowane przez trójkąt na krawędzi łączącej encje (często z

Podklasy/Nadklasy o Uszczegółowienie encji o Reprezentowane przez trójkąt na krawędzi łączącej encje (często z napisem isa) o Podział celu wyodrębnienia podgrup o specyficznych cechach dr Paweł Drozda

Cechy hierarchizacji o Podencje dziedziczą atrybuty z nadencji o Każde wystąpienie podencji jest wystąpieniem

Cechy hierarchizacji o Podencje dziedziczą atrybuty z nadencji o Każde wystąpienie podencji jest wystąpieniem nadencji i na odwrót o Podencje nie mają swoich identyfikatorów – wspólny dla wszystkich jest w nadencji dr Paweł Drozda

Podklasy - przykład nazwisko nrindeksu Student isa czesne isa Zaoczny stypendium Dzienny dr Paweł

Podklasy - przykład nazwisko nrindeksu Student isa czesne isa Zaoczny stypendium Dzienny dr Paweł Drozda

Model Berkera o Specjalizacja – dzieli encje na podencje o Generalizacja łączy podencje w

Model Berkera o Specjalizacja – dzieli encje na podencje o Generalizacja łączy podencje w encje dr Paweł Drozda

Przykład hierarchii Źródło: ważniak dr Paweł Drozda

Przykład hierarchii Źródło: ważniak dr Paweł Drozda

Zbiory słabych encji o Atrybuty klucza wybierane z innego zbioru encji o Oznaczane przez

Zbiory słabych encji o Atrybuty klucza wybierane z innego zbioru encji o Oznaczane przez podwójne linie o Przyczyny n Hierarchiczny układ zbiorów encji n Zbiory łączące eliminujące związki wieloargumentowe dr Paweł Drozda

Zbiór słabych encji – przykład(1) Nr. Sali Sala Znajdujesię Adres Budynek dr Paweł Drozda

Zbiór słabych encji – przykład(1) Nr. Sali Sala Znajdujesię Adres Budynek dr Paweł Drozda

Zbiór słabych encji – przykład(2) Sędzia Arbiter Stadion Mecz Miejsce Gospodarze Goście Drużyna dr

Zbiór słabych encji – przykład(2) Sędzia Arbiter Stadion Mecz Miejsce Gospodarze Goście Drużyna dr Paweł Drozda

Zbiór słabych encji – przykład, notacja Berkera Występuje AKTOR Gaża FILM dr Paweł Drozda

Zbiór słabych encji – przykład, notacja Berkera Występuje AKTOR Gaża FILM dr Paweł Drozda

Słabe encje - wymagania o Encje (F) dostarczające klucza muszą być w związku (R)

Słabe encje - wymagania o Encje (F) dostarczające klucza muszą być w związku (R) ze słabą encją (E) o Związek (R) binarny jeden (F) do wielu (E) o Atrybuty klucza E pochodzące z F muszą być w kluczu F o 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 o Encja (nie słaba) przekształcana do relacji z tą

Związki encji => projekty relacyjne o Encja (nie słaba) przekształcana do relacji z tą samą nazwą oraz tym samym zbiorem atrybutów nazwisko PESEL Osoba telefon PESEL nazwisko telefon płeć dr Paweł Drozda

Reguły przekształcania o Encja Relacja o Atrybut encji Atrybut relacji o Typ danych atrybutu

Reguły przekształcania o Encja Relacja o Atrybut encji Atrybut relacji o Typ danych atrybutu encji Typ danych atrybutu relacji o Identyfikator klucz podstawowy o Obowiązkowość atrybutu NOT NULL o Opcjonalność NULL o Pozostałe ograniczenia atrybutów encji ograniczenia integralnościowe relacji dr Paweł Drozda

Przykład dr Paweł Drozda

Przykład dr Paweł Drozda

Przekształcanie związków o 1: 1 – klucz obcy w wybranej tabeli o 1: M

Przekształcanie związków o 1: 1 – klucz obcy w wybranej tabeli o 1: M – klucz obcy w tabeli po stronie wiele o N: M – nowa tabela dr Paweł Drozda

Związek binarny 1: 1 NAUCZYCIEL KLASA Wychowuje Pesel Nazwisko Zarobki Id Nazwa o Dodany

Związek binarny 1: 1 NAUCZYCIEL KLASA Wychowuje Pesel Nazwisko Zarobki Id Nazwa o Dodany klucz obcy po stronie związku obowiązkowego dr Paweł Drozda

Związek binarny 1: 1 KOMPUTER PRACOWNIK Pesel Nazwisko Zarobki Id IP Uzywa o Dodany

Związek binarny 1: 1 KOMPUTER PRACOWNIK Pesel Nazwisko Zarobki Id IP Uzywa o Dodany klucz obcy po stronie mniejszej tabeli dr Paweł Drozda

Związek N: M encji do relacji o Związki przyjmują postać relacji o Klucze encji

Związek N: M encji do relacji o Związki przyjmują postać relacji o Klucze encji uczestniczących w związku jako atrybuty relacji o Gdy związek ma własny klucz – dołączany do atrybutów relacji dr Paweł Drozda

Przykład Egzamin Przedmiot Egzamin idprzedmiotu nrindeksu dr Paweł Drozda Student

Przykład Egzamin Przedmiot Egzamin idprzedmiotu nrindeksu dr Paweł Drozda Student

Słabe zbiory encji o Relacja powstała ze słabego zbioru encji musi zawierać atrybuty tej

Słabe zbiory encji o Relacja powstała ze słabego zbioru encji musi zawierać atrybuty tej encji oraz klucze z encji pozostających w związku wiele do jeden o Gdy konieczne - przemianowanie atrybutów (np. gdy atrybut występuje podwójnie dr Paweł Drozda

Przykład (1) Sędzia Arbiter Stadion Mecz Miejsce Gospodarze Goście Drużyna dr Paweł Drozda

Przykład (1) Sędzia Arbiter Stadion Mecz Miejsce Gospodarze Goście Drużyna dr Paweł Drozda

Przykład (2) Wynik przekształcenia Mecz nrsędziego nazwa. Stadionu druzyna 1 dr Paweł Drozda druzyna

Przykład (2) Wynik przekształcenia Mecz nrsędziego nazwa. Stadionu druzyna 1 dr Paweł Drozda druzyna 2

Podklasy do modelu relacyjnego o Trzy możliwości: n Dla każdej podencji tworzona releacja z

Podklasy do modelu relacyjnego o Trzy możliwości: n Dla każdej podencji tworzona releacja z atrybutami wspólnymi oraz ze specyficznymi n Elementy wspólne w jednej tabeli, dla każdej podencji oddzielna tabela wraz z ograniczeniami referencyjnymi (klucze główne dodane do tabel stworzonych dla podencji) n Stworzenie tylko jednej relacji (atrybuty mogą przyjmować null) dr Paweł Drozda

Podklasy przykład nrindeksu czesne Zaoczny nazwisko Student isa Dzienny stypendium Student nrindeksu nazwisko Student

Podklasy przykład nrindeksu czesne Zaoczny nazwisko Student isa Dzienny stypendium Student nrindeksu nazwisko Student Dzienny nrindeksu nazwisko stypendium czesne nrindeksu stypendium Zaoczny nrindeksu czesne dr Paweł Drozda