7. Metody analizy i modelowania strukturalnego SI
Dwa wymiary analizy i modelowania strukturalnego Wymiar statyczny – Struktury informacji Wymiar dynamiczny – Procesy przetwarzania Przykłady metod: -modele związków encji -modele binarne Przykłady metod diagramy przepływu danych, -diagramy ISAC
Cechy metod strukturalnych Modelowanie struktur informacji (przykład: model związków encji) Modelowanie dynamiki systemu informacyjnego (przykład: Diagram przepływu danych, diagramy ISAC, diagramy Jacksona, technika modelowania MERISE) Kaskadowy cykl rozwoju aplikacji Ograniczone zastosowanie narzędzi CASE
Przykłady metod strukturalnych YSM (Yourdon System Method) – metodyka proponowana przez Yourdona IE (information Engineering) – metoda rozwijana przez J. Martina SSADM (Structured Systems Analysis and design Method) MERISE – metoda strukturalna opracowana we Francji
Przypadek firmy „Biuro Turystyczne” 3 rodzaje działalności: Organizacja i sprzedaż wycieczek Wynajem apartamentów wakacyjnych Dodatkowe usługi turystyczne Struktura organizacji: centrala Szczecin i 3 oddziały regionalne Zadanie: Opracować system zinformatyzowany, wspomagający działalność podstawową tej firmy
Modelowanie struktur informacji
Fazy definiowania struktur informacji w metodach strukturalnych Modelowanie danych Uogólniony model danych Model danych fragmentu rzeczywistości Model danych SZBD Projektowanie bazy danych Model konkretnej bazy danych
Cechy modelu związków encji 3 podstawowe pojęcia modelu: encja współzależność (związek) cecha (atrybut) Z każdym pojęciem jest związany typ i wystąpienie. Jest to wynik stosowania procedury abstrakcji. Poszczególne pojęcia posiadają notację graficzną
Notacja graficzna modelu związków encji Model związków encji posiada wiele odmian i różne formy notacji graficznej. Poniżej przedstawiono notację graficzną P. P. Chena: Kierunek Encja Atrybuty Studenci kierunku Nr indeksu Związek Nazwisko Student ... Data urodzenia
Rodzaje powiązań między encjami (różne notacje) 1. Związki typu 1:1 1 1 Indeks Student Indeks Student 2. Związki typu 1:n 1 n Student Kierunek Student Kierunek 3. Związki typu n:m. (wiele do wielu) n m Zamówienie Produkt Zamówienie Produkt
Cecha obligatoryjności powiązania dla encji Dane związek jest dla encji obligatoryjny, jeżeli dana encja nie może istnieć bez wystąpienia dla niej tego zwizku. Przykład: Powiązanie studenta z kierunkiem studiów Zwiazek jest opcjonalny jeśli encja może istnieć bez tego powiązania. Przykłady: Kierunek Student Zamówienie Produkt
Reguły integralności w modelu związków encji Typy reguł: reguły wbudowane (powiązanie dotyczy 2 encji) więzy jawne (definiowane przez analityka) Sposób definiowania: Za pomocą predykatów, przyporządkowanych atrybutom. Przykład: Cena>0 and cena<100000
Przykład modelu zwiazków encji
Modelowanie procesów przetwarzania
Podstawowe pojęcia modelowania procesów – za pomocą diagramów przepływu danych Strumień danych Magazyn danych Element terminalny (użytkownik)
Podstawowe rodzaje diagramów przepływu danych Diagram kontekstowy – system prezentowany jest jako jeden proces. Celem jest prezentacja powiązań systemu z użytkownikami Diagram główny – identyfikacja głównych procesów i przepływów danych w systemie informacyjnym Diagramy uzyskane przez dekompozycję (eksplozję) – opisujące strukturę wewnętrzną procesów zdefiniowanych na schemacie wyższego poziomu
Przykład diagramu kontekstowego
Przykład diagramu głównego przepływu danych
Zasady budowy diagramów przepływu danych Proces musi mieć chociaż jeden strumień wyjściowy Użytkownicy komunikują się tylko z procesami Procesy mogą się komunikować między sobą Tylko procesy korzystają z magazynów danych Wiele procesów może korzystać z jednego magazynu danych Diagramy powinny mieć ograniczoną złożoność (do 7 procesów na diagramie)
Przykład diagramu procesu po dekompozycji (proces:rezerwacja usługi)
Wskazówki techniczne budowy diagramu przepływu danych Procesy lokalizować w środkowej części Należy stosować synonimy (kopie) magazynów danych i użytkowników
Cechy kompletnego modelu procesów Model składa się ze zbioru diagramów przepływu danych. Liczba zastosowanych poziomów zależy od złożoności problemu. W diagramie niższego rzędu powinny się pojawić elementy powiązane z procesem z diagramu wyższego poziomu. Liczba poziomów dekompozycji zależy od decyzji analityków Każdy strumień danych powinien być opisany kolekcją danych elementarnych, które reprezentuje na schemacie. Każdy magazyn danych powinien zawierać definicję przechowywanej struktury danych.
Słabe strony modelowania procesów za pomocą diagramów przepływu danych Brak jednoznacznego mechanizmu do modelowania sieci działań w ramach procesów Brak możliwości prezentacji sekwencji czasowej działań w systemie
Sposoby modelowania sieci działań w procesie Analityk może wykorzystać dowolną metodę modelowania sieci działań w procesie Metody najczęściej stosowane Schematy blokowe Tablice decyzyjne Język strukturalny
Technika tablic decyzyjnych REGUŁY DECYZYJNE Warunki Wskaźniki występowania warunków Wskaźniki podejmowanych czynności Czynności
Przykład tablicy decyzyjnej Problem : Dokonanie zapisu rezerwacji usługi turystycznej w magazynach danych 1 Rodzaj rezerwacji = wycieczka? 2. Czy komplet danych rezerwacji?. T T N N T N T N X - - X X - - X 1.Dopisz rezerwacje do magazynu „Rezerwacje” 2. Wyszukaj zapis wycieczki wg symbolu katalogowego 3. Zmodyfikuj ‘liczba wolnych miejsc”= ‘liczba wolnych miejsc” - 1 4. Wyszukaj zapis tygodnia pobytu wg symbolu apartamentu i daty początku 5. Zmodyfikuj atrybut Czy zarezerwowany=tak 6.Zapisz nr rezerwacji w atrybucie nr rezerwacji 7. Wyświetl formularz „kompletowanie danych STOP
Język strukturalny (Pseudokod POCZĄTEK, KONIEC Działanie: <działanie> Konstrukcja warunku: JEŻELI <warunek>TO <działanie> INACZEJ<działanie> Konstrukcja powtarzania - dwie odmiany: POWTARZAJ <działanie> AŻ DO <warunek> DOPÓKI <warunek> WYKONUJ <działanie> Konstrukcja przypadku PRZYPADEK nazwa przypadku Wartość Wartość n KONIEC PRZYPADEK