09 Diagram harmonogramowania


5R]G]LD
=QDF]HQLH GLDJUDPŃZ
KDUPRQRJUDPRZDQLD
Analizowane i projektowane interakcje w systemie realizowane s w okre lonym cza-
sie. Spełnienie kryterium czasu przez interakcj jest wa nym czynnikiem oceny tych
systemów  zwłaszcza systemów wbudowanych i systemów czasu rzeczywistego. Wy-
chodz c naprzeciw tym oczekiwaniom, zaproponowano diagramy harmonogramowania.
'LDJUDP KDUPRQRJUDPRZDQLD MHVW URG]DMHP GLDJUDPX LQWHUDNFML UHSUH]HQWXMńF\P
QD RVL F]DVX ]PLDQ\ GRSXV]F]DOQ\FK VWDQŃZ MDNLH PR H SU]\MPRZDŁ LQVWDQFMD
NODV\ILNDWRUD XF]HVWQLF]ńFD Z LQWHUDNFML
Diagramy te stosuje si w celu sporz dzenia harmonogramów interakcji, a wi c spe-
cyfikacji interakcji instancji klasyfikatorów w aspekcie zmian czasu trwania ich sta-
nów. Punktem wyj cia tych diagramów s podstawowe kategorie diagramów sekwen-
cji oraz maszyn stanowych. Terminowa realizacja interakcji wymaga niekiedy wielkiej
dokładno ci czasowej. W zwi zku z tym na diagramach harmonogramowania mo na
przedstawiać kolejno ć wyst powania stanów instancji klasyfikatorów oraz czas ich
trwania. Wprowadzenie diagramów harmonogramowania w UML 2.0 jest istotn zmia-
n w stosunku do poprzednich wersji. Ich tworzenie i u ytkowanie jest szczególnie
zalecane w systemach o rozbudowanej dynamice.
D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc (05-11-10) 251
&] Ł , 0 3RGVWDZ\ M]\ND 80/
3RGVWDZRZH NDWHJRULH SRMFLRZH
RUD] QRWDFMD JUDILF]QD
Diagramy harmonogramowania dokumentuj aspekt czasu interakcji. St d w diagra-
mie harmonogramowania na osi poziomej zaznacza si skal czasu w postaci ustalo-
nych odcinków. Natomiast na osi pionowej przedstawia si poszczególne instancje
klasyfikatorów bior ce udział w interakcji, a przy ka dej z nich jej stany. Z zasady
diagramy harmonogramowania tworzy si po opracowaniu diagramów sekwencji lub
komunikacji. Na diagramach tych bowiem precyzyjnie wskazane s instancje klasyfi-
katorów wyst puj ce w systemie, a wyszczególnienie linii ycia, o rodków sterowania
i komunikatów ułatwia ustalenie jednostek na skali czasu. W ten sposób osi ga si
harmonizacj interakcji pomi dzy instancjami klasyfikatorów w układzie czasowym.
Akceptowalne jest równie autonomiczne podej cie do tworzenia wspomnianych dia-
gramów, bez uwzgl dniania powi zanych diagramów sekwencji czy komunikacji, na
podstawie innych posiadanych specyfikacji systemu.
W podstawowej postaci diagramu harmonogramowania ilustrowane s jego podstawo-
we kategorie poj ciowe (por. rysunek 9.1):
t klasyfikator,
t nazwa stanu,
t linia zmiany stanów instancji klasyfikatora.
Poj cie klasyfikatora wprowadzono i omówiono w rozdziale 1., podczas gdy powszech-
nie stosowane rodzaje klasyfikatorów j zyka UML 2 wskazano w rozdziale 7.
Lista mo liwych stanów jest specyficzna dla ka dej instancji klasyfikatora, jednak
mo na wyró nić kilka typowych stanów (ang. states), takich jak:
t bezczynno ć,
t czuwanie,
t oczekiwanie,
t wykonywanie,
t obliczanie.
Linia zmiany stanów (ang. timeline) mo e przedstawiać stany instancji klasyfikatora
lub okre lonej, mierzalnej zmiennej  np. nat enia hałasu lub poziomów wybranego
indeksu giełdowego. Diagram harmonogramowania w odniesieniu do instancji klasyfi-
katora Rezerwacja ze stanami sporz dzanie, potwierdzanie, opłacanie oraz wysyłanie
przedstawia rysunek 9.1.
252 (05-11-10) D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc
5R]G]LD 0 'LDJUDP KDUPRQRJUDPRZDQLD
5\VXQHN
td Obsługa Rezerwacji
Diagram
harmonogramowania
dla obiektu klasy
wysyłanie
Rezerwacja
opłacanie
potwierdzanie
sporz dzanie
Kwadrans
0 1 2 3 4 5 6 7 8 9 10
=DDZDQVRZDQH VNDGQLNL GLDJUDPX
Przedstawiony na rysunku 9.1 diagram harmonogramowania jest u yteczny w dokumen-
towaniu stosunkowo prostych interakcji. Istnieje jednak mo liwo ć jego rozszerzenia
o szereg zaawansowanych kategorii, takich jak:
t zdarzenia,
t ograniczenia czasowe,
t alternatywne sposoby prezentacji stanów,
t harmonizacja linii zmiany stanów dla kilku instancji klasyfikatorów bior cych
udział w interakcji,
t przesyłanie komunikatów.
=GDU]HQLD L RJUDQLF]HQLD F]DVRZH
Załamanie linii zmiany stanów instancji klasyfikatora oznacza wyst pienie zdarzenia
powoduj cego zainicjowanie nowego stanu tej instancji. Zdarzenia w harmonogramie
rezerwacji przedstawia rysunek 9.2. Sprecyzowano na nim stany instancji klasyfikatora
Rezerwacja i czas ich trwania poprzez okre lenie ogranicze czasowych (ang. con-
straints) w odniesieniu do stanów:
t potwierdzanie  {<30 min},
t sporz dzanie  {30 min +/- 15 min},
t opłacanie  {<=1 godzina}.
Je li skala czasu w sposób jednoznaczny okre la długo ć trwania stanu, nie zaznacza
si ogranicze czasowych, co zilustrowano na rysunku 9.2 dla stanu wysyłanie.
D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc (05-11-10) 253
Rezerwacja
&] Ł , 0 3RGVWDZ\ M]\ND 80/
td Obsługa Rezerwacji
{< 30 min} {30 min +/- 15 min} {<= 1 godzina}
wydrukPotwierdzenia
wysyłanie
opłacanie
sporz dzenieFaktury
potwierdzanie
sporz dzanie
nadej ciePotwierdzenia
Kwadrans
0 1 2 3 4 5 6 7 8 9 10
5\VXQHN Diagram harmonogramowania ze zdarzeniami i ograniczeniami czasowymi
$OWHUQDW\ZQH VSRVRE\ SUH]HQWDFML VWDQŃZ
Poza podstawow form prezentacji diagramów harmonogramowania istnieje alterna-
tywna konwencja ich dokumentowania. Obie notacje mog być stosowane zamiennie
i wzajemnie przekształcane. Diagram harmonogramowania utworzony z wykorzysta-
niem alternatywnej konwencji, b d cy odpowiednikiem rysunku 9.2, zaprezentowano
na rysunku 9.3.
td Obsługa Rezerwacji
{< 30 min} {30 min +/- 15 min} {<= 1 godzina}
sporz dzenieFaktury
potwierdzanie sporz dzanie opłacanie
wysyłanie
wydrukPotwierdzenia
nadej ciePotwierdzenia
Kwadrans 0 1 2 3 4 5 6 7 8 9 10
5\VXQHN Alternatywna notacja diagramów harmonogramowania
+DUPRQL]DFMD OLQLL ]PLDQ\ VWDQŃZ
W interakcji w praktyce uczestniczy kilka, kilkana cie, a w niektórych sytuacjach
nawet wi cej instancji klasyfikatorów. Ka da z nich mo e przyjmować okre lone sta-
ny. Diagramy harmonogramowania umo liwiaj przedstawienie interakcji w pełnym
254 (05-11-10) D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc
Rezerwacja
Rezerwacja
5R]G]LD 0 'LDJUDP KDUPRQRJUDPRZDQLD
wymiarze, tzn. ze wszystkimi współpracuj cymi instancjami klasyfikatorów w hory-
zoncie czasowym harmonogramu. W tak opracowanym diagramie harmonogramowa-
nia osi ga si nie tylko specyfikacj zmian stanu instancji klasyfikatora. Umo liwia on
równie przedstawienie interakcji instancji klasyfikatorów, które bior udział w tej inte-
rakcji w ka dym momencie okresu, dla którego jest opracowany harmonogram. Stwarza
to mo liwo ć harmonizacji współdziałania instancji klasyfikatorów w czasie. Harmo-
nizacja poszczególnych instancji klasyfikatorów i ich stanów na osi czasu mo e być
wła ciwie oddana wył cznie z wykorzystaniem podstawowej notacji. Diagram na ry-
sunku 9.4 jest przykładem harmonizacji instancji klasyfikatorów. Przedstawia przypa-
dek rejestrowania rezerwacji w bazie danych hotelu.
td Rezerwacja HoteIowa
bezczynno ć
wprowadzanie
oczekiwanie
wy wietIanie
sprawdzanie
danych
rezerwowanie
potwierdzanie
oczekiwanie
przetwarzanie
odpowiadanie
Sekunda 0 5 10 15 20 25 30
5\VXQHN Harmonogramowanie rejestrowania rezerwacji hotelowej
Przypadek rejestrowania rezerwacji w bazie danych hotelu jest elementem scenariusza
wyspecyfikowanego na diagramie sekwencji przedstawionym na rysunku 7.5. W przy-
padku tym wyst puj trzy instancje klasyfikatorów:
t Recepcjonista,
t IRezerwacja,
t BazaDanych.
D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc (05-11-10) 255
BazaDanych
IRezerwacja
Recepcjonista
&] Ł , 0 3RGVWDZ\ M]\ND 80/
Na wst pie instancje te s odpowiednio w stanach: bezczynno ci, wy wietlania oraz
oczekiwania. W wyniku wyst pienia konkretnego zdarzenia, tj. przyj cia zgłoszenia
klienta, recepcjonista otwiera rezerwacj . Posługuje si w tym celu wy wietlan na ekra-
nie formatk IRezerwacja. Recepcjonista wprowadza dane, których kompletno ć oraz
poprawno ć formalna jest sprawdzana przez IRezerwacj . Nast pnie realizowana jest
operacja przetwarzania danych  fakt dokonania rezerwacji pokoju albo pokoi jest od-
notowywany w BazieDanych. W ramach IRezerwacji wy wietlane jest potwierdzenie
dokonania rezerwacji. W efekcie zako czenia realizacji całej transakcji poszczególne
instancje klasyfikatorów przechodz do stanów wyj ciowych.
Prezentowanie stanów kilku instancji klasyfikatorów w systemie jest mo liwe tak e
z wykorzystaniem opisanej notacji alternatywnej. Notacja ta pozwala na specyfikacj
stanów poszczególnych instancji wzgl dem czasu trwania tych stanów. Nie zawiera ona
jednak elementu harmonizacji poszczególnych instancji klasyfikatorów i ich stanów
na osi czasu (rysunek 9.5).
td Rezerwacja HoteIowa
bezczy-
wprow. oczekiwanie wprowadzanie oczekiwanie wprow. bezczynno ć
nno ć
wy wie- sprawdzanie rezerwo-
wy wietIanie potw. wy wietIanie
tIanie danych wanie
prze- prze-
odpow. odpow.
oczekiwanie oczekiwanie oczekiwanie
twarz. twarz.
Sekunda 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
5\VXQHN Rejestrowanie rezerwacji w bazie danych hotelu  notacja alternatywna
3U]HV\DQLH NRPXQLNDWŃZ
Diagramy harmonogramowania mo na wzbogacić o dokumentowanie interakcji w po-
staci komunikatów przesyłanych mi dzy instancjami klasyfikatorów. ródłem tej in-
formacji s odpowiednie diagramy sekwencji lub komunikacji. W zwi zku z tym na
diagramach harmonogramowania mo na przedstawić wszystkie rodzaje komunikatów
256 (05-11-10) D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc
BazaDanych
IRezerwacja
Recepcjonista
5R]G]LD 0 'LDJUDP KDUPRQRJUDPRZDQLD
omówionych w punkcie Zaawansowane składniki diagramu z wyj tkiem komunikatu
utraconego oraz znalezionego. Na podstawie diagramu harmonogramowania przed-
stawionego na rysunku 9.4 wyspecyfikowano nast puj ce komunikaty:
t otwórzRezerwacj ,
t sprawd Dost pno ćPokoi,
t wprowad Dane,
t dokonajRezerwacji,
t potwierd Rezerwacj ,
t zamknij.
Zostały one wprowadzone do diagramu harmonogramowania zilustrowanego na ry-
sunku 9.6.
td Rezerwacja HoteIowa
przyj cieZgłoszenia
bezczynno ć
zamkni cieAplikacji
wprowadzanie
oczekiwanie
otwórzRezerwacj wprowad Dane zamknij
wy wietIanie
sprawdzanie
danych
rezerwowanie
sprawd Dost pno ćPokoi
potwierdzanie
dokonajRezerwacji
potwierd Rezerwacj
oczekiwanie
przetwarzanie
odpowiadanie
Sekunda 0 5 10 15 20 25 30
5\VXQHN Komunikaty na diagramach harmonogramowania
D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc (05-11-10) 257
BazaDanych
IRezerwacja
Recepcjonista
&] Ł , 0 3RGVWDZ\ M]\ND 80/
'LDJUDP\ VHNZHQFML D KDUPRQRJUDPRZDQLH
Pewne elementy harmonogramowania, w szczególno ci ograniczenia czasowe, mo na
przedstawić na diagramach sekwencji. Wprowadza si je:
t nad symbolem komunikatu pomi dzy dwoma instancjami klasyfikatorów
 w przypadku wskazywania czasu wykonania operacji inicjowanej przez
komunikat;
t równolegle do linii ycia instancji klasyfikatora pomi dzy dwoma komunikatami
 w przypadku wskazywania przedziału czasowego pomi dzy tymi
komunikatami.
Okre lanie ogranicze czasowych w wersjach 1.x j zyka UML było mo liwe przede
wszystkim na diagramach sekwencji. Na diagramach harmonogramowania ograniczenia
przedstawia si w sposób jawny. Jednak powa nym, technicznym utrudnieniem zapi-
su wspomnianych ogranicze na diagramie sekwencji jest stosowanie przy ich tworze-
niu pełnej, obszernej składni komunikatu. W poł czeniu z zapisem ogranicze czaso-
wych nadmiernie komplikuje to diagram, czyni c go tym samym mało przejrzystym.
W zwi zku z wprowadzeniem diagramów harmonogramowania poprzednia forma zapi-
su ogranicze czasowych mo e mieć jedynie charakter wst pny lub uproszczony. Ogra-
niczenia czasowe na diagramach sekwencji przedstawia rysunek 9.7.
IHarmonogram BazaDanych
Kierownik
inicjujNoweSpotkanie(data, uczestnicy)
utwórzPoł czenie {0..5s}
wy wietl("Poł czenie nawi zane")
{t = czasBie cy}
zapisz(data, uczestnicy) {0..3s}
wy wietl("Spotkanie zarejestrowane")
weryfikujPotwierdzenia(dataSpotkania)
{t = czasBie cy+15}
pobierzDane(potwierdzenie) {0..3s}
wy wietl(potwierdzenie) {0..1s}
5\VXQHN Ograniczenia czasowe w systemie harmonogramowania spotka
Rysunek ten ilustruje harmonogramowanie projektów. I tak Kierownik, chc c zaini-
cjować nowe spotkanie zespołu projektowego, okre la dat oraz uczestników spotka-
nia z wykorzystaniem interfejsu IHarmonogram. W momencie, gdy Kierownik po-
twierdzi wybór, instancja klasyfikatora IHarmonogram tworzy poł czenie z Baz Danych.
Zastosowane ograniczenie czasowe wskazuje, e wykonanie operacji utwórzPoł cze-
nie mo e potrwać maksymalnie 5 sekund. W momencie uzyskania poł czenia na inter-
fejsie IHarmonogram wy wietlane jest stosowne potwierdzenie. Nast pnie realizowana
jest operacja zapisz. Jej wykonanie powoduje zapisanie w BazieDanych daty spotkania
258 (05-11-10) D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc
5R]G]LD 0 'LDJUDP KDUPRQRJUDPRZDQLD
i jego składu osobowego, wcze niej okre lonego przez Kierownika. Limit czasu wy-
konania wspomnianej operacji wynosi 3 sekundy. Z kolei pomi dzy wywołaniem ope-
racji utwórzPoł czenie oraz zapisz upływa w systemie 15 sekund.
Po zapisaniu danych wy wietlane jest potwierdzenie zarejestrowania spotkania. Asyn-
chronicznie w stosunku do inicjowania przez siebie nowych spotka , Kierownik mo e
weryfikować potwierdzenia obecno ci uczestników na innych spotkaniach projekto-
wych. W tym celu Kierownik okre la konkretn dat spotkania. Nast pnie IHarmono-
gram pobiera potwierdzenia zarejestrowane tego dnia. W efekcie realizowana jest ope-
racja wy wietl, udost pniaj ca Kierownikowi potwierdzenia poszczególnych uczestników
spotka projektowych. Na wy wietlenie potwierdze przewidziano 1 sekund .
3URFHV WZRU]HQLD
GLDJUDPX KDUPRQRJUDPRZDQLD
Informacje przedstawiane na diagramach harmonogramowania s w znacznej mierze
pochodn kategorii poj ciowych diagramów sekwencji, komunikacji oraz diagramów
maszyny stanowej. St d w procesie tworzenia diagramów harmonogramowania wyko-
rzystywane mog być inne diagramy j zyka UML. Kluczowymi etapami tego procesu s :
identyfikacja interakcji udokumentowanej diagramem sekwencji lub diagramem
komunikacji,
przeniesienie lub dobór klasyfikatorów,
identyfikacja stanów ka dej instancji klasyfikatora z wykorzystaniem
diagramów maszyny stanowej,
ustalenie horyzontu czasowego diagramu,
wyspecyfikowanie linii zmiany stanu instancji klasyfikatorów,
wprowadzenie ogranicze czasowych dla poszczególnych stanów instancji
klasyfikatora,
nazwanie i wprowadzenie odpowiednich zdarze na podstawie diagramów
maszyny stanowej,
harmonizacja linii zmiany stanu wszystkich instancji klasyfikatorów interakcji
prezentowanych na diagramie,
przeniesienie lub wprowadzenie komunikatów przesyłanych pomi dzy
instancjami klasyfikatorów uczestnicz cymi w interakcji.
Ze wzgl du na wykorzystywanie w procesie tworzenia diagramów harmonogramowa-
nia szeregu kategorii poj ciowych innych diagramów, bardzo istotne jest zachowy-
wanie spójno ci pomi dzy nimi. Proces tworzenia diagramów harmonogramowania
podlega regułom iteracyjno-przyrostowego cyklu ycia systemu.
D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc (05-11-10) 259
&] Ł , 0 3RGVWDZ\ M]\ND 80/
3RGVWDZRZH SRMFLD
Diagram harmonogramowania Harmonizacja
Definicja Interakcja
Klasyfikator Iteracja
Linia zmiany stanów Komunikat
Nazwa stanu Przesyłanie
Notacja Asynchroniczny
Klasyczna Oczekuj cy
Alternatywna Opcjonalny
Proces tworzenia Synchroniczny
Diagram komunikacji Zwrotny
Izomorfizm Ograniczenie czasowe
Stan Skala czasu
Bezczynno ćStan
Czuwanie System
Obliczanie Czasu rzeczywistego
Oczekiwanie Wbudowany
Wykonywanie Warunek
Diagram maszyny stanowej Zdarzenie
Diagram sekwencji
O rodek sterowania
Linia ycia
3\WDQLD L ]DGDQLD
Wyja nij zale no ci pomi dzy poszczególnymi diagramami interakcji.
Uzasadnij potrzeb sporz dzania harmonogramów interakcji.
Jakie rodzaje diagramów j zyka UML mo na uznać za ródłowe dla diagramów
harmonogramowania? Wyja nij dlaczego.
Wymie przykłady instancji klasyfikatorów, których stany mog być
odzwierciedlane na diagramie harmonogramowania. Wska typowe stany
dla ka dego z nich.
260 (05-11-10) D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc
5R]G]LD 0 'LDJUDP KDUPRQRJUDPRZDQLD
Czym jest linia zmiany stanu instancji klasyfikatora? Co oznaczaj jej
załamania?
Opieraj c si na diagramach 7.24 oraz 5.13, sporz d diagram
harmonogramowania opisuj cy funkcjonowanie:
t Licytacji,
t Egzaminu.
Jakich aspektów dotycz zaawansowane kategorie poj ciowe diagramów
harmonogramowania?
Na diagramie harmonogramowania instancji klasyfikatora Licytacja (pytanie 6.)
zaznacz i nazwij zdarzenia.
Uzupełnij tak sporz dzony diagram o ograniczenia czasowe. Przekształć
stosowan na nim notacj w alternatywn .
W jakim celu stosuje si harmonizacj ? Jakie warunki musz być spełnione,
aby zaprezentowanie harmonizacji na diagramie było mo liwe?
Opieraj c si na rysunku 7.17, sporz d diagram harmonogramowania.
Obligatoryjnie uwzgl dnij komunikaty.
Odwołaj si do strony internetowej www.bankier.pl. Wybierz produkty
finansowe o notowaniach skokowych. Na ich podstawie opracuj stosowny
diagram harmonogramowania.
Porównaj u yteczno ć i przejrzysto ć zapisu ogranicze czasowych
na diagramach harmonogramowania i diagramach sekwencji. Zilustruj wnioski
graficznie, korzystaj c z diagramu zamieszczonego na rysunku 9.2.
Jak przebiega proces tworzenia diagramów harmonogramowania? Uzasadnij
jego poszczególne etapy.
D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc (05-11-10) 261
&] Ł , 0 3RGVWDZ\ M]\ND 80/
262 (05-11-10) D:\! AAA DZISIAJ\J zyk UML 2.0 w modelowaniu systemów informatycznych\06 poprawki\09.doc


Wyszukiwarka

Podobne podstrony:
diagram harmonogramowania
SRA harmonogram sesji egzaminacyjnych 09
III WL harmonogram 08 09
harmonogram$7 213 09
2008 Harmonogram etap praktyczny zima 09
IV WL harmonogram 08 09
harmonogram III WL 09 10
Harmonogram K5 090 09
pref 09
amd102 io pl09
2002 09 Creating Virtual Worlds with Pov Ray and the Right Front End
Analiza?N Ocena dzialan na rzecz?zpieczenstwa energetycznego dostawy gazu listopad 09
2003 09 Genialne schematy

więcej podobnych podstron