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

Podobne dokumenty