Projektowanie Aplikacji Komputerowych Analiza i projektowanie strukturalne Piotr Górczyński 2007
Cechy modeli Modele graficzne są czytelniejsze Powinny umożliwiać podział Powinny być tylko minimalnie nadmiarowe Powinny być przejrzyste Wskazówka Jeśli chcemy opisać coś co jest sekwencyjne i liniowe, lepiej opisać to tekstowo. Natomiast opis czegoś, co składa się z wielu czynności naraz, w różnych wymiarach, lepiej przedstawić graficznie. 2007
Narzędzia modelowania strukturalnego Diagram przepływu danych (Data Flow Diagram) – DFD Słownik danych Specyfikacja procesów Diagram związków encji (Entity Relationship Diagram) - ERD Diagram sieci przejść (State Transition Diagram) – STD Równoważenie modeli 2007
DFD Diagram DFD pokazuje procesy oraz dane, które między nimi przepływają Procesy (biznesowe) opisują działanie modelowanego biznesu. Stanowią one punkt wyjścia dla zidentyfikowania procesów w diagramie DFD. 2007
Przykładowe DFD 2007
Składniki DFD Element Opis Symbol Proces Proces przekształca pewne wejściowe na wyjściowe. Proces ma: numer nazwę (czasownik) specyfikację jeden lub więcej przepływ wejściowy jeden lub więcej przepływ wyjściowy Przepływ Przepływ ilustruje dane przenoszone między elementami modelu. Przepływ ma: nazwę (rzeczownik) opis danych łączy się z co najmniej jednym elementem z każdej strony Magazyn Magazyn reprezentuje zbiór danych. Magazyn ma: zazwyczaj jeden lub więcej przepływ wejściowy zazwyczaj jeden lub więcej przepływ wyjściowy Terminator Terminator reprezentuje interfejs zewnętrzny (obiekty, systemy, osoby). Terminator ma: 2007
Dekompozycja i równoważenie Dekompozycja polega na dzieleniu modelu na coraz mniejsze części, o coraz większym stopniu szczegółowości. Równoważenie zapewnia, że wszystkie wpływy i wypływy danego procesu będą zachowane na odpowiadającym mu diagramie niższego poziomu. 2007
Poziomy dekompozycji Diagram kontekstowy pokazuje Poziom 0 pokazuje kontekst, w którym są wszystkie procesy wszystkie procesy jako jeden proces byty, które wymieniają dane z procesami Poziom 0 pokazuje główne procesy, które pokrywają cały biznes główne magazyny przepływ informacji Poziom 1, 2, 3, ... pokazuje procesy wchodzące w skład każdego procesu wyższego poziomu (ale nie muszą opisywać każdego) magazyny 2007
Poziom 0 Kontekstowy Poziom 1 2007
Słownik danych opisuje dane w magazynach opisuje dane w przepływach dekomponuje pakiety danych na dane elementarne określa dopuszczalne wartości dla danych elementarnych opisuje związki między danymi 2007
Notacja słownika Symbol Opis = 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 2007
Przykłady notacji 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|’|-| ] waga=*waga pacjenta w chwili przyjęcia do szpitala; jednostki: kilogramy; zakres: 1-200* zamówienie=nazwa_klienta+adres_dostawy+{pozycja_zamówienia} 2007
Specyfikacja procesów Specyfikacja procesu opisuje co należy zrobić w celu przekształcenia wejścia na wyjście. Wskazówki Specyfikacja procesu musi być opisana w taki sposób, żeby była zrozumiała zarówno dla użytkownika jak i dla programisty. Specyfikację wykonujemy tylko dla procesów elementarnych, czyli tych, które są najbardziej szczegółowe, znajdują się na najniższym poziomie diagramu DFD i nie będą już dekomponowane. 2007
Metody opisu procesów Język opisowy Język strukturalny Wziąć wszystkie zamówienia z dzisiejsza datą faktury. Zsumować z nich kwoty. Wyświetlić w księgowości. Język strukturalny suma_dzienna=0 DO WHILE istnieją zamówienia w ZAMÓWIENIACH z datą faktury=dzisiaj suma_dzienna= suma_dzienna+kwota z zamówienia END DO WYŚWIETL w księgowości suma_dzienna 2007
ERD Diagram związków encji pokazuje układ danych przechowywanych w systemie. Wskazówki ERD jest punktem wyjścia dla projektu fizycznej bazy danych. 2007
Składniki ERD Element Opis Symbol Encja Encja reprezentuje zbiór obiektów o cechach: wszystkie mają te same atrybuty każdy obiekt można jednoznacznie zidentyfikować Encje stają się tabelami w modelu fizycznym, ale czasami mogą wymagać normalizacji. Relacja Relacja reprezentuje związek między encjami. Relacja musi być przechowywana przez system – nie jest wynikiem obliczeń. 2007
Przykład ERD (wg Chena) 2007
Logiczny model bazy danych 2007
Słownik danych dla ERD KLIENT=@NIP+NAZWA+ADRES+KOD ZAMÓWIENIE=@NR_ZAMÓWIENIA+DATA POZYCJA_ZAMÓWIENIA=@ID+ILOŚĆ+KSIĄŻKA KSIĄŻKA=@ID+AUTOR+TYTUŁ+WYDAWNICTWO+ROK 2007
STD Diagram sieci przejść pokazuje wszystkie możliwe przejścia między stanami. Na diagramie mogą być pokazane także warunki konieczne do tego, aby przejście nastąpiło. Wskazówki STD jest kluczowym diagramem dla systemów czasu rzeczywistego czyli takich, które muszą reagować na zewnętrzne sygnały w określonym czasie. Przykładami są systemy sterowania procesami, sterowania windą, bankomaty, itp. 2007
Składniki STD Element Opis Symbol Stan Zbiór okoliczności w danej chwili, sposób lub forma istnienia. Przejście Przejście przeprowadza system z jednego stanu w inny, pod pewnymi warunkami i wykonując pewne akcje. 2007
Przykładowy STD 2007
ERD DFD STD Równoważenie modeli Wszystkie modele muszą do siebie pasować! ERD DFD STD 2007