Informatyka w zarzadzaniu

Embed Size (px)

Citation preview

IV. OPIS NARZDZI ANALIZY STRUKTURALNEJ Modele analityczne, to w przewaajcej czci papierowe modele przyszego systemu, tzn. abstrakcyjne reprezentacje, ktre pniej stan si kombinacjami sprztu i oprogramowania. Najpierw wyjani do czego w ogle potrzebne nam s modele. Modele mona konstruowa w ten sposb aby uwypukli pewne istotne cechy systemu, pomijajc jednoczenie inne jego aspekty. Pozwala to na atwiejsz komunikacj z uytkownikiem, poniewa skupiamy si na aspektach wanych w danej chwili. Jeli okae si, e wymagania uytkownika zostay bdnie zinterpretowane, mona zbudowa nowy model. W przypadku budowy caego systemu po pocztkowych rozmowach z uytkownikiem ryzykujemy, e powstay system nie jest tym czego oczekiwa uytkownik, a jego zmiana jest bardzo kosztowna. Jednym sowem mwic model, to tania kopia systemu, ktry bdziemy bada. Bdne zaoenia, czy po prostu niedopracowany projekt systemu s prz yczyn ponad 80% wystpujcych bdw. Natomiast koszt naprawy w tej ytuacji stanowi okoo 95% wszystkich kosztw zwizanych z napraw wystpujcych ni eprawidowo ci. Narzdzia modelowania uywa si gwnie do: skoncentrowania si na istotnych w danej chwili aspektach; modyfikowania wymaga uytkownika przy minimalnych kosztach i ryzyku; upewnienia si, e wymagania zostay poprawnie zinterpretowane, tak by programici mogli zbudowa poprawnie dziaajcy system. Istnieje wiele rnych modeli, ktre moglibymy przestawi uytkownikowi: narracyjne, prototypowe czy graficzne1. Dla rnych uytkownikw mog by konieczne rne narzdzia modelowania, na przykad ze wzgldu na ich dotychczasowe dowiadczenie. Wikszo system w wymag a wielu mod eli, pon iewa kady z n ich koncentruje si na pewnej ograniczonej liczbie aspektw. Wiele systemw ma Mog to by diagramy przepywu sterowania, diagramy HIPO, tablice decyzyjne, diagramy przepywu danych, systemowe diagramy przepywu, diagramy sieci przej, drzewa decyzyjne, diagramy zwizkw encji, Ferstla, Hamiltona-Zeldina, PAD i niezliczona liczba innych diagramw, tablic i grafw, ktre mona pokaza uytkownikowi.1

23

zoon charakterystyk funkcjonaln, zoone struktury danych oraz zoone zalenoci czasowe. Istnieje co takiego jak koncepcja zintegrowanych modeli, czyli modeli, ktre wspieraj si nawzajem. Jedne z waniejszych narzdzi modelowania, to: diagram przepywu danych, diagram zwizkw encji oraz diagram sieci przej. Narzdzia te skadaj si z grafiki i uzupeniajcej czci tekstowej. Jak mwi znane powiedzenia: obrazek wart jest tysica sw", ale sowa potrafi wicej zakry ni odsoni". Dlatego te grafika dostarcza czytelnego dla uytkownika przedstawienia gwnych skadnikw modelu wraz z powizaniami midzy nimi, a tekst tylko uzupenia te narzdzia o precyzyjne zdefiniowanie znaczenia skadnikw i powiza. Tak te powinny wyglda dokumenty, do ktrych siga uytkownik, aby zrozumie system. Kolejn cech dobrego narzdzia jest moliwo odwzorowania sytemu metod zstpujcych podziaw. Nie ma to znaczenia jedynie dla niewielkich systemw. Narzdzia modelowania musza umoliwia osobne odwzorowanie poszczeglnych czci systemu, wraz z prostym sposobem przechodzenia od jednej czci modelu do innej. Dobre narzdzie cechuje rwnie minimalna nadmiarowo. Modele stanowi reprezentacj pewnych systemw, ktre mog by dynamiczne, czyli zmienia si. Jeeli system ulegnie zmianie, to musimy wprowadzi zmiany do modelw. W wielu modelach jednak istnieje pewna nadmiarowo. Im wicej nadmiarowoci zawiera model, tym trudniej jest go pielgnowa, gdy zmiany, ktre nastpiy powinny by uwzgldnione czsto w wicej ni jednym miejscu. Poza tym dobre narzdzie powinno pomaga czytelnikowi przewidzie zachowanie systemu oraz by dla niego przejrzyste i czytelne. Abymy wiedzieli z czym mamy do czynienia i jakie narzdzia do budowy systemu obsugi sprzeday zostan wykorzystane w pracy, poniej przedstawi skrtowy opis poszczeglnych narzdzi analizy strukturalnej.

24

1. DIAGRAM PRZEPYWU DANYCH Diagram przepywu danych jest podstawowym narzdziem w strukturalnej analizie systemw. Stanowi on model funkcjonalny systemu. Na diagramie tym przedstawia si wszystkie procesy zachodzce w analizowanym systemie, inaczej mwic przedstawia on funkcje, ktre musi realizowa system. Funkcje te mog by wykonywane rcznie lub automatycznie. Ponadto na diagramie tym przedstawia si przepywy informacji pomidzy procesami, miejsca skadowania danych oraz rda i miejsca odbierania informacji. Jest to narzdzie do opisywania transformacji wej na wyjcia. Diagram przepywu danych zwiera cztery podstawowe skadniki: procesy, magazyny danych, przepywy i terminatory. To, e do sporzdzenia diagramu uywa si tylko czterech prostych symboli ma znaczenie nie tylko dla projektanta. Take uytkownikowi o wiele atwiej jest zorientowa si, co rysunek przedstawia, jeeli nie musi si zastanawia nad kadym elementem, a znaczenie niektrych elementw, na przykad strzaek oznaczajcych kierunek przepywu danych, jest prawie oczywiste. A oto krtkie objanienie tych skadnikw [1][6]. Proces)' przedstawione s na diagramie za pomoc kek (Rys.3). Reprezentuj one pojedyncze funkcje, ktre realizuje system. Funkcje te operuj na danych przeksztacajc wejcia na wyjcia. Proces moe by programem komputerowym lub procedur, ale moe to by rwnie czynno wykonywana rcznie. Dla wikszoci modelw nazwa procesw opisuje co robi ten proces. Czasami proces opisuje kto lub co go wykonuje. Przepywy przedstawione s za pomoc zakrzywionych strzaek. Su one do tworzenia zwizkw pomidzy procesami. Opisuj strumienie danych o okrelonej zawartoci przepywajce pomidzy dwoma obiektami. Strzaki okrelaj kierunek przesyania informacji. Najczciej linie s skierowane jednostronnie. W zalenoci od kierunku strzaki reprezentuj informacj wejciow lub wyjciow, ktra jest wymagana lub generowana przez proces. Przepyw z dwoma grotami, ktry moemy zobaczy

25

na rys.2, to dialog. W tym przypadku pakiety danych na obu kocach strzaki musza by nazwane. Przepywy mog si schodzi lub rozchodzi2. Magazyny danych przedstawione bd na diagramie za pomoc dwch rwnolegych linii. Przedstawiaj one zbiory danych, ktre system powinien przechowywa przez pewien czas. Reprezentuj one miejsca, gdzie dane s przechowywane pomidzy procesami, ktre na nich operuj, jeli moe wystpi przesunicie w czasie miedzy tymi procesami. Magazyny s poczone z procesami za pomoc przepyww3. Dla programisty lub projektanta staj si one pniej plikami lub bazami danych. Terminatory przedstawione s za pomoc prostoktw. Przedstawiaj obiekty zewntrzne, z ktrymi komunikuje si system. Reprezentuj rda lub miejsca przeznaczenia informacji, ktre s zewntrzne w stosunku do systemu. Dostarczaj informacji, ktra powoduje wykonanie pewnych procesw w systemie, wzgldnie odbieraj informacje produkowane przez system. S to na przykad inne dziay, inne firmy, zewntrzne systemy komputerowe korzystajce z informacji produkowanych przez system, kierownik odbierajcy raporty o sprzeday, klient skadajcy zamwienie. Przepywy czce terminatory z procesami lub magazynami systemu stanowi interfejs midzy systemem a otaczajcym wiatem. Zwizki midzy terminatorami z definicji nie wchodz do systemu, dlatego te nie s one pokazywane na diagramie. Jeeli obiekt zewntrzny lub magazyn danych wystpuje na diagramie dwa razy, dla przejrzystoci rysunku powtrzony obiekt jest zaznaczony ukon kresk w lewej grnej czci. Diagram przepywu danych moe rwnie zawiera przepywy sterujce oraz magazyny sterujce. Poza przedstawieniem gwnych skadowych funkcjonalnych systemu, diagramy przepywu danych nie dostarczaj nam adnych szczegowych informacji; dostarczaj tylko jednego spojrzenia na system - spojrzenia funkcyjnego.

Jeeli przepyw jest rozbieny, oznacza przesyanie kopii pakietu danych do rnych czci systemu lub rozdzielenie zoonego pakietu danych na kilka elementarnych, z ktrych kady jest przesyany do innej czci systemu. W przypadku pakietw zbienych, kilka elementarnych pakietw danych czy si w bardziej zoone pakiety danych [1]. 3 Co reprezentuje przepyw (czy pojedynczy pakiet, wiele pakietw, fragment pakietu czy fragmenty pakietw) mona powiedzie na podstawie etykiety przepywu. Brak etykiety lub jeli etykieta przepywu jest taka sama jak magazynu oznacza, e jest pobierany kompletny pakiet informacji. Jeli etykieta jest inna pobiera si jeden lub wicej fragmentw jednego lub wicej pakietw. Przepyw z magazynu interpretuje si zwykle jako odczyt, za przepyw do magazynu opisuje si czsto jako zapis, aktualizacj lub by moe usuwanie [1]. 26

Notacja diagramu przepywu danych jest prosta i intuicyjnie oczywista. Jest ona zupenie czytelna dla osb nie zajmujcych si zupenie informatyk.

o

Rys.2 Notacja diagramw DFD

Podstawowym celem techniki modelowania procesw jest ich graficzna reprezentacja umoliwiajca lepsze i gbsze zrozumienie natury i specyfiki tych procesw oraz odpowiednie ich zmodyfikowanie w zalenoci od stawianych systemowi wymaga. Jest to w pewnym sensie mapa" procesw ukazujca przepyw danych midzy procesami w systemie oraz midzy wiatem zewntrznym a systemem Przedstawienie caego systemu za pomoc jednego diagramu mogoby jednak by zbyt nieczytelne. Dlatego te diagram naley budowa poziomami. Procesy specyfikuje si zaczynajc od wyszczeglnienia podstawowych funkcji. Przykadem takich funkcji w prezentowanym systemie obsugi sprzeday s: obsuga zamwie i obsuga zwrotw. Nastpnie zstpujce dokonuje si uszczegowienia kadego procesu, rozbijajc go na podprocesy. Podprocesy obsugi zwrotw, to na przykad: sprawdzenie przyjmowanego produktu, sprawdzenie limitu zwrotw, wystawienie faktury zwrotu itd. Jeli procesu nie da si rozbi na podprocesy, to precyzyjnie i jednoznacznie opisujemy go uywajc rwna matematycznych, tabel lub specjalnego jzyka. W opisie takim naley poda reguy przeksztacania danych wejciowych w wyjciowe lub reguy generowania danych [6].

27

Diagram przepywu najwyszego poziomu skada si z jednego procesu reprezentujcego cay system. Ten specjalny DFD si diagramem kontekstowym. Diagram przepywu danych zerowego poziomu przedstawia gwne funkcje systemu. Nazywamy go diagramem oglnym systemu, diagramy niszych poziomw za to diagramy szczegowe. Nie wszystkie czci systemu musza by do tego samego poziomu. Niektre czci systemu mog by bardziej zoone ni inne. Jeli jednak jedne procesy s elementarne, a inne wymagaj wielu poziomw, to oglny model systemu jest prawdopodobnie le zorganizowany. Dla zapewnienia zgodnoci kadego diagramu z diagramem nadrzdnym stosuje si prosta regu: przepywy danych wchodzce i wychodzce z procesu na danym poziomie powinny odpowiada przepywom danych wchodzcych i wychodzcych z caego diagramu niszego poziomu opisujcego ten proces [1]. Postpowanie to nazywamy rwnowaeniem poziomw. DFD naley prezentowa uytkownikom od gry, czyli poczynajc od diagramu kontekstowego. W praktyce jednak podejcie zstpujce moe okaza si bardzo niewygodne. Dlatego te lepszym rozwizaniem jest zidentyfikowanie najpierw zdarze zewntrznych, na ktre system ma odpowiada i zbudowa wstpny DFD. Taki diagram moe by pniej rozwijany zarwno w gr jak i w d. Podejcie to nosi nazw podziau wedug procesw. Tworzenie diagramw przepywu danych tworzy si w tym podejciu w oparciu o model rodowiskowy, ktry omwiam w rozdziale trzecim (pkt. 1). W celu skonstruowania poprawnych i przejrzystych diagramw DFD naley pamita o kilku sprawach. Po pierwsze naley wybiera znaczce nazwy dla procesw, przepyww, magazynw i terminatorw. Procesy naley etykietowa w taki sposb, aby okreli funkcje, ktre realizuje system. Dobra nazwa dla procesu zwykle stanowi fraz czasownik-dopenienie (np. PRZYJMIJ ZAMWIENIE albo WYSTAW FAKTUR). Po drugie naley numerowa procesy. Uatwia to odwoywanie si do nich na diagramie, a poza tym liczby te stanowi podstaw schematu hierarchicznego numerowania przy modelowaniu wielopoziomowym4. Cho niektrzy uytkownicy Dla przykadu: proces 3, wystpujcy na Diagramie O, zwizany jest z diagramem niszego poziomu oznaczonym Diagram 3. Procesy wewntrz tego diagramu numeruje si nastpujco:4

28

mog uzna, e implikuje to kolejno ich wykonywania, naley pamita, e model DFD to sie komunikujcych si asynchronicznych procesw. Poniewa model ten ma by czytany i ogldany nie tylko przez autorw, ale take przez uytkownikw, musi by on zrozumiay, czytelny i przyjemny dla oka. Dlatego te naley przerysowywa diagramy DFD, jeli tylko jest to konieczne z przyczyn estetycznych. Poza tym naley unika nadmiernie zoonych diagramw. Najprostszym ograniczeniem jest to, e pojedynczy DFD powinien si swobodnie mieci na kartce papieru formatu A43. Kolejn wan rzecz jest sprawdzenie czy diagram jest logicznie wewntrznie niesprzeczny. W tym celu naley sprawdzi czy nie wystpuj tzw. nieskoczone studnie" lub inaczej czarne dziury" (s to procesy majce same wejcia i adnych wyj)oraz czy nie ma procesw spontanicznej generacji (s to procesy majce jedynie wyjcia bez adnych wej). Ponadto naley sprawdzi wystpujce magazyny tylko-do-zapisu albo tylko-do-odczytu oraz nieetykietowane przepywy i procesy. Niestety na podstawie DFD nie da si stwierdzi w jakiej kolejnoci przychodz pakiety danych i w jakiej kolejnoci s generowane przez pakiety wynikowe. Nie wiadomo rwnie czy jednemu zestawowi pakietw wejciowych odpowiada dokadnie jeden zestaw pakietw wyjciowych. Diagram przepywu danych nie odnosi si do takich zagadnie. Jeli aspekty te s dla danego systemu istotne, wwczas naley posuy si innymi narzdziami modelowania, na przykad diagramem przepywu sterowania. Natomiast, aby pokaza jaka informacja jest przedstawiana i w jaki sposb, potrzebne jest uycie tekstowych narzdzi modelowania, jakimi s: sownik danych i specyfikacja procesu. 2. SOWNIK DANYCH Sownik danych jest to uporzdkowany wykaz wszystkich elementw danych, ktry zawiera dokadne definicje wszystkich elementw kadego z diagramw. Jest on 3.1, 3.2, 3.3 itd. Jeli proces 3.1 jest zwizany z diagramem niszego poziomu, to diagram ten oznaczamy przez Diagram 3.1, a procesy na nim wystpujce "numerujemy poprze 3.1.1, 3.1.2, 3.1.3 itd. 5 W artykule George Millera zamieszczonym w 1956r. w Psychology Review wystpuje wskazwka, e nie powinno si znale nie wicej ni sze procesw.

29

niezbdnym uzupenieniem kadego z modeli systemu reprezentowanego przez omawiane diagramy. Zawiera on definicj wszystkich struktur danych (obiekty, atrybuty, powizania), procesw, jednostek komunikacji z uytkownikiem, danych dotyczcych zarzdzania przedsiwziciem (wersje, prawa dostpu, osoby odpowiedzialne). Sownik danych definiuje swoje elementy w nastpujcy sposb [6]: oprcz identyfikatora, unikatowego dla kadego z elementw i nazwy (etykiety), kady element jest zaopatrzony w krtkie wyjanienie znaczenia; kady zoony element ma dokadn definicj swoich elementw skadowych (np.atrybuty zoone, struktury rekordw, przepywy danych, magazyny danych, obiekty); magazyny danych, przepyw danych maja zawsze zdefiniowan zawarto; wszystkie dane elementarne maja zdefiniowane zakresy wartoci, jakie mog przyjmowa (cige lub dyskretne), jednostki miary; powizanie midzy obiektami jest dokadnie scharakteryzowane; wszystkie powizania midzy poszczeglnymi elementami kadego modelu s dokadnie opisane (np. kolejne rozwinicia diagramu DFD, rdo i znaczenie kadego przepywu). Oglnie kady element na rnych diagramach ma pewien, zapisany w sowniku danych, zestaw atrybutw, ktre go zgodnie z definicja kadego modelu charakteryzuj. A oto najczciej uywana notacja sownika danych. Symbol Znaczenie = jest zoony z (nastpujcych elementw) + i O opcjonalno (element moe by obecny lub nie) {} iteracja elementu (element moe si powtrzy) [] selekcja (jeden z podanych elementw moe zosta wybrany) i oddzielanie alternatywnych elementw w konstrukcji [ ] ** komentarz @ identyfikator - klucz obiektu ii (.