wyklad3
Transkrypt
wyklad3
TECHNIKI MODELOWANIA STRUKTURY INFORMACYJNEJ 1. Diagram obiektów i związków (DOZ) 2. Szczegółowa specyfikacja obiektów, atrybutów i związków GHJ 1 Metodyki strukturalne IE (Information Engineering) – Martin 1990 MERISE - Quang, Kastler - 1989 SSADM (Structured Systems Analysis and Design Method) - 1990 CASE*Method (Computer Aided Systems/Software Engineering) - 1990 • MEIN (Metodologica Informatica) – 1991 • • • • • GHJ 2 Cel modelowania struktury informacyjnej SI • Uzyskanie dokładnego opisu potrzeb informacyjnych organizacji, jako podstawy do budowy nowej lub modyfikacji istniejącej bazy danych systemu informatycznego • Uzyskanie modelu niezależnego od konkretnych metod pamiętania i dostępu do danych, umożliwiającego podejmowanie decyzji w zakresie dostępnych technik implementacji i współistnienia z innymi systemami GHJ 3 Przedmiot modelowania Informacje gromadzone w organizacji, reprezentujące wiedzę: • organizacji o niej samej i otaczającym ją świecie, • o aktualnym stanie organizacji, • o zdarzeniach, które miały miejsce w przeszłości, • o planach na przyszłość, • normach i przepisach, które jest ona zobowiązana przestrzegać GHJ 4 Etapy tworzenia baz danych Mini świat Konstrukcja modelu konceptualnego mini świata DO-Z Transformacja modelu konceptualnego do schematu logicznego Relacje Relacje znormalizowane Proces normalizacji Wybór struktur fizycznych i określenie metod dostępu do danych Strojenie bazy danych GHJ Fizyczne struktury danych Zwiększanie efektywności przetwarzania 5 Model konceptualny Przedstawia sformalizowany opis dziedziny przedmiotowej dla ustalonego zakresu systemu informacyjnego Podstawowe pojęcia w modelu • obiekt (encja) • atrybut • związek GHJ 6 Ontologiczna definicja obiektu [Bunge M.] X=<x,p(x)> X – obiekt x – byt p(x) – skończona kolekcja właściwości bytu GHJ 7 Ontologiczna definicja powiązania Dwa obiekty są powiązane , jeśli przynajmniej jeden z nich działa na drugi X działa na Y, jeśli historia Y jest pod wpływem X Historia – chronologicznie uporządkowane stany, które byty przechodzą w czasie. GHJ 8 Definicja encji, typu encji, wystąpienia encji • Encja przedstawia obiekt, który jest istotny dla organizacji, który może być materialny lub abstrakcyjny. • Typ encji (obiektu) przedstawia zbiór lub klasę encji (obiektów) danej organizacji o takiej samej charakterystyce. • Wystąpienie encji (obiektu) przedstawia indywidualną encję (obiekt) w organizacji, która jest członkiem zbioru lub klasy encji (obiektów). GHJ 9 [CASE*Method] Encja to istotna rzecz, rzeczywista lub wyobrażona, o której informacje muszą być znane lub przechowywane. PRACOWNIK GHJ 10 Ogólna definicja atrybutu • Atrybut przedstawia właściwość danej encji • Typ atrybutu przedstawia zbiór lub klasę właściwości encji, które opisują typ encji – np. dla typu OSOBA: nazwisko, adres, numer ubezpieczenia • Wartość atrybutu przedstawia wystąpienie właściwości encji – np. dla konkretnej encji OSOBA wartość atrybutu wiek to „25”, dla nazwiska „Kowalski” GHJ 11 [CASE*Method] Atrybut jest szczegółem, który służy do kwalifikowania, identyfikacji, klasyfikacji, wyrażenia wielkości lub stanu encji. Istotna cecha obiektu. Może być tekstem, liczbą, obrazem, zapachem itd.. Identyfikator jest nazywany unikalnym identyfikatorem. Może nim być: •pojedynczy atrybut i/lub związek, •kombinacja atrybutów i/lub związków. PRACOWNIK # numer karty * nazwisko * wiek o adres GHJ 12 Atrybut złożony Atrybut „adres” jest złożony z elementarnych danych: - miejscowość - kod pocztowy - ulica - numer domu GHJ 13 Związki • Związek przedstawia istotne dla organizacji połączenie między encjami (obiektami). • Typ związku przedstawia istotne dla organizacji połączenie między typami encji (obiektów). • Wystąpienie związku przedstawia istotne dla organizacji połączenie między wystąpieniami encji (obiektów). GHJ 14 Rodzaje związków Ze względu na liczbę wiązanych typów encji (obiektów) wyróżnia się rodzaje związków: • unarny - związek rekurencyjny • binarny • ternarny • n-arny GHJ 15 Atrybut związku • Atrybut związku jest właściwością, która dotyczy połączenia encji (obiektów), np. data wystąpienia danego związku, wielkość udziału w danym związku. GHJ 16 Definiowanie związku Polega na • nadaniu nazwy • ustaleniu dla więzów integralności - liczności (stopień związku) - przynależności (uczestnictwa) oraz określeniu reguł • przenaszalności • kaskadowego usuwania W zależności od metodyki definiuje się jeden lub oba kierunki (końce) związku GHJ 17 [CASE*Method] Związek jest nazwanym, istotnym dla organizacji powiązaniem między dwoma encjami. Dozwolone są związki co najwyżej binarne. Wymaga się zdefiniowania obu kierunków związku. Nie pokazuje się atrybutów związku. PRACOWNIK pracującym z pracuje z KLIENT posiada KONTO należy do GHJ 18 [MEIN] Klient reklamuje Zamówienie Wydział GHJ 19 Stopień związku (więzy liczności) • Liczność encji A w związku R(AB) określa liczbę wystąpień encji B, które mogą być związane z jednym wystąpieniem encji A. • Możliwe stopnie związków: - jeden do jeden (1:1) - jeden do wiele (1:M) - wiele do jeden (M:1) - wiele do wiele (M:N) 1, M – wskaźniki maksymalnej liczności GHJ 20 Style graficznej prezentacji liczności i przynależności W związku R(A,B) styl • „spójrz na drugą stronę” (S) – przedstawia liczność, przynależność encji A po stronie B • „uczestnictwo” (U) – przedstawia liczność, przynależność encji A po stronie A GHJ 21 [CASE*Method] 1:1 1:N/N:1 M:N stopień stały Styl „spójrz na drugą stronę” REKLAMA WYPRAWY PROJEKT KLIENT KONTO CZĘŚĆ ZAMÓWIENIE KLIENT <=2 GHJ SPRZEDAWCA 22 Więzy przynależności w związku R(AB) Przynależność encji specyfikuje czy wszystkie wystąpienia encji muszą uczestniczyć w związku z wystąpieniami innej encji. Istnieją dwa typy przynależności: • całkowity (obowiązkowy) – wszystkie wystąpienia encji A muszą uczestniczyć w związku z wystąpieniami encji B. • częściowy (opcjonalny) – niekoniecznie wszystkie wystąpienia encji A muszą uczestniczyć w związku z wystąpieniami encji B. GHJ 23 Graficzna prezentacja więzów przynależności Metodyka Styl A CASE*Method U Typ przynależności B obowiązkowy B A opcjonalny PROJEKT GHJ ZADANIE 24 Reguła czytania związku CASE*Method ENCJA A ENCJA B nazwa-końca-1 nazwa-końca-2 Każda ENCJA-A może być musi być nazwa-końca-1 jedna lub więcej jedna i tylko jedna ENCJA-B musi być może być nazwa-końca-2 jedna i tylko jedna jedna lub więcej ENCJA-A i odwrotnie Każda ENCJA-B GHJ 25 [CASE*Method] Kombinacje związków nieprawdopodobny rzadki wyjątkowy sporadyczny najczęściej występujący nieprawdopodobny często w diagramach ogólnych GHJ 26 [CASE*Method] Kombinacje związków rekurencyjnych rzadki powszechny częsty na diagramach ogólnych GHJ 27 Związki nieprzenaszalne [CASE*Method] Niedozwolona zamiana istniejącego połączenia wystąpienia encji na inne wystąpienie encji KLIENT KONTO posiada należy do GHJ 28 Związki wielokrotne Związki między więcej niż dwoma typami encji, które w aplikacji są postrzegane jako całość lub kombinacja i nie mogą być podzielone z powodów semantycznych. Koncepcja związków n-arnych • MEIN • MERISE Koncepcja związków binarnych • IE • SSADM • CASE*Method Oracle GHJ 29 [MEIN] Klient M składa N Zamówienie P Wydział GHJ 30 Koncepcja binarnych związków podejście N-arne • Utworzenie abstrakcyjnego typu encji (encja połączenia), nazwa odpowiada charakterowi połączenia wszystkich wiązanych typów encji (w przypadku złożonych wymagań nazwa może być też abstrakcyjna) • Przynależność tej encji jest obowiązkowa, liczebność N:1 • Identyfikatorem jest kombinacja identyfikatorów uczestniczących w związku encji. GHJ 31 [CASE*Method] ZŁOŻENIE KLIENT ZAMÓWIENIE GHJ WYDZIAŁ 32 Koncepcja binarnych związków podejście grupowania • Utworzenie abstrakcyjnego typu encji dla dwóch wybranych typów, nazwa odpowiada kombinacji nazw grupowanych typów encji • Przynależność tej encji jest obowiązkowa, liczebność związku z encjami grupowanymi N:1, z pozostałymi M:N • Identyfikatorem jest przeważnie kombinacja identyfikatorów grupowanych encji GHJ 33 [CASE*Method] ZAMÓWIENIE KLIENTA KLIENT WYDZIAŁ ZAMÓWIENIE GHJ 34 [CASE*Method] Encja intersekcji (przecięcia) Wprowadzana do diagramu w przypadku • eliminacji związku M:N przez jego rozkład na dwa związki 1:M • potrzeby przedstawienia atrybutów związku GHJ 35 [CASE*Method] Rozkład związku M:N a) PRACOWNIK przydzielony do ZADANIE przydzielone b) PRZYDZIAŁ PRACOWNIK ZADANIE GHJ 36 Koncepcja uogólnienia • Poszukiwanie abstrakcyjnego opisu zbioru podobnych typów, postrzeganego jako wyższy poziom - typ ogólny. [Tsichritzis, Lochovsky] • Nadtyp – encja wyższego poziomu • Podtyp – encja nizszego poziomu • Zbiór podtypów wraz z ich nadtypem i związkami między nimi posiada charakter budowy hierarchicznej. GHJ 37 Właściwość dziedziczenia w hierarchii • Pozwala na przywłaszczenie (dziedziczenie) atrybutów i związków nadtypu przez jego podtypy. • Wielopoziomowe (zagnieżdżone) dziedziczenie – podtyp może sam być nadtypem dla innych podtypów • Wielokrotne dziedziczenie – podtyp może posiadać więcej niż jeden nadtyp. GHJ 38 CASE*Method PRACOWNIK MENEDŻER SPRZEDAWCA TELEFONICZNY BEZPOŚREDNI STRAŻNIK BUDYNKOWY PARKINGOWY GHJ 39 Rozłączność i wyczerpanie w hierarchii uogólnienia • Wzajemne wykluczanie się (rozłączność) podtypów – wystąpienie encji jednego podtypu nie może być wystąpieniem innego podtypu. • Wyczerpanie nadtypu – wystąpienia podtypu składają się ze wszystkich wystąpień nadtypu. • Wzajemne wykluczanie się związków - w przypadku tej samej encji wystąpienie jednego typu związku nie może być wystąpieniem innego typu związku. GHJ 40 Możliwe przypadki wystąpień encji Encja może istnieć jako • tylko jeden z podtypów – wykluczanie się • jeden z kilku podtypów – brak wykluczania (zachodzące na siebie podtypy) • żaden z wymienionych podtypów – brak możliwości wyczerpania GHJ 41 [CASE*Method] Reguły dla podtypów • Podtyp encji jest typem encji • Nadtyp - dwa lub więcej wzajemnie wykluczających się podtypów • Podtyp encji bez zastrzeżeń dziedziczy wszystkie atrybuty, związki i funkcje od nadtypu • Podtypy mogą posiadać własne atrybuty i/lub związki GHJ 42 Reguły dla podtypów c.d. • Podtypy mogą być rozdzielone na podtypy niższych poziomów • Przypadek braku wyczerpania – dodatkowy podtyp z nazwą • Przypadek braku wykluczania – dodatkowa nazwa dla zbiorów nakładających się podtypów (np.. wyróżniony innym kolor), w jej ramach obowiązuje zasada wzajemnego wykluczania GHJ 43 CASE*Method PRACOWNIK MENEDŻER SPRZEDAWCA TELEFONICZNY BEZPOŚREDNI STRAŻNIK BUDYNKOWY PARKINGOWY INNY GHJ 44 [CASE*Method] Reguły dla wykluczających się związków • Wzajemne wykluczanie związków przedstawia się za pomocą łuku • Końce związków objęte łukiem muszą mieć tą samą przynależność (całkowitą albo częściową). • Łuk może obejmować – co najmniej dwa lub więcej związków – tylko końce dotyczące tego samego typu encji. • Koniec związku może należeć tylko do jednego łuku GHJ 45 [CASE*Method] należy do KONTO OSOBA posiada własnością ORGANIZACJA właścicielem GHJ 46 [CASE*Method] Reguły kaskadowego usuwania Usuwanie kaskadowe – utrata informacji o jednej rzeczy pociąga za sobą utratę informacji o rzeczach z nią powiązanych Wskaźnik usuwania kaskadowego C – usuń wszystkie „dzieci”, jeżeli jest usuwany „rodzic” X – zabroń usunięcia „rodzica”, jeżeli istnieją „dzieci” N – niezależne usuwanie „rodzica” i „dziecka” GHJ 47 [CASE*Method] Zmiana przypisania • Zmiana unikalnego identyfikatora „rodzica” pociąga za sobą potrzebę zastąpienia starego powiązania z „dziećmi” nowym powiązaniem • Zmień przypisanie – D • Zmiana widoczna na poziomie działającej aplikacji GHJ 48 Zmiany w czasie: atrybut [CASE*Method] STATUS # * wartość * data od o data do UMOWA dla # * data * status określona przez UMOWA # * data GHJ 49 Zmiany w czasie: związek [CASE*Method] NIERUCHOMOŚĆ UMOWA WŁASNOŚCI # * data o data wygaśnięcia dotyczy NIERUCHOMOŚĆ przedmiotem dla własnością właścicielem OSOBA stroną w OSOBA GHJ 50 [CASE*Method] Klasyfikacja PRODUKT a) dowolna # * symbol * nazwa * klasyfikacja b) sformalizowana PRODUKT # * symbol * nazwa KLASYFIKACJA w klasyfikacją dla # * wartość * opis należy do złożona z GHJ 51 [CASE*Method] Hierarchia - prosty model ZESPÓŁ wchodzi w skład złożony z DZIAŁ wchodzi w skład złożony z WYDZIAŁ wchodzi w skład złożony z ZARZĄD GHJ 52 Hierarchia - wariant I JEDNOSTKA ORGANIZACYJNA wchodzi w skład # symbol *nazwa *typ złożona z GHJ 53 Hierarchia - wariant II JEDNOSTKA ORGANIZACYJNA #symbol *nazwa ELEMENT STRUKTURY wchodzi w skład ORGANIZACJA złożona z określona przez klasyfikacją dla TYP JEDNOSTKI ORGANIZACYJNEJ #nazwa GHJ 54 [CASE*Method] Faktura PRODUKT POZYCJA dotyczy # * numer * cena netto * ilość zamieszczony w # * symbol * nazwa * jednostka miary * stawka vat TOWAR częścią USŁUGA składa się z FAKTURA # * numer * data sprzedaży * termin płatności * forma płatności wystawiona przez KONTRAHENT sprzedawcą skierowana do GHJ nabywcą # * numer * nazwa * kod pocztowy * miejscowość * ulica o telefon 55 [CASE*Method] Szczegółowa definicja obiektu • • • • • • • • • • • Pełna nazwa/ skrót Nazwa nadtypu Synonimy Przykłady Opis (znaczenie obiektu) Liczebność: początkowa, średnia, maksymalna (liczbowo lub procentowy wzrost, np. rocznie, kwartalnie) Lista atrybutów Lista związków Jednoznaczny identyfikator Okresy dla archiwowania i zniszczenia (okres, przyczyna) Reguły spójności (zasady funkcjonowania organizacji) GHJ 56 Reguła spójności ZAKUP # numer * data * wartość ZLECENIE w ramach źródłem dla Warunek dla # numer * data otwarcia * kwota Reguła Tworzenie obiektu ZAKUP ZAKUP może dotyczyć zlecenia, którego data otwarcia jest wcześniejsza od daty ZAKUPU GHJ 57 Szczegółowa definicja związku • • • • • • • Nazwa encji Nazwa końca Przynależność Stopień (min, średni, max) Wskaźnik usuwania kaskadowego Łuk (numer) Wskaźnik jednoznacznego identyfikatora GHJ 58 Szczegółowa definicja atrybutu Nazwa/skrót Opis/uwagi Wymagany/Opcjonalny Atrybuty opcjonalne – % wypełnienia (na początku, średnio) – warunek dla istnienia wartości • Format (znakowy, liczbowy, daty, …) • Maksymalna, średnia długość • Jednostka miary długości • • • • GHJ 59 Szczegółowa definicja atrybutu cd. • Dostępność/odpowiedzialność – nazwa użytkownika – prawa dostępu (tryb: C, U, D, A, R, All) – poziom kontroli uprawnień , np. 1 – do obiektów, 2 – do podmiotów, 3 - do zasad kontroli, • Reguła poprawności (algorytm lub lista wartości, zakres) • Wartość domyślna (wymagany) • Wartość dla null (opcjonalny) • Zbiór dopuszczalnych wartości (skrót i znaczenie, dolna/górna wartość) GHJ 60 Szczegółowa definicja dziedziny • • • • • • • • • Nazwa/skrót Opis/uwagi Format Maksymalna długość, jednostka miary Dostępność/Odpowiedzialność Reguła poprawności Wartość domyślna Wartość dla null Zbiór dopuszczalnych wartości GHJ 61