Projektowanie i analiza systemów informacyjnych Michał Kuciapski m.kuciapski@univ.gda.pl
Metody analizy sytuacyjnej Infoplan Metody analizy sytuacyjnej
Infoplan Strategiczny plan informatyzacji organizacji Rola odnośnie elementów informacyjnych analogiczna do roli biznes planu w stosunku do aspektów ekonomicznych firmy Ma na celu skuteczne wspieranie przez systemy informatyczne procesów zachodzących w organizacji
Infoplan – analizowane zagadnienia Wyrażenie potrzeb celów i strategii gospodarczej firmy w kategoriach wspomagających systemów informacyjnych Ocena aktualnie użytkowanego w firmie systemu informatycznego Sposobu włączenia nowych innowacyjnych rozwiązań informatycznych
Metody analizy sytuacyjnej Sesja MetaPlanu Sesja SWOT Analiza Istotnych Czynników Powodzenia Model spójności dynamiki zmian Broekstry BSP (Business System Planning)
Sesja MetaPlanu – ang. MetaPlan Session Twórca – Schnelle Celem sesji jest wskazanie systemów informatycznych pozwalających osiągnąć cele i uniknąć zagrożenia organizacji Opiera się na warsztatach z udziałem moderatora W skład uczestników warsztatów wchodzą: przedstawiciele kierownictwa, eksperci, przyszli użytkownicy Grupa dzielona na kilka zespołów
Sesja MetaPlanu – procedura Przedstawienie problemu i krótka dyskusja Uczestnicy zespołu samodzielnie opracowują swoje opinie i pomysły rozwiązań Przy udziale moderatora indywidualne propozycje są grupowane, porządkowane oraz nadawane są im priorytety Stworzenie macierzy rozwiązań na podstawie wyników wszystkich zespołów
Sesja MetaPlanu – analizowane problemy Cele firmy Zagrożenia Działania dla osiągnięcia celów Działania dla uniknięcia zagrożeń Specyfikacja systemów informatycznych wspomagających osiąganie celów i unikanie zagrożeń
Analiza systemów informacyjnych
ASI – etapy Diagram Hierarchii Funkcji (DHF) Diagramy Przepływu Danych (DPD): Kontekstowe Zerowe (systemowe) Szczegółowe (procesów elementarnych) Diagramy Związków Encji Słownik danych
Analiza systemów informacyjnych Diagram Hierarchii Funkcji
DHF – (FHD - Function Hierarchy Diagram) Służy do zdefiniowania wszystkich funkcji opisujących SI Opracowanie szczegółowego modelu potrzeb informacyjnych użytkownika Pola formularza: nazwa funkcji opis dane wejściowe źródło danych wejściowych wynik - rezultat wykonania funkcji warunek wstępny - co musi być wcześniej zrealizowane warunek końcowy - do czego wykorzystuje się efekty realizacji tej funkcji powód - cel realizacji funkcji uwagi
DHF – przykład – podsystem fakturowanie Fakturowanie zakupów Fakturowanie zakupów inwestycyjnych Fakturowanie zakupów materiałowych Fakturowanie zakupów prod. podst. Fakturowanie sprzedaży Fakturowanie sprzedaży indywidualnej Fakturowanie sprzedaży instytucjonalnej
DHF – przykład – podsystem fakturowanie Fakturowanie zakupów inwestycyjnych Fakturowanie zakupów Wprowadzenie faktury Modyfikacja faktury Generowanie faktury Anulowanie faktury Reklamacja faktury Fakturowanie korygujące
Analiza systemów informacyjnych Diagramy Przepływu Danych
DPD – (DFD - Data Flow Diagram) Model procesów jest następstwem określenia wymagań użytkownika i funkcji systemu. Obrazuje system jak zestaw procesów funkcyjnych, powiązanych ze sobą składnicami danych Ma strukturę hierarchiczną, tworzoną metoda zstępującą Nie zawiera specyfikacji procesów ani modelu i opisu danych
DPD – typy W zależności od poziomu szczegółowości: Kontekstowe - pokazuje powiązania systemu z otoczeniem Zerowy - przedstawia ogólną strukturę systemu, obrazuje główne procesy systemu, obiekty zewn., magazyny danych i przepływy Szczegółowe - dokładny obraz procesów i podsystemów - dalsze uszczegółowienie
DPD – elementy Obiekty zewnętrzne (terminatory) - przedstawiają zewnętrzne obiekty, z którymi komunikuje się system. Źródła powstania i miejsca przeznaczenia informacji. Np.: KLIENT, DOSTAWCA, BANK. Składnice danych (magazyny) - reprezentują kolekcje danych między procesami (dostępne są tylko z procesów), które system powinien przechowywać. Procesy (funkcje) - definiują sposób wykonywania jednej lub więcej funkcji (program, procedura, algorytm, operacja ręczna czy zautomatyzowana (całkowicie lub częściowo) wykonywane na danych, które powinien realizować system. Funkcje przekształcają wejścia na wyjścia Przepływy danych (strumienie) - przedstawiają obieg danych w systemie; powiązania pomiędzy procesami a innymi elementami DFD. Reprezentują informację wejściową lub wyjściową
DPD – notacja Proces Przepływ Przesłanie faktury Składnica Terminator Fakturowanie zakupów inwestycyjnych Przesłanie faktury Składnica Terminator Klienci Faktury
DPD – zasady notacji – logiki analizy niedopuszczalne są bezpośrednie przepływy danych pomiędzy składnicami lub pomiędzy składnicami a terminatorami i odwrotnie - strumienie winny być w tym czasie przetworzone przez proces przepływy wejściowe i wynikowe (do i ze składnic) nie noszą nazw - nazwa składnicy identyfikuje jednoznacznie
DPD – zasady projektowania Uporządkowanie diagramów w hierarchię: kontekstowe, zerowe, szczegółowe. Uchwycenie głównych procesów i uszczegółowienie jest bardziej odpowiednie niż uogólnianie procesów elementarnych. Przypisanie jednoznacznych nazw dla procesów, obiektów i magazynów. Przestrzeganie, żeby żadne dane niewykorzystywane przez proces nie wpływały do niego. Przestrzeganie, aby każdy proces miał wejście i wyjście. Zapewnienie, aby każdy przepływ miał początek i kończył się na procesie. Przestrzeganie, aby wszystkie dane wprowadzane lub wyprowadzane z obiektów zewn. podlegały przetwarzaniu w procesach i nie dopuszczać przepływów między składnicami a obiektami zewnętrznymi Konsekwentne używanie symboli. Oznaczenie w odpowiedni sposób powtarzających się elementów. Unikanie nadmiernie złożonych DFD (max 9 procesów na jednym DFD). Weryfikowanie diagramów. Opisanie każdego elementu w słowniku danych (data dictionary).
DPD – Diagram kontekstowy zakres i granice systemu źródła i odbiorcy informacji główne wejścia i wyjścia systemu
DPD – Diagram kontekstowy - etapy modelowania zdefiniowanie systemu jako pojedynczego, podstawowego procesu; zidentyfikowanie obiektów zewnętrznych, które dostarczają informacje do sytemu bądź korzystają z danych systemowych; zaznaczenie kierunku przepływu danych pomiędzy systemem a obiektami zewnętrznymi.
DPD – Diagram kontekstowy - przykład Zamówienie sprzedaży Dostawcy Faktura zakupowa Klient Błędne faktury Faktura sprzedaży Nie zapłacone faktury klienta Administracja finansami Ponaglenie Nie zapłacone faktury dostawcy Płatność faktury klienta Windykacja Klienci
DPD – Diagram kontekstowy - księgarnia Zamówienie zakupu Klient Zamówienie sprzedaży Wydawca List przewozowy Faktura klienta Administracja finansami Ponaglenie Dane o książkach Dane o wydawcy Wydawca Klienci Płatność faktury klienta Faktura wydawcy Płatność faktury wydawcy Wydawca Nie zapłacone faktury klienta Nie zapłacone faktury wydawcy Windykacja
DPD – Diagram zerowy Zerowy - przedstawia ogólną strukturę systemu, obrazuje główne procesy systemu, obiekty zewnętrzne, magazyny danych i przepływy Prezentuje najwyższy poziom abstrakcji systemu Dekomponowany na diagramy szczegółowe
DPD – Diagram zerowy - etapy modelowania Identyfikacja: głównych procesów systemu (dekompozycja procesu "kontekstowego") obiektów zewnętrznych (tych z kontekstowego) wewnętrznych magazynów danych przepływów pomiędzy procesami a magazynami i obiektami zewnętrznymi
DPD – wskazówki poprawności tworzenia Należy wybierać znaczące nazwy dla procesów, składnic danych i terminatorów – czasownik i dopełnienie, np.: obsługa płatności klienta, przygotowanie bilansu Numerowanie procesów Unikać nadmiernie złożonych DPD – łącznie do 9 elementów: procesów, składnic danych terminatorów
DPD – zasada dekompozycji B System A B X 2 1
DPD – zasada dekompozycji Klienci Błędne zamówienia Magazyn Zamówienia Książki Zamówienia Pozycje zamówień 1. Przyjmij zamówienie Szczegóły wysyłki 2. Wyślij książki Informacje o płatności Nazwisko klienta, adres klienta Faktury Klienci Książki Nazwisko klienta, adres klienta Nazwisko klienta, szczegóły faktury 3. Pobierz należność Faktury, wyciągi Klienci Płatności, zapytania
DPD – Diagramy szczegółowe Dokładny obraz procesów i podsystemów - dalsze uszczegółowienie. W trakcie dekompozycji diagramów obowiązuje zasada, iż tylko przepływy danych, które pojawiły się na poziomie zerowym mogą wystąpić na niższych poziomach hierarchii.
DPD – zasada dekompozycji B System A B X 2 1 A 1.1 1.2 X 1.3
DPD – Diagramy szczegółowe - etapy modelowania Identyfikacja: procesu głównego (który będzie uszczegółowiany) procesów składających się na proces główny magazynów danych przepływów pomiędzy procesami a magazynami i obiektami zewn.
Analiza systemów informacyjnych Diagram Związków Encji
ERD – ang. Entity Relationship Management Jest modelem sieciowym opisującym na wysokim poziomie abstrakcji układ danych przechowywanych w systemie Analogicznie do DPD opiera się na notacji graficznej Stanowi uzupełnienie DPD uwypuklając związki między magazynami danych na DPD Umożliwia szybkie przejście do projektowania baz danych
ERD – elementy notacji Liczebność związków Klient Obiekt – reprezentuje zbiór obiektów w świecie rzeczywistym, np.: książka, harmonogram, i może być opisany jednym lub większą ilością danych, np.: tytuł, autor, rok wydania. Kupuje Związek – jest to zbiór powiązań pomiędzy obiektami. Lekarz Leczy Płaci Pacjent Liczebność związków Wydawca Zamówienie zakupu Faktura sprzedaży Ponaglenie
ERD – elementy notacji c. d. Wskaźnik asocjowany – reprezentuje element funkcjonujący zarówno jako obiekt, jak i związek. Klient Wskaźnik nadtypu/podtypu – ukazują relację pomiędzy obiektem a jego specjalizacjami. Klient Zakup Towar Pracownik godzinowy etatowy
Analiza systemów informacyjnych Słownik danych
Słownik danych Jest uporządkowanym zbiorem elementów danych mających związek z systemem Ułatwia zrozumienie wszystkich wejść, wyjść, składników magazynów i obliczeń pośrednich
Słownik danych - notacja Użycie symboli Symbol Opis = składa się + i () opcjonalnie (może wystąpić lub nie) {} iteracja [] wybór jednej z kilku możliwości ** komentarz @ identyfikator (pole klucza) magazynu | rozdziela alternatywne możliwości w konstrukcji [] Notacja tabelaryczna
Słownik danych - przykład Pełne-nazwisko = tytuł + imię + (drugie-imię) + nazwisko Płatność = [karta|przelew|gotówka|karta + gotówka] Zamówienie = nazwa-klienta + adres-dostawy + 1{pozycja}10 Średnia-ocen = *średnia ocen za ostatni semestr* *jednostki: liczba rzeczywista; zakres: 2-5*
Słownik danych - przykład
Analiza systemów informacyjnych Specyfikacja procesów
Specyfikacja procesów Jest uporządkowanym opisem procesów elementarnych (procesów na najniższym poziomie DPD) Definiuje co należy zrobić, aby przekształcić wejścia w wyjścia
Specyfikacja procesów - notacje Strukturalny język polski Warunki początkowe/końcowe Tablice decyzyjne Grafy i wykresy Diagramy Nassi - Shneidermana
Specyfikacja procesów - notacje Strukturalny język polski Warunki początkowe/końcowe Tablice decyzyjne Grafy i wykresy Diagramy Nassi - Shneidermana Yourdon E., Współczesna analiza strukturalna, Warszawa 1997, str. 179-200
Specyfikacja procesów - przykład 1 2 3 4 Średnia > 4,5 N T Rok < 3 Kierunek = IS Stypendium 200 zł X Stypendium 350 zł Brak stypendium Tablica decyzyjna