11.07.2015 Views

Analiza strukturalna systemów informatycznych - Koszalin

Analiza strukturalna systemów informatycznych - Koszalin

Analiza strukturalna systemów informatycznych - Koszalin

SHOW MORE
SHOW LESS

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)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!