MODELOWANIE HIERARCHII I ZALEŻNOŚCI FUNKCJI

Slides:



Advertisements
Podobne prezentacje
Modelowanie przypadków użycia
Advertisements

Warszawa 2012 Tytuł projektu: Klient: Nazwa kategorii: Numer kategorii:
Modelowanie procesów biznesowych
Referat 3. Planowanie zadań i metody ich obrazowania
ISOiWUT Internetowy System Oferowania i Wyszukiwania Usług Transportowych.
JAKOŚĆ PRODUKTU - USŁUGI
Projektowanie Aplikacji Komputerowych
Projekt modułu Gra strategiczna „Strusia jama” Wyrzutnie
Propozycja metodyki nauczania inżynierii oprogramowania
Mapowanie procesów pracy i organizacja stanowisk
1 Kryteria wyboru systemów: Przystępując do procesu wdrażania zintegrowanego systemu zarządzania, należy odpowiedzieć na następujące pytania związane z.
Diagram czynności (Activity Diagrams)
Zadanie 1.
Projektowanie i programowanie obiektowe II - Wykład IV
Projektowanie i programowanie obiektowe II - Wykład II
Wstęp do interpretacji algorytmów
Praca Inżynierska „Analiza i projekt aplikacji informatycznej do wspomagania wybranych zadań ośrodków sportowych” Dyplomant: Marcin Iwanicki Promotor:
Projektowanie - wprowadzenie
Budowa algorytmów Algorytm: skończony ciąg operacji wraz z ściśle sprecyzowanym porządkowaniem ich wykonywania, które po realizacji dają rozwiązanie dowolnego.
Inżynieria Oprogramowania
POJĘCIE ALGORYTMU Pojęcie algorytmu Etapy rozwiązywania zadań
LabVIEW Technologie informacyjne – laboratorium Irmina Kwiatkowska
Prezentacja funkcjonalności dziennika e-klasa
Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych
Instrukcja USOS Rejestracja na zajęcia obieralne wersja by Marek Opacki.
Prezentacja funkcjonalności dziennika e-klasa
STRUKTURA FUNKCJONALNA
System rejestracji zawodników Polski Związek Judo 2006.
Algorytmy.
Modelowanie obiektowe Diagramy czynności
ZWIĄZKI MIĘDZY KLASAMI KLASY ABSTRAKCYJNE OGRANICZENIA INTERFEJSY SZABLONY safa Michał Telus.
Modelowanie obiektowe Diagramy UML – diagram przypadków użycia
Planowanie przepływów materiałów
Tytuł projektu: Klient: Nazwa kategorii: Numer kategorii:
Modelowanie obiektowe Diagramy klas
Zadanie 1.
Szkolenie dotyczące naboru elektronicznego do szkół ponadgimnazjalnych dla uczniów kl. III prowadzone przez administratora naboru Pawła Adamczyka.
Projektowanie relacyjnych baz danych – postacie normalne
Warszawa 2009 Tytuł projektu: Klient: Nazwa kategorii: Numer kategorii:
ALGORYTMY Co to jest algorytm ? Cechy algorytmu Budowa algorytmów
Moduł III Definiowanie i planowanie zadań typu P 1.
Temat 3: Integralność danych. Integralność danych, określana również mianem spójności danych, jest to funkcja SZBD, która gwarantuje, że dane nie zostaną.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Model obiektowy bazy danych
PROCESY W SYSTEMACH SYSTEMY I PROCESY.
Smart Portal – podstawy użytkowania. W celu uruchomienia aplikacji Smart Portal, należy: -uruchomić nowe okno przeglądarki internetowej, -wpisać w pole.
Diagram aktywności (czynności)
Zarządzanie zagrożeniami
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Przykłady analiza i projektowanie
Modelowanie obiektowe - system zarządzania projektami.
Projektowanie relacyjnych baz danych – diagramy związków encji
Diagram czynności Diagram czynności (activity diagram) służy do modelowania dynamicznych aspektów systemu. Diagram czynności przedstawia sekwencyjne lub.
Ogólne zasady prezentacji Przed stworzeniem prezentacji prosimy o szczegółowe zapoznanie się z regulaminem konkursu. Prosimy o używanie czcionki o nazwie.
ZINTEGROWANE SYSTEMY ZARZĄDZANIA
Projekt modułu Nazwa całego projektu Nazwa modułu Imię i Nazwisko Inżynieria Oprogramowania II dzień, godzina rok akademicki W szablonie na niebiesko zamieszczone.
Diagramy przepływu danych
Eksploatacja zasobów informatycznych przedsiębiorstwa.
Projektowanie postaci formularza:
Logical Framework Approach Metoda Macierzy Logicznej
Wstęp do interpretacji algorytmów
1 © copyright by Piotr Bigosiński DOKUMENTACJA SYSTEMU HACCP. USTANOWIENIE, PROWADZENIE I UTRZYMANIE DOKUMENTACJI. Piotr Bigosiński 1 czerwiec 2004 r.

Inżynieria systemów informacyjnych
T. 18. E Proces DGA - Działania (operatorka).
Projekt modułu BANK INTERNETOWY Moduł funkcji banku
[Nazwa projektu] Analiza zamknięcia
Szkolenie dotyczące sprzedaży
wspomaganej systemem komputerowym NABÓR 2019
Zapis prezentacji:

MODELOWANIE HIERARCHII I ZALEŻNOŚCI FUNKCJI dr inż. Jacek Florek Instytut Informatyki Katedra Modelowania i Projektowania Systemów Informatycznych e-mail: jflorek@ap.siedlce.pl Konsultacje: wtorek i środa w dziekanacie w godzinach przyjęć

Zagadnienia cele modelowania, funkcje elementarne diagram hierarchii funkcji – tworzenie i przykłady zależności informacyjne, prawne i polityczne diagram zależności funkcji – tworzenie i przykłady logika i formularze opisu wymagań dla funkcji

Cele modelowania Cele modelowania funkcji: Strategia informatyzacji organizacji Specyfikacja wymagań użytkownika Definiowanie funkcji systemu Definiowanie modelu danych Definiowanie modelu procesów Weryfikacja modeli procesów i danych Cele informatyzacji Nowe wymagania Model danych Model procesów Modyfikacja Wymagania użytkownika Model funkcji systemu Model logiczny i fizyczny systemu STRATEGIA SPECYFIKACJA WYMAGAŃ MODELOWANIE Cele modelowania funkcji: opracowanie szczegółowego modelu potrzeb informacyjnych użytkownika. opracowanie takiego modelu, który byłby niezależny od metod realizacji SI (od oprogramowania, syst. oper. itp.).

Cele modelowania W odniesieniu do organizacji (przedsiębiorstwa) modelowanie funkcji służy opisaniu „czym zajmuje się przedsiębiorstwo”. W odniesieniu do systemu modelowanie funkcji służy opisaniu „co (jakie funkcje) realizuje system”. Tworzenie modelu funkcji ma na celu opis potrzeb funkcjonalnych przedsiębiorstwa jako podstawa modernizacji istniejących w przedsiębiorstwie systemów lub tworzenia nowych. Dzięki temu użytkownicy, analitycy i inżynierowie systemowi mogą uzgodnić wymagania. Modelowanie funkcji obejmuje określenie: jakie działania wykonuje przedsiębiorstwo (funkcje), co powoduje rozpoczęcie tych działań (zdarzenie), na jakie znaczące rzeczy (encje) lub własności tych rzeczy (atrybuty) funkcje mają wpływ. Metody modelowania funkcji : hierarchia funkcji, zależność funkcji, logika funkcji, czas rzeczywisty. Kiedy stosujemy określoną metodę modelowania funkcji?

Cele modelowania Kiedy stosujemy określoną metodę modelowania funkcji? jak wymagania przedsiębiorstwa mogą być wspierane? co robi? co powinno robić? Wymagania dla przedsiębiorstwa jak zrealizować system? Model przedsię-biorstwa Model systemu Model programu/ procedury Metody modelowania Działa jako zakres dla wszystkich funkcji Hierarchia funkcji podstawowa podstawowa podstawowa Zależność funkcji podstawowa Funkcje współzależne opcjonalna opcjonalna Czas rzeczywisty - podstawowa podstawowa Sterowanie zdarzeniami Logika funkcji Szczegóły dla każdej z powyższych metod podstawowa podstawowa opcjonalna Dalej będziemy omawiać kolejne metody (koncentrując się na hierarchii funkcji, zależności funkcji, logice funkcji – czas rzeczywisty omówimy w dalszej kolejności.

Diagram hierarchii funkcji Hierarchia funkcji służy do zdefiniowania wszystkich funkcji opisujących system informatyczny lub przedsiębiorstwo. Przypomnijmy cele modelowania funkcji: opracowanie szczegółowego modelu potrzeb informacyjnych użytkownika. opracowanie takiego modelu, który byłby niezależny od metod realizacji SI (od oprogramowania, syst. oper. itp.). Cele te realizuje Diagram Hierarchii Funkcji (FHD - Function Hierarchy Diagram). Polega na opisie każdej funkcji za pomocą prostego wyrażenia, przy czym tworzone jest drzewo (jak drzewo genealogiczne), w którym funkcja-rodzic jest opisywana szczegółowo przez funkcje-dzieci.

Diagram hierarchii funkcji Zasady tworzenia FHD Każda funkcja na diagramie określa, co system ma robić, a nie jak (opis deklaratywny). Funkcje tworzą hierarchię - pierwsza funkcja ogólna opisuje cały system, dzieli się ją następnie na funkcje bardziej szczegółowe, itd.; dekompozycja aż do funkcji elementarnych. Każda funkcja nadrzędna ma całkowicie opisywać funkcje szczegółowe i vice versa: wszystkie szczegółowe muszą opisywać funkcję nadrzędną. Tworzenie hierarchii: od ogółu do szczegółu - z góry na dół (top-down) Powinna być przeprowadzona weryfikacja diagramu: od dołu (bottom- up) Każda funkcja powinna być opisana w języku naturalnym na tzw. formularzu opisu wymagań (nazwa funkcji, opis, źródło danych we/we, wynik działania funkcji, co wcześniej i co potem, uwagi,...) – zobaczymy to przy logice funkcji UWAGA: W FHD nie ma pokazanych zależności!

Diagram hierarchii funkcji Zasady graficznej notacji FHD funkcja - prostokąt (o ostrych lub zaokrąglonych rogach), proces - prostokąt o ściętych rogach, każda funkcja jest identyfikowana nazwą (a nie skrótem); nazwa to czasownik lub rzeczownik (odczasownikowy) każda funkcja może mieć swoją etykietę (w lewym górnym rogu) FHD powinien mieścić się na jednej kartce (jeśli nie to stawiamy kropeczki - oznaczają one rozwinięcie funkcji w innym miejscu, na nowej stronie) Weryfikacja Należy doprowadzić, aby FHD był: dokładny i spójny kompletny (obejmował całość zagadnień) łatwy w modyfikacji zwięzły i jednoznaczny w nazewnictwie czytelny

Diagram hierarchii funkcji Wszystkie hierarchie mają strukturę: Funkcja główna (na samej górze) Nic poza tymi funkcjami nie jest już potrzebne do realizacji funkcji nadrzędnej Wszystkie te funkcje i tylko one są niezbędne do realizacji funkcji nadrzędnej Hierarchia może być dalej dekomponowana aż do osiągnięcia żądanego poziomu szczegółowości

Diagram hierarchii funkcji Diagram hierarchii funkcji może posiadać następujące typy funkcji: główna (podstawowa) - na szczycie hierarchii, nie posiada nadrzędnej pełna - ma funkcję nadrzędną i przynajmniej jedną podrzędną atomowa - dalej nie dekomponowana

Diagram hierarchii funkcji Przykład: „naprawa pojazdu” Naprawa pojazdu Lokalizacja pojazdu Badanie pojazdu Diagnozowanie usterki Lokalizacja części Zlecenie naprawy innej firmie Naprawa pojazdu Naprawa pojazdu własnymi zasobami Rejestracja kosztów Przygotowanie pojazdu do oddania

Diagram hierarchii funkcji Przykład: obsługa bankomatu Wpisanie PIN-u Korekta PIN-u Zatwierdzenie PIN-u IK.3.1 IK.3.2 IK.3.3 Anulowanie PIN-u Wpisanie nowego PIN-u IK.3.2.1 IK.3.2.2 Włożenie karty Wybór języka Wprowadzenie PIN-u Sprawdzenie popraw. PIN-u IK.1 IK.2 IK.3 IK.4 Obsługa bankomatu Identyfikacja klienta Wybór usługi Realizacja usługi IK WU RU Prośba o wpr. poprawnego PIN-u Sprawdz. dop. liczby pomyłek Zablokowanie karty IK.4.2.1 IK.4.2.2 IK.4.2.3 Zaakceptowanie PIN-u Odrzucenie PIN-u IK.4.1 IK.4.2 Wybranie poprawnej kwoty Wprowadzenie własnej kwoty RU.2.1.1 RU.2.1.2 Wpisanie kwoty Korekta kwoty RU.2.1.2.2 Zatwierdzenie kwoty RU.2.1.2.3 RU.2.1.2.1 Anulowanie wpisanej kwoty Wpisanie nowej kwoty RU.2.1.2.2.2 RU.2.1.2.2.1 Wpisanie PIN-u Korekta PIN-u Zatwierdzenie PIN-u RU.1.1 RU.1.2 RU.1.3 Sprawdzanie stanu konta Wypłata gotówki RU.1 RU.2 Określenie kwoty Sprawdzenie limitu RU.2.1 RU.2.2 Zwrot karty RU.2.3 Wypłacenie pieniędzy RU.2.4 Wydruk potwierdzenia RU.2.5 Zaakceptowanie kwoty Prośba o podanie innej kwoty RU.2.2.1 RU.2.2.2

Diagram hierarchii funkcji Przykład: Rezerwacja miejsc w samolocie Założenia: Podróżny telefonuje do biura rezerwacji linii lotniczej AIF w celu zarezerwowania miejsca. Pracownik biura prosi o szczegóły trasy. Dowiaduje się, że podróżny chce polecieć z Warszawy do Honolulu tak aby zdążyć na spotkanie w poniedziałek 12 czerwca o godz. 10.30. Pracownik wprowadza zapytanie do komputera i znajduje samolot lot AIF 135 przylatujący do Honolulu w niedzielę, 11 czerwca o godz. 20.30. lot AIF 250 przylatujący do Honolulu w niedzielę, 11 czerwca o godz. 21.00 z międzylądowaniem w Los Angeles. Podróżnemu odpowiada lot AIF 135. Pracownik biura rezerwacji sprawdza czy są wolne miejsca. AIF135 War 11.06. 08.00 Hon 11.06 20.30. AIF250 War11.06. 07.00 Hon 11.06 21.00 m.ląd.

Diagram hierarchii funkcji Przykład: Rezerwacja miejsc w samolocie - rozwiązanie REZERWACJA Rezerwowanie miejsc na loty żądane lub alternatywne,najlepiej pasujące do trasy podróżnego R1 Zebranie szczegółów dotyczących podróży (kierunek, numer lotu, czas odlotu i przylotu) R2 Ustalenie lotów najlepiej spełniających wymagania pasażera R3 Sprawdzenie dostępności miejsc na wybranych lotach

Diagram hierarchii funkcji Przykład: Rezerwacja miejsc w samolocie (uszczegółowienie 1) Założenia 2: Na wybrany lot (AIF 135) w żądanej klasie „busines” miejsc nie ma. Są miejsca na lot z międzylądowaniem (AIF 250). Podróżny woli pierwszą możliwość. Umieszczony zostaje na liście oczekujących (rezerwowej) na lot AIF 135, natomiast stała rezerwacja zostaje wykonana na lot AIF 250. Pracownik rezerwujący wiąże ze sobą oba zgłoszenia, aby móc przydzielić rezerwację na lot AIF 250 komuś innemu, jeśli zwolni się miejsce na liście oczekujących lotu AIF 135. Pracownik biura rezerwacji zbiera również szczegółowe wymagania podróżnego (rodzaj miejsca - dla palących/dla niepalących, rodzaj posiłku - wegetariański/mięsny) i rezerwacja jest zakończona. Bilety zostaną wysłane na 2 tygodnie przed odlotem.

Diagram hierarchii funkcji Przykład: Rezerwacja miejsc w samolocie – rozwiązanie (uszczegółowienie1) REZERWACJA Rezerwowanie miejsc na loty żądane lub alternatywne,najlepiej pasujące do trasy podróżnego R1 Zebranie szczegółów dotyczących podróży (kierunek, numer lotu, czas odlotu i przylotu) R2 Ustalenie lotów najlepiej spełniających wymagania pasażera R3 Sprawdzenie dostępności miejsc na wybranych lotach R4 Rezerwacja miejsc (wstępna-umieszczenie na liście oczekujących i potwierdzenie), w razie konieczności zapewnienia alternatywnej trasy, powiązanie rezerwacji na listach oczekujących z rezerwacjami wstępnymi i potwierdzonymi R5 Przekazanie informacji i potwierdzenie szczegółów rezerwacji z podróżnym

Diagram hierarchii funkcji Przykład: Rezerwacja miejsc w samolocie – rozwiązanie (uszczegółowienieR2) R2 Ustalenie lotów najlepiej spełniających wymagania pasażera R2.1 Określenie możliwości lotów bezpośrednich w dopuszczalnych granicach czasowych R2.2 Określenie możliwości alternatywnych połączeń (np. uwzględnienie międzylądowania) R2.3 Wybranie alternatywnych miejsc startu lub lądowania w pobliżu zgłoszonych lotnisk R2.4 Wybranie najlepszej trasy i określenie informacji o locie (tj. numery lotów, czasy, szczegóły międzylądowania, itp.)

Diagram hierarchii funkcji Przykład: Rezerwacja miejsc w samolocie – rozwiązanie (uszczegółowienie1) REZERWACJA Rezerwowanie miejsc na loty żądane lub alternatywne,najlepiej pasujące do trasy podróżnego R1 Zebranie szczegółów dotyczących podróży (kierunek, numer lotu, czas odlotu i przylotu) R2 Ustalenie lotów najlepiej spełniających wymagania pasażera R2.1 Określenie możliwości lotów bezpośrednich w dopuszczalnych granicach czasowych R2.2 Określenie możliwości alternatywnych połączeń (np. uwzględnienie międzylądowania) R2.3 Wybranie alternatywnych miejsc startu lub lądowania w pobliżu zgłoszonych lotnisk R2.4 Wybranie najlepszej trasy i określenie informacji o locie (tj. numery lotów, czasy, szczegóły międzylądowania, itp.) R3 Sprawdzenie dostępności miejsc na wybranych lotach R4 Rezerwacja miejsc (wstępna-umieszczenie na liście oczekujących i potwierdzenie), w razie konieczności zapewnienia alternatywnej trasy, powiązanie rezerwacji na listach oczekujących z rezerwacjami wstępnymi i potwierdzonymi R5 Przekazanie informacji i potwierdzenie szczegółów rezerwacji z podróżnym

Diagram hierarchii funkcji Przykład: Rezerwacja miejsc w samolocie (uszczegółowienie 2) Założenia 3: Pasażer przybywa do stanowiska odpraw, gdzie realizuje się przydział miejsca. Posiada bilet potwierdzony, więc firma lotnicza wie, że liczba miejsc w samolocie będzie wystarczająca i należy przydzielić pasażerowi określone, numerowane miejsce. Pracownik stanowiska sprawdza zajętość miejsc i widzi, że pasażer zgłosił już swoje preferencje w wyborze miejsca (zewnętrzne dla niepalących). Uzyskuje potwierdzenie przez sprawdzenie czy pasażer chciałby zająć ustalone wcześniej miejsce. Miejsce zostaje wybrane przez pasażera (zewnętrzna dla niepalących). Pracownik stanowiska zauważa również odnotowane preferencje w stosunku do posiłku i potwierdza aktualność tego wymagania. Nr miejsca: 33D Nazwisko: R. Jones Klasa: busines Preferencje: dla niepalących Rodz. posiłku: wegetariański Uwagi:

Diagram hierarchii funkcji Przykład: Rezerwacja miejsc w samolocie – rozwiązanie (uszczegółowienie 2) A1 Przydzielenie pasażerowi miejsca spełniającego w miarę możliwości zgłoszone wymagania A1.1 Sprawdzenie dostępności miejsca w klasie określonej na rezerwacji, z uwzględnieniem specjalnych wymagań, np. miejsce dla palących/niepalących A1.2 Określenie preferencji dotyczących miejsca na podstawie wcześniejszych zapisów lub uzyskanie informacji bezpośrednio od pasażera, jeśli istnieje wybór miejsc A1.3 Wybranie wolnego miejsca najbardziej zgodnego z wymogami pasażera A1.4 Przydzielenie miejsca pasażerowi i poinformowanie go o tym

Diagram hierarchii funkcji MIEJSCA Rezerwowanie miejsc na loty, przydzielanie miejsc według numerów i przydzielanie kart wstępu na pokład REZERWACJA Rezerwowanie miejsc na loty żądane lub alternatywne, najlepiej pasujące do trasy podróżnego A1 Przydzielenie pasażerowi miejsca spełniającego w miarę możliwości zgłoszone wymagania R1 R2 R3 R4 Sprawdzenie dostępności miejsca w klasie określonej na rezerwacji, z uwzględnieniem specjalnych wymagań, np. miejsce dla palących/niepalących R5 Zebranie szczegółów dotyczących podróży (kierunek, numer lotu, czas odlotu i przylotu) Ustalenie lotów najlepiej spełniających wymagania pasażera Sprawdze- nie dostępno- ści miejsc na wybranych lotach Rezerwacja miejsc (wstępna- umieszczenie na liście oczekujących i potwierdzenie), w razie konieczności zapewnienia alternatywnej trasy, powiązanie rezerwacji na listach oczekujących z rezerwacjami wstępnymi i potwierdzonymi Przekazanie informacji i potwierdzenie szczegółów rezerwacji z podróżnym A1.1 R2.1 Określenie możliwości lotów bezpośrednich w dopuszczalnych granicach czasowych Określenie preferencji dotyczących miejsca na podstawie wcześniejszych zapisów lub uzyskanie informacji bezpośrednio od pasażera, jeśli istnieje wybór miejsc A1.2 R2.2 Określenie możliwości alternatywnych połączeń (np. uwzględnienie międzylądowania) A1.3 R2.3 Wybranie alternatywnych miejsc startu lub lądowania w pobliżu zgłoszonych lotnisk Wybranie wolnego miejsca najbardziej zgodnego z wymogami pasażera Przykład: Rezerwacja miejsc w samolocie – rozwiązanie (pełny model funkcji) R2.4 A1.4 Przydzielenie miejsca pasażerowi i poinformowanie go o tym Wybranie najlepszej trasy i określenie informacji o locie (tj. numery lotów, czasy, szczegóły międzylądowania, itp.)

Zależności informacyjne, prawne i polityczne Pomiędzy funkcjami zachodzą zwykle różnorodne zależności (zależności tych nie uwzględnia hierarchia funkcji): informacyjna (jedna funkcja dostarcza informacji niezbędnych dla innej) prawna (jedna funkcja musi się wykonać przed drugą) polityczna (zależności określone przez kierownictwo, wytyczne; np. płace) Zależność funkcji służy do obrazowania wzajemnych zależności między funkcjami i zdarzeniami powodującymi wywołanie każdej funkcji. Jest to przydatne przy modelowaniu przyczyn i skutków jakiegoś zdarzenia.

Zależności , rezultaty , zdarzenia i wyłączności Rezultat kluczowy to wynik, który przedsiębiorstwo (system) stara się osiągnąć po wystąpieniu zdarzenia (i zrealizowaniu funkcji ). Zdarzenie wywołujące jest obrazowane w postaci szerokiej strzałki z wpisaną w środku nazwą zdarzenia. Rezerwacja miejsca na lot

Zależności , rezultaty , zdarzenia i wyłączności Czasami funkcja może powodować wytworzenie kilku różnych rezultatów lub rozwiązań kilku różnych zależności, albo też jednego i drugiego. Jeśli wynik jest albo jedynym rezultatem, albo rozwiązaniem jednej zależności, na diagramie jest to obrazowane za pomocą łuku. Dokładnie jedna z tych zależności będzie rozwiązana Nigdy więcej niż jedna Powstanie dokładnie jeden z tych dwóch rezultatów Nigdy oba jednocześnie Albo będzie utworzony rezultat, albo będzie rozwiązana jedna z dwóch zależności

Zależności , rezultaty , zdarzenia i wyłączności Łuk oznacza, że za każdym razem, gdy funkcja jest wykonywana, jedna z załączonych zależności lub rezultatów będzie rozwiązana lub wytworzona. Brak łuku, gdy istnieje kilka rozwiązywanych zależności lub rezultatów tworzonych przez funkcję, oznacza, że wszystkie te zależności będą rozwiązane i wszystkie rezultaty zostaną utworzone (chociaż niekonieczne jednocześnie). Oba z rezultatów będą zawsze tworzone, gdy funkcja będzie wykonywana a b c d e Jedna z zależności a lub b plus c, plus jedna z d lub e są rozwiązywane Wszystkie te zależności są zawsze rozwiązywane a b c Albo rozwiązywana jest zależność a, albo b lub c Ta zależność i ten rezultat są zawsze tworzone przez funkcję

Diagram zależności funkcji Zależność funkcji przedstawia się często przy pomocy diagramów zależności funkcji (Function Dependency Diagram - FDD) W diagramach zależności funkcji wykorzystywane są specyficzne notacje graficzne Oznaczenie Znaczenie Funkcja (poziom systemu) Zdarzenie wywołujące lub rezultat Funkcja B musi czekać na zrealizowanie funkcji A Albo będzie wytworzony rezultat albo rozwiązana jedna z dwóch zależności A B A

Diagram zależności funkcji Przykład: naprawa pojazdu Lokalizacja pojazdu Badanie pojazdu Diagnozowanie usterki Zlecenie naprawy innej firmie Naprawa pojazdu własnymi zasobami

Diagram zależności funkcji Przykład: rezerwacja miejsc Niezadowolony pasażer Ustalenie wymagań, które pasażer może zmienić Zgłoszenie zapotrzebowania na miejsce Ustalenie wymagań pasażera Określenie najbardziej odpowiednich lotów Sprawdzenie zajętości miejsc na wybrany lot Rezerwacja miejsc na wybranych lotach lub umieszczenie pasażera na liście oczekujących Rezerwacja Lista oczekujących

Diagram zależności funkcji W procesie tym często może wystąpić konieczność dekompozycji wcześniej określonych funkcji X A B Y R B C Z X A Y B R C Z

Diagram zależności funkcji Przykład: obsługa bankomatu Rezygnacja Włożenie karty do bankomatu Zablokowanie karty Wpisanie PIN-u Zaakceptowanie PIN-u Sprawdzenie liczby pomyłek Prośba o poprawny PIN Wybór języka Zatwierdzenie PIN-u Anulowanie PIN-u Zwrot karty Odbiór karty Odczyt stanu konta Odbiór wydruku Zaakceptowanie kwoty Zatwierdzenie kwoty Anulowanie kwoty Wybór usługi Wydrukowanie stanu konta Wyświetlenie stanu konta Wybór jednej z proponowanych kwot Prośba o podanie innej kwoty Sprawdzenie stanu konta i limitu wypłat Wpisanie własnej kwoty Wydrukowanie paragonu Odbiór gotówki Odbiór paragonu Wypłacenie pieniędzy Proszę opisać funkcjonowanie bankomatu i w oparciu o ten opis stworzyć diagram zależności funkcji

Diagram zależności funkcji Weryfikacja diagramu FDD W tym celu weryfikacji powinno się postępować według kolejnych kroków: Dla funkcji: czy ta funkcja jest zawsze potrzebna do osiągnięcia żądanych rezultatów? jakie inne zdarzenie mogłoby wywoływać te funkcję? czy prawdą jest, że pokazane są tylko zdarzenia lub zależności potrzebne do wywołania tej funkcji? czy są jakieś zdarzenia lub zależności w tym procesie, które nie są koniecznie potrzebne? Dla każdej zależności: czy ta zależność musi być zawsze spełniona zanim może się rozpocząć następna funkcja? czy funkcje na obu końcach zależności mogą być kiedykolwiek wykonywane równocześnie lub w innej kolejności? czy po wykonaniu danej funkcji zależność ta jest zawsze rozwiązywana? Jeśli nie, to powinien istnieć łuk z inną zależnością lub rezultatem, wska­zujący na wyłączność. Dla całego diagramu: czy są pokazane wszystkie kluczowe rezultaty, czy któregoś brakuje? czy każda pętla może być zakończona? czy są jakieś inne zdarzenia, które mogą powodować tworzenie tych rezultatów kluczowych?

Logika i formularze opisu wymagań dla funkcji Logikę funkcji stosuje się do szczegółowego opisu czynności wykonywanych przez funkcje. Określa ona krok po kroku stan procesu i może być konstruowana poprzez specyfikację wymaganych rezultatów i warunków ich osiągania. Z logiką funkcji związane są formularze opisu wymagań dla funkcji. Zawierają one: nazwę funkcji opis funkcji dane wejściowe źródło danych wejściowych wynik warunek wstępny dla funkcji warunek końcowy dla funkcji powód uwagi

Logika i formularze opisu wymagań dla funkcji Zobaczmy przykład formularza opisu wymagań dla funkcji: „System kontroli realizacji planu produkcji” 1. Systemu ..................... 2. Systemu zarządzania produkcją 2.1 Ewidencja realizacji produkcji. 2.1.1 Dopisywanie raportów z produkcji. 2.1.2 Modyfikowanie raportów z produkcji. 2.1.3 Kasowanie raportów z produkcji. 2.2 Kontrola realizacji produkcji. 2.2.1 Kontrola i ocena przebiegu produkcji. 2.2.2 Kontrola i ocena opóźnień produkcji. 2.3 Administrowanie systemem. 2.3.1 Archiwacja bieżąca danych. 2.3.2 Zamknięcie miesiąca. 2.3.3 Porządkowanie danych. 3. Systemu ..................... .........................................

DZIĘKUJĘ ZA UWAGĘ! Rozumienie obszaru merytorycznego wykładu proszę skonfrontować z z pozycją literatury: Barczak. A., Florek J., Sydoruk T.: Projektowanie zintegrowanych systemów informatycznych zarządzania, Wyd. AP, Siedlce 2006 Rozdział 8. Barker R., Longman C.: Modelowanie funkcji i procesów. WNT. Warszawa 1996 Źródłami internetowymi