Cyfroteka.pl

klikaj i czytaj online

Cyfro
Czytomierz
00186 008698 10442864 na godz. na dobę w sumie
Język UML 2.0 w modelowaniu systemów informatycznych - książka
Język UML 2.0 w modelowaniu systemów informatycznych - książka
Autor: , , Liczba stron: 456
Wydawca: Helion Język publikacji: polski
ISBN: 83-7361-892-9 Data wydania:
Lektor:
Kategoria: ebooki >> komputery i informatyka >> programowanie >> uml - programowanie
Porównaj ceny (książka, ebook, audiobook).

Poznaj uniwersalne narzędzie projektowania obiektowego

Rosnąca popularność programowania obiektowego zmieniła również metody modelowania systemów informatycznych. Modelowanie strukturalne zostało zastąpione przez modelowanie obiektowe. Standardem w tej dziedzinie stał się język UML (Unified Modelling Language) -- graficzny system wizualizacji, specyfikowania oraz dokumentowania składników systemów informatycznych. Opis systemu wykonany za pomocą języka UML jest jednoznaczny, co bardzo ułatwia napisanie kodu źródłowego w oparciu o modele. Narzędzia do modelowania obiektowego umożliwiają wygenerowanie szkieletu klas i obiektów, a po odpowiednim zintegrowaniu ze środowiskiem programistycznym -- pozwalają na dwukierunkową synchronizację modelu z kodem źródłowym. W oparciu o język UML stworzona została metodyka projektowania oprogramowania nosząca nazwę RUP (Rational Unified Process) zyskująca coraz większe uznanie. Znajomość języka UML i metodologii RUP jest dziś istotnym elementem kwalifikacji kierownika projektów informatycznych. Znajomość języka UML i metodyki RUP jest aktualnie istotnym elementem kwalifikacji analityków, projektantów i kierowników projektów informatycznych a także składnikiem nowoczesnych programów studiów informatycznych.

Książka 'Język UML 2.0 w modelowaniu systemów informatycznych' to szczegółowy opis najnowszej specyfikacji tego języka w kontekście zastosowania go w procesie wytwarzania oprogramowania. Zawiera omówienie elementów języka UML oraz zasad projektowania obiektowego. Przedstawia sposoby prezentacji kolejnych etapów projektowania systemu za pomocą diagramów oraz różnice pomiędzy modelowaniem analitycznym i biznesowym. Czytając tę książkę poznasz również metodykę RUP oraz narzędzia, które można wykorzystać do tworzenia modeli w języku UML.

Modelowanie obiektowe to technologia przyszłości.
Poznaj ją już dziś.

Plakat dołączony do książki możesz pobrac w postaci pliku PDF z naszego serwera.

Znajdź podobne książki Ostatnio czytane w tej kategorii

Darmowy fragment publikacji:

IDZ DO IDZ DO PRZYK£ADOWY ROZDZIA£ PRZYK£ADOWY ROZDZIA£ SPIS TREŒCI SPIS TREŒCI KATALOG KSI¥¯EK KATALOG KSI¥¯EK KATALOG ONLINE KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK TWÓJ KOSZYK DODAJ DO KOSZYKA DODAJ DO KOSZYKA CENNIK I INFORMACJE CENNIK I INFORMACJE ZAMÓW INFORMACJE ZAMÓW INFORMACJE O NOWOŒCIACH O NOWOŒCIACH ZAMÓW CENNIK ZAMÓW CENNIK CZYTELNIA CZYTELNIA FRAGMENTY KSI¥¯EK ONLINE FRAGMENTY KSI¥¯EK ONLINE Wydawnictwo Helion ul. Chopina 6 44-100 Gliwice tel. (32)230-98-63 e-mail: helion@helion.pl Jêzyk UML 2.0 w modelowaniu systemów informatycznych Autorzy: Stanis³aw Wrycza, Bartosz Marcinkowski, Krzysztof Wyrzykowski ISBN: 83-7361-892-9 Format: B5, stron: 448 Poznaj uniwersalne narzêdzie projektowania obiektowego (cid:129) Diagramy jêzyka UML (cid:129) Modelowanie biznesowe (cid:129) Metodyki projektowe oparte na UML (cid:129) Narzêdzia CASE Rosn¹ca popularnoœæ programowania obiektowego zmieni³a równie¿ metody modelowania systemów informatycznych. Modelowanie strukturalne zosta³o zast¹pione przez modelowanie obiektowe. Standardem w tej dziedzinie sta³ siê jêzyk UML (Unified Modelling Language) — graficzny system wizualizacji, specyfikowania oraz dokumentowania sk³adników systemów informatycznych. Opis systemu wykonany za pomoc¹ jêzyka UML jest jednoznaczny, co bardzo u³atwia napisanie kodu Ÿród³owego w oparciu o modele. Narzêdzia do modelowania obiektowego umo¿liwiaj¹ wygenerowanie szkieletu klas i obiektów, a po odpowiednim zintegrowaniu ze œrodowiskiem programistycznym — pozwalaj¹ na dwukierunkow¹ synchronizacjê modelu z kodem Ÿród³owym. W oparciu o jêzyk UML stworzona zosta³a metodyka projektowania oprogramowania nosz¹ca nazwê RUP (Rational Unified Process) zyskuj¹ca coraz wiêksze uznanie. Znajomoœæ jêzyka UML i metodologii RUP jest dziœ istotnym elementem kwalifikacji kierownika projektów informatycznych. Znajomoœæ jêzyka UML i metodyki RUP jest aktualnie istotnym elementem kwalifikacji analityków, projektantów i kierowników projektów informatycznych a tak¿e sk³adnikiem nowoczesnych programów studiów informatycznych. (cid:129) Definiowanie wymagañ funkcjonalnych systemu za pomoc¹ diagramów przypadków u¿ycia (cid:129) Strukturyzacja przypadków u¿ycia i tworzenie diagramów klas (cid:129) Opis dzia³ania systemu w postaci diagramu czynnoœci i diagramu stanów (cid:129) Prezentacja komunikacji pomiêdzy elementami systemu za pomoc¹ diagramu interakcji (cid:129) Tworzenie diagramów wdro¿eniowych (cid:129) Modelowanie biznesowe i analityczne w metodyce RUP (cid:129) Narzêdzia CASE (cid:129) Plakat syntetycznie ujmuj¹cy notacjê UML 2.0 Modelowanie obiektowe to technologia przysz³oœci. Poznaj j¹ ju¿ dziœ Spis treści Wstęp .............................................................................................. 9 Część I Podstawy języka UML 2.0 .............................................13 Rozdział 1. Język UML — rozwój, struktura, pojęcia .......................................... 15 Znaczenie obiektowości w modelowaniu systemów informatycznych .......................... 15 Geneza i ewolucja języka UML ..................................................................................... 17 Diagramy UML 2.0 ........................................................................................................ 21 Perspektywy w opisie architektury systemu ................................................................... 25 Mechanizmy rozszerzalności .......................................................................................... 27 Stereotyp .................................................................................................................. 27 Ograniczenie ............................................................................................................ 28 Metka ....................................................................................................................... 28 Podstawowe pojęcia ....................................................................................................... 29 Pytania i zadania ............................................................................................................. 30 Rozdział 2. Diagramy przypadków użycia ........................................................... 33 Znaczenie diagramów przypadków użycia ..................................................................... 33 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................... 34 Przypadek użycia ..................................................................................................... 34 Aktor ........................................................................................................................ 35 Związek .................................................................................................................... 36 Zaawansowane składniki diagramu ................................................................................ 39 Rozbudowa DPU poprzez różnicowanie związków ................................................. 40 Zależności zawierania .............................................................................................. 40 Zależności rozszerzania ........................................................................................... 41 Uogólnienia .............................................................................................................. 43 Rodzaje aktorów ...................................................................................................... 45 Liczebność ............................................................................................................... 46 Nawigacja ................................................................................................................ 47 Realizacja ................................................................................................................. 49 Przypadki użycia typu CRUD .................................................................................. 49 Stosowanie nazw ścieżkowych ................................................................................ 50 Diagram kontekstowy .............................................................................................. 50 Dokumentacja przypadków użycia .......................................................................... 51 Proces tworzenia diagramu przypadków użycia ............................................................. 54 Studium diagramu przypadków użycia .......................................................................... 55 Podstawowe pojęcia ....................................................................................................... 56 Pytania i zadania ............................................................................................................. 57 4 Język UML 2.0 w modelowaniu systemów informatycznych Rozdział 3. Diagramy klas ................................................................................ 61 Znaczenie diagramów klas ............................................................................................. 61 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................... 61 Asocjacja .................................................................................................................. 64 Nazwy asocjacji ....................................................................................................... 65 Role .......................................................................................................................... 66 Nawigacja ................................................................................................................ 66 Liczebność ............................................................................................................... 66 Agregacja ................................................................................................................. 67 Zaawansowane składniki diagramu ................................................................................ 70 Rodzaje diagramów klas .......................................................................................... 71 Zobowiązania ........................................................................................................... 71 Widoczność .............................................................................................................. 72 Atrybuty i operacje statyczne ................................................................................... 73 Nazwy klas, atrybutów i operacji ............................................................................. 73 Notacja atrybutów i składnia operacji ...................................................................... 74 Klasy asocjacyjne ..................................................................................................... 77 Asocjacje zwrotne i wielokrotne .............................................................................. 79 Kwalifikacja ............................................................................................................. 79 Uogólnienia, klasy abstrakcyjne oraz konkretne ...................................................... 80 Zależność ................................................................................................................. 83 Realizacja ................................................................................................................. 83 Diagramy obiektów ........................................................................................................ 85 Proces tworzenia diagramu klas ..................................................................................... 86 Studium diagramu klas ................................................................................................... 87 Podstawowe pojęcia ....................................................................................................... 89 Pytania i zadania ............................................................................................................. 91 Rozdział 4. Diagramy czynności ........................................................................ 95 Znaczenie diagramów czynności .................................................................................... 95 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................... 96 Czynności a akcje ..................................................................................................... 96 Zaawansowane składniki diagramu ................................................................................ 99 Przepływy sterowania .............................................................................................. 99 Znacznik sterowania ................................................................................................ 99 Przepływy decyzyjne ............................................................................................. 100 Decyzja .................................................................................................................. 100 Łącznik ................................................................................................................... 104 Złączenie ................................................................................................................ 104 Przepływy współbieżne .......................................................................................... 106 Akcje ...................................................................................................................... 107 Przepływy danych .................................................................................................. 111 Przekaźniki danych ................................................................................................ 112 Parametr czynności ................................................................................................ 116 Wagi ....................................................................................................................... 117 Sygnały .................................................................................................................. 118 Bufor centralny ...................................................................................................... 118 Składnica danych ................................................................................................... 120 Partycje diagramów czynności ............................................................................... 121 Obszar rozszerzenia ............................................................................................... 127 Obszar przerwania .................................................................................................. 130 Manipulator wyjątków ........................................................................................... 131 Spis treści 5 Proces tworzenia diagramu czynności .......................................................................... 132 Studium diagramu czynności ....................................................................................... 133 Podstawowe pojęcia ..................................................................................................... 135 Pytania i zadania ........................................................................................................... 136 Rozdział 5. Diagramy maszyny stanowej .......................................................... 143 Znaczenie diagramów maszyny stanowej ..................................................................... 143 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................. 144 Zaawansowane składniki diagramu .............................................................................. 146 Sekcje symbolu graficznego stanu ......................................................................... 146 Klasyfikacja stanów ............................................................................................... 148 Obszary współbieżne ............................................................................................. 150 Pseudostany ............................................................................................................ 152 Rodzaje przejść ...................................................................................................... 157 Protokołowe maszyny stanowe .............................................................................. 158 Maszyny stanowe zachowania ............................................................................... 161 Zdarzenia ............................................................................................................... 163 Proces tworzenia diagramu maszyny stanowej ............................................................ 164 Studium diagramu maszyny stanowej .......................................................................... 165 Podstawowe pojęcia ..................................................................................................... 168 Pytania i zadania ........................................................................................................... 169 Rozdział 6. Diagramy interakcji ....................................................................... 173 Interakcje ...................................................................................................................... 173 Diagramy interakcji ...................................................................................................... 173 Składnia komunikatu .................................................................................................... 174 Podstawowe pojęcia ..................................................................................................... 177 Pytania i zadania ........................................................................................................... 177 Rozdział 7. Diagramy sekwencji ...................................................................... 179 Znaczenie diagramów sekwencji .................................................................................. 179 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................. 180 Rodzaje diagramów sekwencji ............................................................................... 180 Klasyfikator, komunikat i linia życia ..................................................................... 181 Rodzaje klasyfikatorów .......................................................................................... 183 Ośrodek sterowania ................................................................................................ 184 Zaawansowane składniki diagramu .............................................................................. 185 Rodzaje komunikatów ............................................................................................ 187 Tworzenie i niszczenie obiektów ........................................................................... 190 Warunki ................................................................................................................. 191 Samowywołanie ..................................................................................................... 192 Iteracja ................................................................................................................... 192 Rozgałęzienie ......................................................................................................... 194 Fragmenty wyodrębnione i operatory interakcji ..................................................... 196 Przywoływane wystąpienia interakcji .................................................................... 214 Bramy ..................................................................................................................... 216 Proces tworzenia diagramu sekwencji .......................................................................... 219 Studium diagramu sekwencji ....................................................................................... 219 Podstawowe pojęcia ..................................................................................................... 223 Pytania i zadania ........................................................................................................... 224 6 Język UML 2.0 w modelowaniu systemów informatycznych Rozdział 8. Diagramy komunikacji ................................................................... 231 Znaczenie diagramów komunikacji .............................................................................. 231 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................. 232 Numerowanie komunikatów .................................................................................. 233 Zasady wprowadzania komunikatów do diagramu ................................................ 234 Zaawansowane składniki diagramu .............................................................................. 235 Izomorfizm ............................................................................................................. 235 Zagnieżdżenie ........................................................................................................ 235 Poprzednik ............................................................................................................. 239 Współbieżność ....................................................................................................... 239 Obiekty wielokrotne ............................................................................................... 240 Klasy aktywne ........................................................................................................ 241 Inne kategorie zaawansowane ................................................................................ 242 Proces tworzenia diagramu komunikacji ...................................................................... 244 Studium diagramu komunikacji .................................................................................... 245 Podstawowe pojęcia ..................................................................................................... 247 Pytania i zadania ........................................................................................................... 247 Rozdział 9. Diagramy harmonogramowania ...................................................... 251 Znaczenie diagramów harmonogramowania ................................................................ 251 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................. 252 Zaawansowane składniki diagramu .............................................................................. 253 Zdarzenia i ograniczenia czasowe .......................................................................... 253 Alternatywne sposoby prezentacji stanów ............................................................. 254 Harmonizacja linii zmiany stanów ......................................................................... 254 Przesyłanie komunikatów ...................................................................................... 256 Diagramy sekwencji a harmonogramowanie ......................................................... 258 Proces tworzenia diagramu harmonogramowania ........................................................ 259 Podstawowe pojęcia ..................................................................................................... 260 Pytania i zadania ........................................................................................................... 260 Rozdział 10. Diagramy sterowania interakcją .................................................... 263 Znaczenie diagramów sterowania interakcją ................................................................ 263 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................. 264 Zaawansowane składniki diagramu .............................................................................. 266 Proces tworzenia diagramu sterowania interakcją ........................................................ 268 Studium diagramu sterowania interakcją ...................................................................... 268 Podstawowe pojęcia ..................................................................................................... 270 Pytania i zadania ........................................................................................................... 271 Rozdział 11. Diagramy wdrożeniowe .................................................................. 273 Znaczenie diagramów wdrożeniowych ........................................................................ 273 Diagramy komponentów .............................................................................................. 273 Interfejsy ................................................................................................................ 277 Specyfikacja komponentów ................................................................................... 278 Porty ....................................................................................................................... 280 Konektory .............................................................................................................. 280 Implementacyjny diagram komponentów .............................................................. 281 Diagramy rozlokowania ............................................................................................... 282 Węzły ..................................................................................................................... 284 Ścieżki komunikowania ......................................................................................... 285 Osadzone artefakty i komponenty .......................................................................... 286 Manifestowanie ...................................................................................................... 287 Specyfikacja rozlokowania .................................................................................... 289 Diagramy rozlokowania na poziomie fizycznym ................................................... 290 Spis treści 7 Proces tworzenia diagramów wdrożeniowych ............................................................. 291 Podstawowe pojęcia ..................................................................................................... 292 Pytania i zadania ........................................................................................................... 293 Rozdział 12. Diagramy struktur połączonych ..................................................... 299 Znaczenie diagramów struktur połączonych ................................................................ 299 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................. 300 Proces tworzenia diagramu struktur połączonych ........................................................ 302 Podstawowe pojęcia ..................................................................................................... 303 Pytania i zadania ........................................................................................................... 303 Rozdział 13. Diagramy pakietów ....................................................................... 305 Znaczenie diagramów pakietów ................................................................................... 305 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................. 305 Pakiet ..................................................................................................................... 306 Zależność ............................................................................................................... 307 Zagnieżdżenie pakietów ......................................................................................... 308 Zaawansowane składniki diagramu .............................................................................. 309 Stereotypowanie pakietów ..................................................................................... 310 Stereotypowanie zależności ................................................................................... 311 Proces tworzenia diagramu pakietów ........................................................................... 312 Studium diagramu pakietów ......................................................................................... 312 Podstawowe pojęcia ..................................................................................................... 314 Pytania i zadania ........................................................................................................... 314 Część II Metodyki, modele i narzędzia wspomagające UML 2 ....317 Rozdział 14. Metodyka RUP ............................................................................. 319 Znaczenie iteracyjno-przyrostowego procesu projektowania systemów ...................... 319 Struktura RUP .............................................................................................................. 321 Dyscypliny ............................................................................................................. 323 Fazy ........................................................................................................................ 325 Podstawowe pojęcia ..................................................................................................... 327 Pytania i zadania ........................................................................................................... 328 Rozdział 15. Modelowanie biznesowe ................................................................ 329 Znaczenie modelowania biznesowego ......................................................................... 329 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................. 330 Studium modelu biznesowego ...................................................................................... 331 Podstawowe pojęcia ..................................................................................................... 341 Pytania i zadania ........................................................................................................... 341 Rozdział 16. Modelowanie analityczne .............................................................. 343 Znaczenie modelowania analitycznego ........................................................................ 343 Podstawowe kategorie pojęciowe oraz notacja graficzna ............................................. 344 Proces tworzenia modelu analitycznego ....................................................................... 346 Studium modelu analitycznego .................................................................................... 349 Podstawowe pojęcia ..................................................................................................... 350 Pytania i zadania ........................................................................................................... 350 Rozdział 17. Komputerowe wspomaganie modelowania systemu ........................ 353 Pakiety CASE wspomagające UML i RUP .................................................................. 353 Zakres wspomagania diagramów UML ................................................................. 355 Generowanie szkieletowego kodu źródłowego ...................................................... 356 Inżynieria zwrotna .................................................................................................. 357 Obsługiwane platformy .......................................................................................... 358 8 Język UML 2.0 w modelowaniu systemów informatycznych Sparx Systems Enterprise Architect ............................................................................. 359 Narzędzia CASE firmy IBM pod marką Rational ........................................................ 362 IBM Software Development Platform .................................................................... 362 Zastosowanie IBM Rational Software Modeler ..................................................... 363 Poseidon for UML ........................................................................................................ 366 Platforma Eclipse ......................................................................................................... 366 UML i RUP w zasobach Internetu ............................................................................... 368 Podstawowe pojęcia ..................................................................................................... 369 Pytania i zadania ........................................................................................................... 369 Dodatki ......................................................................................371 Dodatek A Definicje i pojęcia ......................................................................... 373 Dodatek B Notacja graficzna .......................................................................... 381 Dodatek C Diagramy ...................................................................................... 389 Dodatek D UML 2.0 w liczbach ...................................................................... 399 Dodatek E Słownik polsko-angielski ............................................................... 401 Dodatek F Słownik angielsko-polski ............................................................... 409 Dodatek G Spis rysunków .............................................................................. 417 Dodatek H Spis tabel ..................................................................................... 423 Dodatek I Literatura ..................................................................................... 425 Contents ...................................................................................... 431 Skorowidz ..................................................................................... 437 Rozdział 9. Diagramy harmonogramowania Znaczenie diagramów harmonogramowania 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. Diagram harmonogramowania jest rodzajem diagramu interakcji, reprezentującym na osi czasu zmiany dopuszczalnych stanów, jakie może przyjmować instancja klasyfikatora uczestnicząca w interakcji. 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. 252 Część I ♦ Podstawy języka UML 2.0 Podstawowe kategorie pojęciowe oraz notacja graficzna 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): (cid:141) klasyfikator, (cid:141) nazwa stanu, (cid:141) 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: (cid:141) bezczynność, (cid:141) czuwanie, (cid:141) oczekiwanie, (cid:141) wykonywanie, (cid:141) 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. Rozdział 9. ♦ Diagramy harmonogramowania 253 Rysunek 9.1. Diagram harmonogramowania dla obiektu klasy Rezerwacja td Obsługa Rezerwacji j a c a w r e z e R wysyłanie opłacanie potwierdzanie sporządzanie Kwadrans 4 3 2 0 1 5 6 7 8 9 10 Zaawansowane składniki diagramu 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: (cid:141) zdarzenia, (cid:141) ograniczenia czasowe, (cid:141) alternatywne sposoby prezentacji stanów, (cid:141) harmonizacja linii zmiany stanów dla kilku instancji klasyfikatorów biorących udział w interakcji, (cid:141) przesyłanie komunikatów. Zdarzenia i ograniczenia czasowe 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: (cid:141) potwierdzanie — { 30 min}, (cid:141) sporządzanie — {30 min +/- 15 min}, (cid:141) 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. 254 Część I ♦ Podstawy języka UML 2.0 td Obsługa Rezerwacji { 30 min} j a c a w r e z e R wysyłanie opłacanie potwierdzanie sporządzanie {30 min +/- 15 min} { = 1 godzina} wydrukPotwierdzenia sporządzenieFaktury nadejściePotwierdzenia Kwadrans 0 1 2 3 4 5 6 7 8 9 10 Rysunek 9.2. Diagram harmonogramowania ze zdarzeniami i ograniczeniami czasowymi Alternatywne sposoby prezentacji stanów 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} j a c a w r e z e R potwierdzanie sporządzenieFaktury sporządzanie wysyłanie opłacanie nadejściePotwierdzenia wydrukPotwierdzenia Kwadrans 0 2 1 3 4 5 6 7 8 9 10 Rysunek 9.3. Alternatywna notacja diagramów harmonogramowania Harmonizacja linii zmiany stanów 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 Rozdział 9. ♦ Diagramy harmonogramowania 255 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 Hotelowa i j a t s n o c p e c e R a j c a w r e z e R I h c y n a D a z a B bezczynność wprowadzanie oczekiwanie wyświetlanie sprawdzanie danych rezerwowanie potwierdzanie oczekiwanie przetwarzanie odpowiadanie Sekunda 0 5 10 15 20 25 30 Rysunek 9.4. 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: (cid:141) Recepcjonista, (cid:141) IRezerwacja, (cid:141) BazaDanych. 256 Część I ♦ Podstawy języka UML 2.0 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 Hotelowa a t s i n o j c p e c e R a j c a w r e z e R I h c y n a D a z a B bezczy- nność wprow. oczekiwanie wprowadzanie oczekiwanie wprow. bezczynność wyświe- tlanie sprawdzanie danych wyświetlanie rezerwo- wanie potw. wyświetlanie oczekiwanie prze- twarz. odpow. oczekiwanie prze- twarz. odpow. oczekiwanie Sekunda 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Rysunek 9.5. Rejestrowanie rezerwacji w bazie danych hotelu — notacja alternatywna Przesyłanie komunikatów 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 Rozdział 9. ♦ Diagramy harmonogramowania 257 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: (cid:141) otwórzRezerwację, (cid:141) sprawdźDostępnośćPokoi, (cid:141) wprowadźDane, (cid:141) dokonajRezerwacji, (cid:141) potwierdźRezerwację, (cid:141) zamknij. Zostały one wprowadzone do diagramu harmonogramowania zilustrowanego na ry- sunku 9.6. td Rezerwacja Hotelowa i j a t s n o c p e c e R przyjęcieZgłoszenia zamknięcieAplikacji bezczynność wprowadzanie oczekiwanie otwórzRezerwację wprowadźDane zamknij a j c a w r e z e R I h c y n a D a z a B wyświetlanie sprawdzanie danych rezerwowanie potwierdzanie oczekiwanie przetwarzanie odpowiadanie sprawdźDostępnośćPokoi dokonajRezerwacji potwierdźRezerwację Sekunda 0 5 10 15 20 25 30 Rysunek 9.6. Komunikaty na diagramach harmonogramowania 258 Część I ♦ Podstawy języka UML 2.0 Diagramy sekwencji a harmonogramowanie Pewne elementy harmonogramowania, w szczególności ograniczenia czasowe, można przedstawić na diagramach sekwencji. Wprowadza się je: (cid:141) nad symbolem komunikatu pomiędzy dwoma instancjami klasyfikatorów — w przypadku wskazywania czasu wykonania operacji inicjowanej przez komunikat; (cid:141) 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. Kierownik IHarmonogram BazaDanych inicjujNoweSpotkanie(data, uczestnicy) utwórzPołączenie {0..5s} wyświetl( Połączenie nawiązane ) {t = czasBieżący} zapisz(data, uczestnicy) {0..3s} weryfikujPotwierdzenia(dataSpotkania) {t = czasBieżący+15} wyświetl( Spotkanie zarejestrowane ) pobierzDane(potwierdzenie) {0..3s} wyświetl(potwierdzenie) {0..1s} Rysunek 9.7. 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 Rozdział 9. ♦ Diagramy harmonogramowania 259 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ę. Proces tworzenia diagramu harmonogramowania 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ą: 1. identyfikacja interakcji udokumentowanej diagramem sekwencji lub diagramem komunikacji, 2. przeniesienie lub dobór klasyfikatorów, 3. identyfikacja stanów każdej instancji klasyfikatora z wykorzystaniem diagramów maszyny stanowej, 4. ustalenie horyzontu czasowego diagramu, 5. wyspecyfikowanie linii zmiany stanu instancji klasyfikatorów, 6. wprowadzenie ograniczeń czasowych dla poszczególnych stanów instancji klasyfikatora, 7. nazwanie i wprowadzenie odpowiednich zdarzeń na podstawie diagramów maszyny stanowej, 8. harmonizacja linii zmiany stanu wszystkich instancji klasyfikatorów interakcji prezentowanych na diagramie, 9. 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. 260 Część I ♦ Podstawy języka UML 2.0 Podstawowe pojęcia Diagram harmonogramowania Definicja Klasyfikator Linia zmiany stanów Nazwa stanu Notacja Klasyczna Alternatywna Proces tworzenia Diagram komunikacji Izomorfizm Stan Bezczynność Czuwanie Obliczanie Oczekiwanie Wykonywanie Diagram maszyny stanowej Diagram sekwencji Ośrodek sterowania Linia życia Harmonizacja Interakcja Iteracja Komunikat Przesyłanie Asynchroniczny Oczekujący Opcjonalny Synchroniczny Zwrotny Ograniczenie czasowe Skala czasu Stan System Czasu rzeczywistego Wbudowany Warunek Zdarzenie Pytania i zadania 1. Wyjaśnij zależności pomiędzy poszczególnymi diagramami interakcji. 2. Uzasadnij potrzebę sporządzania harmonogramów interakcji. 3. Jakie rodzaje diagramów języka UML można uznać za źródłowe dla diagramów harmonogramowania? Wyjaśnij dlaczego. 4. Wymień przykłady instancji klasyfikatorów, których stany mogą być odzwierciedlane na diagramie harmonogramowania. Wskaż typowe stany dla każdego z nich. Rozdział 9. ♦ Diagramy harmonogramowania 261 5. Czym jest linia zmiany stanu instancji klasyfikatora? Co oznaczają jej załamania? 6. Opierając się na diagramach 7.24 oraz 5.13, sporządź diagram harmonogramowania opisujący funkcjonowanie: (cid:141) Licytacji, (cid:141) Egzaminu. 7. Jakich aspektów dotyczą zaawansowane kategorie pojęciowe diagramów harmonogramowania? 8. Na diagramie harmonogramowania instancji klasyfikatora Licytacja (pytanie 6.) zaznacz i nazwij zdarzenia. 9. Uzupełnij tak sporządzony diagram o ograniczenia czasowe. Przekształć stosowaną na nim notację w alternatywną. 10. W jakim celu stosuje się harmonizację? Jakie warunki muszą być spełnione, aby zaprezentowanie harmonizacji na diagramie było możliwe? 11. Opierając się na rysunku 7.17, sporządź diagram harmonogramowania. Obligatoryjnie uwzględnij komunikaty. 12. Odwołaj się do strony internetowej www.bankier.pl. Wybierz produkty finansowe o notowaniach skokowych. Na ich podstawie opracuj stosowny diagram harmonogramowania. 13. 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. 14. Jak przebiega proces tworzenia diagramów harmonogramowania? Uzasadnij jego poszczególne etapy.
Pobierz darmowy fragment (pdf)

Gdzie kupić całą publikację:

Język UML 2.0 w modelowaniu systemów informatycznych
Autor:
, ,

Opinie na temat publikacji:


Inne popularne pozycje z tej kategorii:


Czytaj również:


Prowadzisz stronę lub blog? Wstaw link do fragmentu tej książki i współpracuj z Cyfroteką: