Tomasz Andrejczuk Łukasz Razmuk gr. 620

Slides:



Advertisements
Podobne prezentacje
Zerowanie mikroprocesorów Cel: wprowadzenie mikroprocesora w określony stan początkowy Zwykle realizowany poprzez: inicjalizację licznika rozkazów (PC)
Advertisements

TRADYCYJNE METODY PLANOWANIA I ORGANIZACJI PROCESÓW PRODUKCYJNYCH
Związki w UML.
Mechanizmy pracy równoległej
Projektowanie aplikacji równoległych Jarosław Kuchta.
Modelowanie aktywności
Diagramy stanów i diagramy aktywności
Jarosław Kuchta Dokumentacja i Jakość Oprogramowania
Projektowanie systemów informacyjnych
Modelowanie procesów biznesowych
Semafory Autorzy : Michał Winciorek Łukasz Jackowicz.
Interaktywna prezentacja użytkowa
PRZERZUTNIKI W aktualnie produkowanych przerzutnikach scalonych TTL wyróżnia się dwa podstawowe rodzaje wejść informacyjnych: - wejścia asynchroniczne,
Maciej I Stanisław Jedlińscy
Zrównoleglanie programu sekwencyjnego
UML rozszerzenie Seminarium magisterskie
Projektowanie Aplikacji Komputerowych
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 8: Wykorzystanie procedur i funkcji © Jan Kaczmarek.
UML – Unified Modeling Language (2)
Tomasz Jabłoński Michał Ziach
Diagramy interakcji Jacek Górski gr
Systemy operacyjne Wykład nr 4: Procesy Piotr Bilski.
1 Dygresja: cztery płyty główne…. 2 Dygresja: osobliwości C /* cos o nieistniejacym typie Boolean */ /* oraz o operatorze przecinkowym */ #include int.
E. Stemposz, Analiza i Projektowanie Systemów Informatycznych, Wykład 10, Slajd 1 Projektowanie systemów informacyjnych Ewa Stemposz, Kazimierz Subieta.
Diagram czynności (Activity Diagrams)
K.Subieta, E. Stemposz. Projektowanie systemów informacyjnych, Wykład 10, Folia 1 Projektowanie systemów informacyjnych Kazimierz Subieta, Ewa Stemposz.
Semantyki programów współbieżnych " Determinizm programów sekwencyjnych, " Nie-determinizm programów współbieżnych, " prawdziwa równoległość vs.przeploty.
Projektowanie i programowanie obiektowe II - Wykład IV
Wstęp do interpretacji algorytmów
Wątki.
Projektowanie - wprowadzenie
Diagramy czynności.
Projektowanie dynamiki - diagramy interakcji
Wykład 4 Analiza i projektowanie obiektowe
Oskar Ośko Mateusz Skoczewski Michał Sułek
Zamawianie nagród w programie lojalnościowym IC Premia
Podstawy programowania
Układy sekwencyjne pojęcia podstawowe.
Wyrażenia w Turbo Pascalu.
Automatyka i Robotyka Systemy czasu rzeczywistego Wykład 4.
DIAGRAMY UML.
Algorytmy.
Elżbieta Fiedziukiewicz
Programowanie obiektowe 2013/2014
Modelowanie obiektowe Diagramy czynności
Modelowanie obiektowe Diagramy UML – diagram przypadków użycia
Modelowanie obiektowe Diagramy sekwencji
Diagramy stanu.
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Programowanie strukturalne i obiektowe C++
Model obiektowy bazy danych
Diagram aktywności (czynności)
Przykłady analiza i projektowanie
Modelowanie obiektowe - system zarządzania projektami.
Diagram czynności Diagram czynności (activity diagram) służy do modelowania dynamicznych aspektów systemu. Diagram czynności przedstawia sekwencyjne lub.
Diagram obiektów Diagram obiektów ukazuje elementy i związki z diagramu klas w ustalonej chwili. Diagram obiektów jest grafem złożonym z wierzchołków i.
Projektowanie obiektowe. Przykład: Punktem wyjścia w obiektowym tworzeniu systemu informacyjnego jest zawsze pewien model biznesowy. Przykład: Diagram.
Diagramy przepływu danych
Część 1.  Pierwszym etapem metodyki strukturalnej jest analiza strukturalna której efektem jest model podstawowy systemu.
Wstęp do interpretacji algorytmów
E. Stemposz. Analiza dynamiczna w UML, Wykład 2, Slajd 1 Studia Podyplomowe IT w Biznesie Analiza dynamiczna w UML Wykład 2 Diagramy stanów Wykładowca:
Studia Podyplomowe IT w Biznesie Analiza dynamiczna w UML
Wykład 8 Model dynamiczny (2)
Inżynieria systemów informacyjnych
POLITECHNIKA POZNAŃSKA
Programowanie Obiektowe – Wykład 2
Diagramy interakcji Kamil Kuliczkowski.
Haskell Składnia funkcji.
POJĘCIE ALGORYTMU Wstęp do informatyki Pojęcie algorytmu
Zapis prezentacji:

Tomasz Andrejczuk Łukasz Razmuk gr. 620 Diagram Stanów Tomasz Andrejczuk Łukasz Razmuk gr. 620

Wprowadzenie Diagram stanów (State diagram) jest uzupełnieniem diagramu klas. Pokazuje on wszystkie stany jakie obiekt klasy może mieć oraz zdarzenia, które powodują przejście między tymi stanami. Diagram stanów w swojej idei nawiązuje do automatu skończonego. Opisuje on stany pewnego procesu, które są istotne z punktu widzenia modelu pojęciowego tego procesu, oraz przejścia pomiędzy stanami. W swojej pierwotnej idei diagram stanów miał odwzorowywać stany obiektów pewnej klasy podczas ich cyklu życiowego oraz przejścia (transitions) pomiędzy tymi stanami powodowane przez zdarzenia lub komunikaty. Diagramy stanów nie są tworzone dla każdej klasy; tylko dla tych, które mają wiele dobrze zdefiniowanych stanów wpływających na jej zachowanie.

Diagram stanu: Pokazuje stany obiektu i przejścia pomiędzy jego stanami przez cały cykl życia obiektu. Kompletny diagram stanów systemu jest zbiorem subdiagramów, które komunikują się ze sobą przy pomocy zdarzeń Diagram stanu jednej klasy może odnosić się do stanu innej klasy Jest użyteczny dla ukazania cyklu życiowego pojedynczego obiektu Specyfikuje zachowania wystąpień klasy,zwłaszcza: -stany -zdarzenia -przejścia

Notacja w UML’u dotycząca diagramów stanów entry/ akcja1/ akcja2/ ... do/ aktywność1/ aktywność2/... exit/ akcja1/ akcja2/ ... Nazwa stanu Stan – Oznaczany za pomocą prostokąta z zaokrąglonymi rogami.Stan może mieć nazwę, ale często jest charakteryzowany jedynie poprzez wewnętrzne operacje. akcja atomowa operacja, która nie może zostać przerwana lista akcji akcja1/akcja2...- jest traktowana jak pojedyncza akcja aktywność operacja, która może być przerwana lista aktywności podobnie jak lista akcji entry słowo kluczowe określające operacje wykonywane po wejściu obiektu w dany stan exit słowo kluczowe określające operacje wykonywane przy wyjściu obiektu ze stanu do operacje wykonywane gdy stan jest aktywny

Stan złożony sekwencyjny – składa się z jednego lub więcej podstanów , z których tylko jeden jest aktywny, gdy aktywny jest stan złożony super state sub state1 sub state Stan złożony współbieżny – jest podzielony na dwa lub więcej współbieżnych podstanów, wszystkie podstany są jednocześnie aktywne, gdy aktywny jest stan złożony(jako całość)

Stan początkowy jest pseudostanem służącym do Stan początkowy jest pseudostanem służącym do oznaczenia punktu startowego( początku życia) Stan końcowy jest pseudostanem służącym do oznaczenia punktu finalnego ( końca życia) Węzeł to pseudostan służący do łączenia łańcucha przejść w jedno przejście Stan historyczny to pseudostan,którego aktywacja uaktywnia stan poprzednio aktywny ( w ramach stanu złożonego ) Stan odnośnikowy to pseudostan, do którego występuje odwołanie na diagramie; podmieniany przez stan wyspecyfikowany w odwołaniu. Pniak to pseudostan, do którego występuje odwołanie na diagramie, wchodzący w skład innego , złożonego stanu H include S S

Zdarzenia Zdarzeniem jest coś, co następuje w jednym punkcie czasowym i warte jest analizowania z punktu widzenia celów projektowanego systemu wołanie Opis Składnia zmiana sygnał czas otrzymanie przez obiekt synchronicznego żądania wykonania operacji - najbardziej podstawowy rodzaj zdarzenia spełnienie warunku typu Boolean, np. when (x =10); zdarzenie typu zmiana jest użyteczne np. do modelowania sytuacji, gdy obiekt zmienia stan po otrzymaniu odpowiedzi na wysłany przez siebie komunikat otrzymania przez obiekt asynchronicznego żądania wykonania operacji; użyteczne do modelowania zdarzeń przychodzących z zewnątrz systemu upłynięcie czasu określonego w sposób bezwzględny lub względny, np. after (5 sec.) op (a : T) when(wyrażenie) nazwa_syg (a : T) after (czas) Typ zdarzenia

Akcje Rodzaj akcji Opis Składnia przypisanie (assignment) przypisanie wartości do zmiennej zmienna := wyrażenie wywołanie operacji na obiekcie; czeka się na zakończenie operacji; może być zwracana wartość wołanie (call) nazwa_op (arg, …) nowy (create) utworzenie nowego obiektu nowy nazwa_klasy (arg, …) usuń (destroy) usunięcie obiektu usuń () wyślij (send) utworzenie wystąpienia sygnału i wysłanie do obiektu (ów) nazwa_sygnału (arg, …) zakończ (terminate) samodestrukcja obiektu zakończ powrót (return) specyfikuje instrukcję powrotu powrót wartość_zwracana

Przejścia W ogólności, przejście może być opisane przez zdarzenie, które je odpaliło (wywołało), warunek oraz akcję (akcje), która jest wykonywana przed ewentualną zmianą stanu. Wyróżniamy cztery rodzaje przejść: 1. przejście zewnętrzne (external transition) 2. przejście wewnętrzne (internal transition) 3. samo-przejście (selftransition) 4. przejście automatyczne (completion transition) zdarzenie [warunek] /akcja stan 1 stan 2 przejście zdarzenie [warunek] /akcja zdarzenie [warunek] /akcja stan [warunek] /akcja stan 1 stan 2

Przejścia - przykłady Przetwarzanie Oczekiwanie zamówienia otrzymanie zamówienia (suma) [suma < =100 zł.] przejścia zewnętrzne: otrzymanie zamówienia (suma) [suma > 100 zł.] kredyt zatwierdzony/ licz debet () Zatwierdzenie kredytu kredyt odrzucony Anulowanie zamówienia Wprowadzanie hasła entry/ ustaw echo na gwiazdkę/ haslo_zeruj() exit/ ustaw normalne echo znak/ obsłuż znak czyść/ haslo_zeruj() pomoc/ wyświetl pomoc przejścia wewnętrzne:

Przykłady Diagramów Diagram typu: cykl życia obiektu kupno urządzenia przez klienta Urządzenie niesprzedane Urządzenie sprzedane klient zwrócił urządzenie after (data gwarancji) Diagram typu: przepływ sterowania when (szach mat) Kolejka białych czarne wygrywają when (pat) ruch czarnych ruch białych remis when (pat) Kolejka czarnych białe wygrywają when (szach mat)

Diagram stanu dla bankomatu włożono kartę(nr karty) stan spoczynku Weryfikacja karty odmowa / zwróć kartę Sprawdzenie salda rachunku [kwota <= saldo ] [kwota > saldo ] do / drukuj potwierdzenia do / wypłacić

Współbieżność - obiekty zagregowane Współbieżność ma źródło w trzech sytuacjach: obiekty mogą być zagregowane, pewne operacje w ramach jednego obiektu można wykonywać współbieżnie, a także obiekty mogą działać asynchronicznie. Zapłon kluczyk do max w prawo [Biegi w pozycji 0] Samochód Wył. Zapala Włącz. kluczyk do poz wył Zapłon Bieg Hamulec Gaz Hamulec Biegi .... Gaz .... hamulec naciśnięty Każdy obiekt wchodzący w skład agregatu posiada tu własny diagram stanu. Można je łączyć, tworząc diagram dla agregatu samochód (uwzględniając współbieżność operacji). Wył. Włącz. hamulec puszczony

Przykład 2 - telefon

Stan złożony sekwencyjny Instalacja oprogramowania Uruchomienie systemu Restart systemu Uruchomienie systemu Instalacja entry/wpisanie katalogu do/instalacja oprogramowania H powtórz=true Błąd dysku powtórz = false entry/napraw dysk do/pokaż okno dialogowe do/spytaj czy powtórzyć

Zadania do rozwiązania Zadanie 1. Narysować diagram stanów dla bootowania systemu, który będzie zawierał wyszukiwanie systemu, a następnie rozruch. Jeżeli nie znajdzie systemu to szuka aż do skutku. rozwiazanie Zadanie 2. Narysować diagram stanów dla jazdy samochodem na pierwszych dwóch biegach oraz wstecznym. Pamiętaj, aby wrzucić wsteczny samochód musi zostać zatrzymany (zahamowany). rozwiazanie

Zadanie 1 find_sys=true Szukanie systemu na dyskach find_sys=false Rozruch systemu Powrot

Zadanie 2 Powrot wybrano pierwszy bieg jazda jazda do przodu na 1 biegu wybrano poprzedni bieg wybrano następny bieg Wciśnięto hamulec jazda do przodu na 2 biegu Samochód zatrzymany Jazda do tyłu Wybrano bieg wsteczny

Dziękujemy