Wszelkie prawa zastrzeżone GHJ
1
TECHNIKI MACIERZOWE POWIĄZAŃ
1. Diagram macierzowy powiązań
Funkcja/Obiekt
2. Diagram macierzowy powiązań
Funkcja/Atrybut
3. Diagram macierzowy powiązań
Funkcja/Jednostka organizacyjna
Wszelkie prawa zastrzeżone GHJ
2
Macierzowy diagram powiązań
• Przedstawia istnienie zależności występujących w
organizacji między
- procesami gospodarczymi,
- funkcjami,
- grupami danych,
- jednostkami struktury organizacyjnej,
- zastosowaniami.
• Przedstawia charakter występujących zależności.
• Pełni funkcję kontroli jakości w zakresie kompletności
i spójności modelu funkcji i modelu informacji.
Wszelkie prawa zastrzeżone GHJ
3
Tryby użycia obiektów przez funkcje
CUDR(A)
• C (create) - tworzenie
• U (update) – aktualizacja
• D (delete) - usuwanie
• R (retrieve) - odczytywanie
• A (archieve) - archiwowanie
Wszelkie prawa zastrzeżone GHJ
4
Tryby użycia atrybutów przez funkcje
INU(A)
• I (insert) - wstawianie
• N (nullify) - usuwanie
• U (update) - aktualizacja
• A (archieve) - archiwowanie
Wszelkie prawa zastrzeżone GHJ
5
OPIS
# numer linii
* tekst
# numer
* nazwa
* poziom wynagrodzenia
wyjaśnienie do
opisane
przez
ujęty w
dla
PRZYDZIAŁ
# data
* wynagrodzenie
o wskaźnik wydajności
dotyczy
PRACOWNIK
# symbol
* nazwisko
* imię
* data ur
ZADANIE
w
miejscem
LOKALIZACJA
# nazwa
* adres
ETATOWY
* stanowisko
AKORDOWY
* rodzaj
* norma godzin
umiejscowiony w
Wszelkie prawa zastrzeżone GHJ
6
Lista funkcji elementarnych do przykładu
Z111. Przyjmij nowego pracownika
Z113. Zmień stanowisko pracownika
Z115. Zwolnij pracownika
Z211. Wprowadź nowe zadanie
Z213. Przydziel pracownika do zadania
Z311. Oceń pracownika za pomocą wskaźnika wydajności
Z411. Sporządź raport o lokalizacji pracowników
Z421. Ustal, jakie zadanie przydzielono pracownikowi … w dniu …
Wszelkie prawa zastrzeżone GHJ
7
Tabela powiązań funkcja/obiekt
PRACOWNIK ZADANIE
OPIS
PRZYDZIAŁ LOKALIZA-
CJA
Z111
C
R
Z113
U
Z115
D/A
D
Z211
C
C
Z213
R
R
R
C
Z311
R
R
R
U
Z411
R
R
Z421
R
R
R
R
Wszelkie prawa zastrzeżone GHJ
8
Logika funkcji
• precyzyjne i niedwuznaczne definiowanie szczegółów
funkcji
• stosowana w tych przypadkach, w których funkcja
jest złożona lub wymaga arbitralnego algorytmu
• Celem jest - zrozumienie przez projektanta rezultatu
działania funkcji i zaprojektowania sposobu jej
realizacji
• Celem nie jest - uzyskanie opisu dla prostego
przekształcenia w procedurę programową
Wszelkie prawa zastrzeżone GHJ
9
Co się może dziać podczas wykonywania
biznesowej funkcji elementarnej?
• informacje o rzeczach istotnych dla
organizacji mogą być
– wyszukiwane
– tworzone albo usuwane wystąpienia encji
– zmieniane wartości atrybutów
– relacje między wystąpieniami encji mogą być
tworzone, przenoszone, usuwane
• wywoływane inne funkcje
• wykonywane fizyczne lub mechaniczne
działania
Wszelkie prawa zastrzeżone GHJ
10
Struktura logiki funkcji
Prezentuje trzy aspekty użycia informacji
• nawigację - kierunek poszukiwań informacji:
sekwencja potrzebnych encji i atrybutów
• tworzenie nowych wartości - algorytm, formuła
obliczeniowa
• zakres - jakiej części zbioru informacji dotyczy
przetwarzanie: spełnienie sformułowanego warunku
Wszelkie prawa zastrzeżone GHJ
11
Zmienność formuły
• W przypadku dużej zmienności reguł, lepiej jest tylko
nazwać formułę, która może być zastąpiona
konkretną regułą
• Formuły i ich warunki użycia mogą być modelowane
jako obiekty - pamiętane jako dane w bazie danych
• Języki opisu logiki funkcji na różnym poziomie
sformalizowania
Wszelkie prawa zastrzeżone GHJ
12
Metody formułowania logiki
w języku skierowanym na użytkownika
[CASE* Method]
A. Uproszczona logika funkcji
I. opis lingwistyczny uproszczony poprzez
zastosowanie tzw. perspektywy organizacji
II. opis lingwistyczny uproszczony poprzez
uzupełnienie modelu struktury informacyjnej
(DOZ)
B. Szczegółowa logika funkcji
III. Konstrukcja zdania wyrażającego trzy aspekty:
•
kierunek poszukiwań
•
algorytm
•
zakres
Wszelkie prawa zastrzeżone GHJ
13
AI. Perspektywa organizacji
Perspektywa organizacji: utworzona na podstawie używanej przez
użytkownika terminologii z zastosowaniem modelu encji
•
Nazwa funkcji:
Utwórz lot rejsowy
•
Opis funkcji
Na żądanie utwórz nowy LOT REJSOWY, przy użyciu danych:
planowany czas lotu, numer lotu, linia przewozowa, miejsce startu i
lądowania, gdzie miejsce lądowania jest różne od miejsca startu
•
Perspektywa LOT REJSOWY jest bazuje na obiektach: LOT, TRASA,
LINIA LOTNICZA, LOTNISKO (rysunek)
•
Użyto nazw atrybutów encji – niektóre są inne niż na modelu, ale stosowane
przez użytkownika
•
Pominięto odwołania atrybutów do nazw encji
•
Łatwość rozszerzenie opisu o wskazanie wymagalności i poprawnych wartości
atrybutów, a także ograniczeń integralności
•
Określono ograniczenie dotyczące miejsca lądowania i startu
Wszelkie prawa zastrzeżone GHJ
14
POZYCJA ZAM
LINIA LOTNICZA
# kod
* nazwa
# kod
* nazwa
LOT
TRASA
# numer
* planowany czas
lotu
# data odlotu
# czas odlotu
LOTNISKO
Fragment modelu DOZ „Rezerwacja i loty”
na
planowana
jako
z
do
źródłem
przeznaczeniem
przewoźnikiem na
obsługiwana
przez
Wszelkie prawa zastrzeżone GHJ
15
AII. Uzupełnienie DOZ
A. Opis funkcji jako uzupełnienie nazwy funkcji w
języku naturalnym
B. Wprowadzenie nieformalnych uzupełnień na
odpowiednim fragmencie DOZ
oznaczenie używanych obiektów i związków (inny kolor
linii),
określenie sposobu ich użycia (komentarz),
określenie warunku (komentarz)
podanie wyniku funkcji, np. wynik obliczeń (nieformalne
wyróżnienie używanych atrybutów, związków)
dodatkowe informacje (komentarz)
Wszelkie prawa zastrzeżone GHJ
16
POZYCJA ZAM
LINIA LOTNICZA
# kod
* nazwa
# kod np. LOT
* nazwa
LOT
TRASA
# numer
* planowany czas
lotu
# data odlotu
#czas odlotu
LOTNISKO
Fragment modelu DOZ „Rezerwacja i loty”
do metody z uzupełnieniem DOZ
Tworzenie
Odwołanie do
Odwołanie do
Odwołanie do
Żródło
≠
przeznaczenie
Średnio 20 nowych/dzień
Wszelkie prawa zastrzeżone GHJ
17
BIII. Szczegółowa logika funkcji
• Kierunek wyszukiwania:
Wyszukaj <lista atrybutów> z <nazwa obiektu>
• Algorytm działania:
opis obliczania nowych wartości za pomocą
standardowej terminologii matematycznej z nazwami
atrybutów i obiektów jako zmiennymi
• Zakres:
Konstrukcja zdania kwalifikującego wybór wystąpień
encji za pomocą warunku
... gdy <warunek >”
Wszelkie prawa zastrzeżone GHJ
18
Przykład „Ustalenie dostaw realizujących
zamówienia wg harmonogramu”
• Uporządkuj zamówienia w kolejności priorytetu (wynikającego
ze statusu klienta, miejscowości, daty złożenia zamówienia i
innych subiektywnych decyzji)
• idąc w dół listy POZYCJI ZAMÓWIEŃ utwórz dla każdej
POZYCJI ZAMÓWIENIA realizującą POZYCJĘ DOSTAWY
• ustalaj ilość w dostawie (jeśli istnieje ilość w zapasie) równą
liczbie mniejszej spośród ilości wymaganej i ilości w zapasie,
aż ilość w zapasie będzie równa zero lub wszystkie POZYCJE
ZAMÓWIENIA zostaną zrealizowane
• utwórz planowaną DOSTAWĘ, jako część HARMONOGRAMU,
do której wchodzą te POZYCJE DOSTAWY, które są kierowane
do MIEJSCOWOŚCI o tej samej nazwie
Wszelkie prawa zastrzeżone GHJ
19
POZYCJA ZAM
DOSTAWA
# numer
* data
# numer
* ilość w dostawie
składająca się z
częścią
w
dotycząca
POZYCJA
ZAMÓWIENIA
ZAMÓWIENIE
# numer
* data
o priorytet
# numer
* ilość wymagana
realizowana
przez
PRODUKT
# symbol
* nazwa
* ilość w zapasie
POZYCJA DOSTAWY
złożone z
MIEJSCOWOŚĆ
# kod
* nazwa
KLIENT
# nazwa
* status
realizująca
od
zamawia-
jącym
należąca do
obejmujący
pozycją
siedzibą
umiejscowiony
w
HARMONOGRAM
# numer
* wydział
miejscem
kierowana do
Wszelkie prawa zastrzeżone GHJ
20
MODELOWANIE PRZEPŁYWU
DANYCH
1. Diagram przepływu danych (DFD)
2. Weryfikacja modelu strukturalnego SI za
pomocą DFD
Wszelkie prawa zastrzeżone GHJ
21
Definicja i struktura DFD
• Model części organizacji rozważany z punktu
widzenia systemu przetwarzania informacji
• Przedstawia przemieszczanie informacji lub
dokumentów wewnątrz systemu i między systemem
a jego środowiskiem
• Składa się z diagramu kontekstowego i diagramów
niższych poziomów, otrzymanych z dekompozycji
diagramu kontekstowego
Wszelkie prawa zastrzeżone GHJ
22
Struktura DFD
• Diagram kontekstowy przedstawia system jako jeden
proces i jego środowisko
• Na diagramie najniższego poziomu występują
procesy elementarne, które nie mogą być dalej
dekomponowane, ale są uzupełniane tekstową
specyfikacją
• DFD dostarcza szczegółów różnego poziomu
złożoności, od ogólnych do szczegółowych
Wszelkie prawa zastrzeżone GHJ
23
Rodzaje DFD
• Fizyczny DFD przedstawia działanie systemu
za pomocą fizycznych szczegółów
– wykonawca procesu
– mechanizm wykonywania procesu
– sposób i miejsce przechowywania informacji
• Logiczny DFD przedstawia działanie systemu
(funkcje) bez ograniczeń technologicznych
Wszelkie prawa zastrzeżone GHJ
24
DFD w metodyce CASE*Method
• Diagram kontekstowy – poziom zerowy, definiuje
zakres aplikacji i jej granice, pokazuje jeden proces
razem z obiektami zewnętrznymi i przepływami
danych.
• Poziom pierwszy (diagram najwyższego poziomu)
pokazuje główne procesy (funkcje) razem z obiektami
zewnętrznymi, magazynami danych i przepływami
danych.
• Diagramy niższego poziomu (2, 3 do N) są wynikiem
dekompozycji (rozszczepienia) procesów (funkcji) z
diagramów wyższego poziomu.
Wszelkie prawa zastrzeżone GHJ
25
DFD w metodyce CASE*Method c.d.
• Tworzony jest tylko logiczny diagram.
• Służy przede wszystkim do weryfikacji Diagramu
hierarchii funkcji oraz Diagramu obiekt-związek.
Wszelkie prawa zastrzeżone GHJ
26
Elementy Diagramu przepływu danych
• Obiekt zewnętrzny/terminator (external entity)
• Proces / funkcja (process, function)
• Strumień (przepływ) danych (data flow)
• Magazyn danych (składnica) – obiekt wewnętrzny
(data store)
Wszelkie prawa zastrzeżone GHJ
27
Obiekt zewnętrzny
• Przedstawia źródło (nadawcę) lub miejsce
przeznaczenia (odbiorcę) informacji w środowisku
systemu.
• Może być to : osoba, organizacja lub system
informacyjny.
KLIENT
Oznaczenie
duplikatu
Nazwa obiektu
Wszelkie prawa zastrzeżone GHJ
28
Reprezentacja graficzna procesu
Nabycie towaru
od dostawcy
2
Dział zakupów
Kod referencyjny
Nazwa
procesu/funkcji
Miejsce fizycznej
realizacji procesu/
funkcji
Wszelkie prawa zastrzeżone GHJ
29
Przepływ danych
• Przedstawia informację wejściową lub wyjściową dla
procesu
• Przedstawia przemieszczanie informacji wewnątrz
systemu lub między systemem a środowiskiem
• Odpowiada różnym postaciom przenoszenia
informacji: dokument, komunikat ustny, wiadomość
elektroniczna
• Przepływ danych dozwolony jest w obu kierunkach
między procesem i magazynem danych, między
procesem i obiektem zewnętrznym, między
procesami
Wszelkie prawa zastrzeżone GHJ
30
Graficzna reprezentacja przepływu
danych
KLIENT
Przyjmij
życzenie
1.1
życzenie
Nazwa przepływu
Kierunek przepływu
Wszelkie prawa zastrzeżone GHJ
31
Magazyn danych
Przedstawia składnicę (miejsce przechowywania)
informacji wejściowych lub wyjściowych
D2
Konta dostawców
Kod referencyjny
Nazwa magazynu
Oznaczenie
duplikatu
Wszelkie prawa zastrzeżone GHJ
32
Diagram kontekstowy
Zapewnij wysoką
jakość kursów
szkoleniowych
0
KLIENT
KSIĘGOWOŚĆ
MARKETING
KIEROWNICTWO
FIRMY
życzenie rezerwacji
zapotrzebowanie rynku
na kursy
cele
szczegóły o wykonaniu
słuchacz dla
wystawienia rachunków
żądanie potwierdzenia
potwierdzenie
Wszelkie prawa zastrzeżone GHJ
33
KSIĘGOWOŚĆ
MARKETING
Opracowanie i
dopasowanie
kursów do
wymagań rynku
1
KIEROWNICTWO
FIRMY
KLIENT
Zaplanowanie
kursów zgodnie
z wymaganiami i
zyskowności
2
Administrowanie
rezerwacjami
słuchaczy, zasobów
i wykładowców
3
Śledzenie wykonania
w stosunku do celów
4
D1
Kursy
KIEROWNICTWO
FIRMY
D2
Edycje
kursów
D3
Rezerwacje
wykładowców
D4
Rezerwacje
zasobów
D5
Rezerwacje
słuchaczy
Zapewnij wysoką jakość kursów szkoleniowych
D2
Edycje
kursów
0
zapotrzebowanie rynku
docelowa zyskowność
życzenie rezerwacji
lub anulowania
potwierdzenie
żądanie potwierdzenia
słuchacz dla wyst. rach.
szczegóły o wykonaniu
poziom zyskowności
rezerwacja
rezerwacja dla słuchacza
rezerwacja zasobu
rezerwacja wykładowcy
plan kursów
plan kursów,
plan. zys-
kowności
nowy/poprawiony kurs
istniejący kurs
wymagania
dla kursu
szczególy edycji
Wszelkie prawa zastrzeżone GHJ
34
MARKETING
Analiza
zapotrzebowania i
ustalenie liczby
uczestników
21
Ustalenie edycji
dla kursów i planowanej
zyskowności
22
Opracowanie
harmonogramu
kursów
23
D1
Kursy
KIEROWNICTWO
FIRMY
Zaplanowanie kursów zgodnie
z wymaganiami rynku
i zyskowności
2
zapotrzebowanie rynku
docelowa zyskowność
wymagania dla kursu
liczba
uczestników
plan zyskowności
szczegóły edycji
plan kursów
szczegóły edycji
D2
Edycje kursów
Wszelkie prawa zastrzeżone GHJ
35
Ogólne zasady budowy magazynów
danych na podstawie modelu
strukturalnego
• Atrybuty stanowią elementy danych tego samego
magazynu danych, który odpowiada encji (obiektowi)
związanej z tymi atrybutami.
• Encja (obiekt) nie może być podzielona na różne
magazyny danych.
• Magazyn danych może odpowiadać jednej encji lub
kilku encjom.
• Związek między encją A i B może być ujęty
oddzielnie przez magazyn A, B lub jednocześnie
przez oba.
Wszelkie prawa zastrzeżone GHJ
36
Weryfikacja modelu funkcji
• Czy w DHF istnieją funkcje, których nie ma w DFD?
Czy powinny być uwzględnione?
• Czy istnieje zgodność 1:1 między EBF na DHF i
funkcjami element. na DFD?
• Czy z modelowania przepływów wynikły zdarzenia
nie uwzględnione w DHF?
Wszelkie prawa zastrzeżone GHJ
37
Weryfikacja modelu funkcji c.d.
• Czy zdefiniowane użycie encji i atrybutów przez f.
element. zgadza się z zawartością przepływów
wykorzystywanych przez f. element. DFD?
D1
Pracownicy
F65
D2
Wydziały
Sporządzenie listy
pracowników
wydziału
F63
F64
F65
Pracownik
Wydział
R
R
?
Wszelkie prawa zastrzeżone GHJ
38
Weryfikacja modelu informacji
• Czy dane wymagane przez magazyny danych są
równoważne encjom i/lub atrybutom w DO-Z?
• Czy dla każdej encji i każdego atrybutu istnieje
magazyn danych, w którym ona/on występuje?
D2
Wydziały
?
WYDZIAŁ
symbol
nazwa
Wszelkie prawa zastrzeżone GHJ
39
Weryfikacja modelu informacji c.d.
• Czy wykorzystanie danych przez funkcje DFD jest
zapewnione przez związki zdefiniowane w DO-Z?
D1
Pracownicy
F65
?
PRACOWNIK
nazwisko
imię
D2
Wydziały
Sporządzenie listy
pracowników
wydziału
WYDZIAŁ
symbol
nazwa
Wszelkie prawa zastrzeżone GHJ
40
Weryfikacja modelu informacji c.d.
• Czy dla każdego magazynu danych, dla którego
proces (funkcja) powoduje zmianę stanu znajdującej
się w nim encji, istnieje atrybut rejestrujący tę zmianę
stanu?
D2
Kursy
F226
liczba godzin
zmieniona liczba godzin
?
KURS
numer
liczba godzin
Dopasowanie kursu
do wymagań
Wszelkie prawa zastrzeżone GHJ
41
Kontrola spójności
Oblicz należność za
zużytą energię w
miesiącu …
F534
stan bieżący licznika
stan z poprzedniego miesiąca
cena netto
kwota netto
kwota brutto
kwota VAT
do zapłaty
Logika funkcji:
kwota brutto = (stan bieżący – stan poprzedni) * cena brutto
cena brutto = cena netto + cena netto * %VAT/100
do zapłaty = kwota brutto + niedopłata - nadpłata
?