Analiza strukturalna systemów informatycznych - Koszalin
Analiza strukturalna systemów informatycznych - Koszalin
Analiza strukturalna systemów informatycznych - Koszalin
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Składniki metodyki TSINarzędziazespołuprojektowegoModele DPMetodyTechnikiCASETworzeniesystemuDziedzinaprzedmiotowaTworzenie systemuinformatycznegoSysteminformatycznyAnalizy, cele, problemy, potrzebyPrezentacja ieksploatacjaKorekty imodyfikacjeOcenaNieAkceptacjaZespółprojektowyKierowanie projektamiTak
Logiczna klasyfikacja metodyk TSI (1)
Logiczna klasyfikacja metodyk TSI (2)
Realizacja SI: podejściametodyczne●●●Strukturalne, polegające na tworzeniusystemu o strukturze hierarchicznej, którejskładniki stanowią dobrze zdefiniowanemoduły funkcji i danych;Obiektowe, opierające się na wyodrębnieniuobiektów, mających przypisane znaczenie wkontekście dziedziny przedmiotowej;Społeczne, akcentuje aspekty psychologiczneoraz socjologiczne w tworzeniu SI.
Klasyfikacja technik opisu SIMetodyopisu SIStrukturalneObiektowe Społeczne PrzyrostoweYourdon’aSSADMSADTSTRADIS
Realizacja SI: podejściepraktyczne●●Stosowane w praktyce techniki stanowią zazwyczajswoisty kompromis miedzy:– Podejściem technicznym a społecznym,– Specyfikacją danych i procesów,– Aktywnym i pasywnym wpływem na dziedzinęprzedmiotowa,– Wstępującym bądź zstępującym tokiem projektowania.Można mówić o tzw. elastycznych metodykach TSI,dopuszczających stosowanie w kolejnych fazachrealizacji SI niejednorodnych technik.
Podstawowe składnikielastycznych metodyk TSI●●●●●ModeleTechnikiNarzędziaReguły transformacjiCykl życia systemu
Metodyki strukturalne●●●Metodyki strukturalne (ang. structured methodologies,structured analysis) przewidują statyczne opisy danych iprocesów.Do tej klasy metodyk strukturalnych należą:– Metodyka Yourdon’a;– SSADM (ang. Structured System Analysis and DesignMethodology);– SADT (ang. Structured Analysis and Design Technique);– STRADIS – metodyka strukturalnej analizy systemówinformacyjnych.Główną wadą metodyk strukturalnych są trudności wzintegrowaniu modeli.
Różnice pomiędzy metodykami●●●●Podejścia proponowane przez różnychautorów różnią się tylko częściowo i niemuszą być ze sobą sprzeczne.Nie ma metodyk uniwersalnych.Analitycy i projektanci wybierają kombinacjętechnik i notacji, która jest w danymmomencie najbardziej przydatna.Poszczególne metodyki mogą zawieraćelementy rzadko wykorzystywane wpraktyce.
<strong>Analiza</strong> i modelowaniestrukturalne (1)●●●W projektowaniu strukturalnym zakłada sięnaprzemienne etapy:– analiz teoretycznych,– prac projektowych,– eksperymentów praktycznych.Z doskonaleniem systemu informatycznego nie wolnoprzesadzać: „Good enough is perfect”.Istotą metod projektowania strukturalnego jestupraszczanie złożonego systemu poprzez systematycznerozkładanie go na prostsze podsystemy, drogowskazemdla projektanta jest struktura rozważanego problemu.
<strong>Analiza</strong> i modelowaniestrukturalne (2)●●Podstawową ideą podejścia strukturalnegojest dzielenie złożonych procesów i bytów naelementy składowe wraz z koncentracjąuwagi stopniowo na coraz drobniejszychszczegółach.Ważne jest, żeby wykrytą strukturę zapisać iuwidocznić we właściwy sposób.
Główne techniki analizystrukturalnej●Zgodnie z De Marco, analiza <strong>strukturalna</strong>używa następujących technik:– Diagramy Przepływu Danych (ang. Data Flow Diagrams,DFD);– Słownik Danych (ang. Data Dictionary);– Strukturalny język naturalny (angielski, polski);– Tablice Decyzyjne (ang. Decision Tables);– Drzewa Decyzyjne (ang. Decision Trees).
Inne techniki analizystrukturalnej●●●●●●●Schemat Transformacyjny (ang.Transformation Schema);Diagram Przejść Stanów (State TransitionDiagram);Lista Zdarzeń (ang. Event List);Schemat Danych (ang. Data Schema);Pre- i post- warunki (ang. Pre- and Post-Conditions);Diagramy Encja-Związek (ERD);Historie Życia Encji.
Składniki podejściastrukturalnegoStrukturalne projektowanieStrukturalne testowanie●↓●↓●↓●Wymagania klientaSpecyfikacja wymagańfunkcjonalnychSpecyfikacja projektu SITworzenie modułów SI→●↑●↑●↑●Przegląd wyników rozwiązaniaTest akceptacyjny nazainstalowanym SIIntegracja modułów SITest modułów
Diagram Hierarchii Funkcji *Wymagania funkcjonalne opisują funkcje (czynności,operacje) wykonywane przez system.*) Function Hierarchy Diagram - FHD
Konstruowanie hierarchiifunkcji●Każda funkcja na diagramie określa, co system ma robić, a niew jaki sposób;● Każda funkcja nadrzędna powinna całkowicie opisywać funkcjeszczegółowe;● Wykorzystuje się metodę z góry na dół (od ogółu do szczegółu);● Każda funkcja powinna być opisana w języku naturalnym:- nazwa funkcji, - wynik- opis, - warunek wstępny- dane wejściowe, - warunek końcowy- źródło danych wejściowych
Etapy modelowania iprojektowania strukturalnego●●●Konstrukcja modelu środowiska– Definicja zadań systemu– Identyfikacja obiektów zewnętrznych– Definicja bodźców zewnętrznych– Konstrukcja diagramu kontekstowegoKonstrukcja modelu behawioralnego– Model funkcjonalny i model danych– Model zmian stanów systemuKonstrukcja modelu fizycznego
Analityczne metodymodelowania i projektowania SI●●Metody analityczne – definicję hierarchicznegomodelu SI dokonuje się poprzez zastosowanierozbioru tego systemu na części składowe.– Metody strukturalne: hierarchia kompozycyjna– Metody obiektowe: hierarchia kompozycyjna i hierarchiauogólniającaPodstawowe koncepcje projektowaniastrukturalnego:– Zasada uściślania krokowego– Zasada modularyzacji●Kryteria spójności modułów i więzi międzymodułowych
Metoda <strong>strukturalna</strong> Yourdana1)Diagram przepływu danych (DFD)2)Specyfikacja procesów (PSPEC)3)Relacyjne diagramy danych (ERD)4)Słownik danych (DD)5)Diagramy przejść stanów (STD)
Diagramy przepływu danych*(1)●●Proces (ang. process) oznacza transformacjędanych wejściowych w wynikowei odpowiada tym składnikom systemu, któreprzetwarzają dane.Przepływ danych (ang. data flow) – opisujezbiór danych przepływający pomiędzydwoma obiektami w systemie.*) ang. Data Flow Diagram – DFD
Diagramy przepływu danych (2)●●Magazyn danych (ang. data store) – inaczejskładnica danych służy do przechowywaniadanych w postaci jednorodnych kolekcji.Terminator (ang. terminator) - obiektzewnętrzny w stosunku do systemureprezentujący źródła lub miejscaprzeznaczenia informacji.– Szczegółowy opis wszystkich kategorii występującychna DFD zawiera słownik danych DD.
Diagramy przepływu danych:strategia Top-Down
Diagramy przepływu danych:odprawa na lotnisku
Diagramy przepływu danych:dekompozycja i równoważenie●●Dekompozycja polega na dzieleniu modeluna coraz mniejsze części, o coraz większymstopniu szczegółowości.Równoważenie zapewnia, że wszystkiewpływy i wypływy danego procesu będązachowane na odpowiadającym mudiagramie niższego poziomu.
Poziomy dekompozycji● Diagram kontekstowy:– kontekst, w którym są wszystkie procesy– wszystkie procesy jako jeden proces– byty, które wymieniają dane z procesami● Poziom 0:– główne procesy, które pokrywają cały biznes– główne magazyny– przepływ informacji● Poziomy 1, 2, 3, ...:– procesy wchodzące w skład każdego procesu wyższego poziomu (ale niemuszą opisywać każdego)– magazyny– przepływ informacji
Słownik danych●●●●●Opisuje dane w magazynachOpisuje dane w przepływachDekomponuje pakiety danych na daneelementarneOkreśla dopuszczalne wartości dla danychelementarnychOpisuje związki między danymi
Notacja słownikaSymbolOpis= składa się+ i( ) opcjonalnie (może wystąpić lub nie){ } iteracja[ ] alternatywa (jedna z możliwości)* * komentarz@klucz dla magazynu| oddziela elementy alternatywy
Słownik danych: przykładowewpisy● pełne_nazwisko=tytuł+imię+nazwisko● tytuł=[Pan|Pani|Dr|Prof.]● imię={dowolny_znak}● nazwisko={dowolny_znak}● dowolny_znak=[A-Z|a-z|0-9|’|-| ]● wagaP=*waga pacjenta w chwili przyjęcia doszpitala; jednostki: kilogramy; zakres: 1-200*● zamówienie=nazwa_klienta+adres_dostawy+{pozycja_zamówienia}
Specyfikacja procesów●●Specyfikacja procesu opisuje co należyzrobić w celu przekształcenia wejścia nawyjście.Wskazówki:– Specyfikacja procesu musi być opisana w taki sposób,żeby była zrozumiała zarówno dla użytkownika jak idla programisty.– Specyfikację wykonujemy tylko dla procesówelementarnych, czyli tych, które są najbardziejszczegółowe, znajdują się na najniższym poziomiediagramu DFD i nie będą już dekomponowane.
Metody opisu procesów●●Język opisowy– Wziąć wszystkie zamówienia z dzisiejsza datą faktury.– Zsumować z nich kwoty.– Wyświetlić w księgowości.Język strukturalnysuma_dzienna=0DO WHILE istnieją zamówienia w ZAMÓWIENIACH zdatą faktury=dzisiajsuma_dzienna= suma_dzienna+kwota z zamówieniaEND DOWYŚWIETL w księgowości suma_dzienna
Procedury decyzyjne●●Są to procesy decyzyjne, które mogą być wpełni automatyzowane, bo wybór opcji jestjednoznacznie określony przez sprawdzeniepewnych kryteriów.Stosowane techniki strukturalizacji(formalizacji):– drzewa decyzyjne– tablice decyzyjne– język strukturalny
Formalizacja procedurydecyzyjnejPrzykład: kategoria biletu za przejazd:– dzieci 3- lat – bezpłatnie– osoby 18- lat – ulga 50%– dzieci 12- lat, pod opieka osoby dorosłej – ulga75%– osoby 18+ pełnopłatne, za wyjątkiem studentów iemerytów– osoby w grupie co najmniej 10 osobowej – ulga10%– zawsze stawka najkorzystniejsza dla podróżnego
Drzewo decyzyjneDrzewo decyzyjneBezpłatne3-TakUlga 75%PodróżnyWiek?3+ ÷ 12-12+ ÷ 18-18+Oabosa wtoNieUlga 50%Ulga 50%?acązsyzrTakUlga 50%Snedut?tNiee mETakNieUlga 50%TakUlga 10%yr?tGNiePełnopłatneapur
Język strukturalnyIF wiek < 3 THEN bezpłatnieIF 3 ≤ wiek
Tabela decyzyjnaKryteria - warunkiwiekosobatowarzyszącastudentemerytgrupa3- 3+ ÷ 12- 12+ ÷ 18- 18+T NT NTTNNbezpłatnieulga 75%ulga 50%××Opcje - działania× × × ×ulga 10%×pełnopłatnie×
Historia życia encji*●●●Ukazuje zmiany stanu danych w czasie, czylihistorię życia encji od momentu jej powstaniado momentu usunięcia.Integruje DFD z ERD w celu sprawdzenia ichspójności.Sporządza się ich tyle, ile jest encji wsystemie.*) Entity Life History, ELH
Historia życia encji, przykładyWypożyczalniaautKonto bankowe
Literatura●●Wrycza S.: <strong>Analiza</strong> i projektowaniesystemów <strong>informatycznych</strong> zarządzania.Metodyki, techniki, narzędzia. Warszawa,PWN, 1999.Roszkowski J., <strong>Analiza</strong> i projektowaniestrukturalne. – Helion, 2002.
Techniki analizy strukturalnej doobowiązkowego zapoznania się●●●●●●●ERD – Entity-Relationship Diagram (diagram zwiazkówencji-relacji)DD - Data Dictionary (słownik danych)DFD - Data Flow Diagram (diagram przepływu danych)ELH – Entity Life History (historia życia encji)FHD – Function Hierarchy Diagram (diagram hierarchiifunkcji)STC - Structured Charts (diagramy strukturalne)STD - State Transition Diagram (diagramy przejscstanów)