EBOOKI WYDAWCY
Wydawca:
Format:
epub, mobi, ibuk
Książka przedstawia sposób modelowania systemów informacyjnych z wykorzystaniem podejścia obiektowego i języka UML 2.1. Czytelnik znajdzie w niej współczesne spojrzenie na modelowanie i projektowanie systemów informatycznych w ujęciu obiektowym zilustrowane praktycznymi przykładami wykorzystania języka UML w różnorodnych obszarach. W książce zgromadzono wiedzę najlepszych praktyk oraz często popełnianych przez projektantów błędów. Pozwoliło to na zbudowanie unikatowego repozytorium obszernej wiedzy z zakresu modelowania za pomocą języka UML.
Najważniejszą zaletą książki jest skoncentrowanie się autorów na praktycznych aspektach wykorzystania języka UML. Autorzy prezentują w niej zastosowania tego języka w różnych obszarach, od projektowania systemów czasu rzeczywistego poprzez projektowanie baz danych aż po modelowanie systemów biznesowych.
Książka skierowana jest przede wszystkim do studentów kierunków informatycznych oraz kierunków ekonomicznych i zarządzania mających w programie modelowanie biznesowe i projektowanie systemów informacyjnych oraz do praktyków pracujących przy tworzeniu systemów informatycznych. Może być też przydatna jako pomoc przy prowadzeniu kursów i szkoleń z zakresu modelowania biznesowego i projektowania systemów w języku UML.
Rok wydania | 2009 |
---|---|
Liczba stron | 308 |
Kategoria | Zastosowania informatyki |
Wydawca | Wydawnictwo Naukowe PWN |
ISBN-13 | 978-83-01-21108-0 |
Numer wydania | 1 |
Język publikacji | polski |
Informacja o sprzedawcy | ePWN sp. z o.o. |
EBOOKI WYDAWCY
POLECAMY
Ciekawe propozycje
Spis treści
1. Wprowadzenie | 13 |
2. Modelowanie – cele i metody | 15 |
2.1. Przegląd rozdziału | 15 |
2.1.1. Czego dotyczy ten rozdział? | 15 |
2.1.2. Co powinieneś wiedzieć, aby zrozumieć? | 15 |
2.1.3. Jakie najważniejsze problemy rozwiążemy w tym rozdziale? | 15 |
2.1.4. Czego dowiesz się po jego przeczytaniu? | 15 |
2.1.5. Dlaczego warto przeczytać ten rozdział? | 16 |
2.2. Czym jest, a czym nie jest model systemu? | 16 |
2.2.1. Czym jest model systemu? | 20 |
2.3. Po co budować modele? | 20 |
2.4. Rodzaje modeli | 21 |
2.5. Odbiorcy i użytkownicy modeli | 24 |
2.6. Język opisu modeli | 25 |
2.6.1. Cechy dobrego modelu | 25 |
2.6.2. Jak popsuć model? Cechy złego modelu | 26 |
2.7. Podsumowanie | 27 |
2.8. Czego dotyczył rozdział? | 28 |
2.8.1. Czego nauczyłeś się w tym rozdziale? | 28 |
2.8.2. Jakich błędów warto unikać? | 28 |
2.9. Ćwiczenia sprawdzające | 28 |
2.9.1. Pytania testowe | 28 |
2.9.2. Pytania otwarte | 28 |
2.10. Słowniczek pojęć wprowadzonych w rozdziale | 29 |
2.11. Przegląd literatury | 29 |
3. Modelowanie biznesowe | 31 |
3.1. Przegląd rozdziału | 31 |
3.1.1. Czego dotyczy ten rozdział? | 31 |
3.1.2. Co powinieneś wiedzieć, aby zrozumieć? | 31 |
3.1.3. Jakie najważniejsze problemy rozwiążemy w tym rozdziale? | 31 |
3.1.4. Czego dowiesz się po jego przeczytaniu? | 31 |
3.2. Czym jest modelowanie biznesowe | 31 |
3.3. Notacja i semantyka modeli biznesowych wyrażonych w języku UML | 33 |
3.4. Model biznesowy firmy zarządzającej nieruchomościami | 34 |
3.4.1. Wstęp do zarządzania nieruchomościami – opis werbalny modelu biznesowego | 34 |
3.4.1.1. Regulacje prawne | 34 |
3.4.1.2. Podstawowe pojęcia | 35 |
3.4.1.3. Mapowanie procesów biznesowych na elementy modelu biznesowego | 37 |
3.4.1.4. Model analityczny | 39 |
3.4.1.5. Realizacja biznesowego przypadku użycia Odbierz media i usługę | 40 |
3.4.1.6. Realizacja biznesowego przypadku użycia Prowadź nadzór techniczny nad nieruchomością | 42 |
3.4.1.7. Realizacja biznesowego przypadku użycia Rozlicz finanse nieruchomości | 45 |
3.4.1.8. Realizacja Wykonaj bieżące naprawy i remonty | 48 |
3.4.1.9. Realizacja Wykonaj uchwałę właścicieli | 49 |
3.5. Patrząc w przyszłość: Jak z modelu biznesowego zrobić model przypadków użycia | 51 |
3.6. Czego dotyczył rozdział? | 52 |
3.6.1. Czego nauczyłeś się w tym rozdziale? | 52 |
3.6.2. Jakich błędów warto unikać? | 52 |
3.7. Ćwiczenia sprawdzające | 53 |
3.7.1. Pytania testowe | 53 |
3.7.2. Pytania otwarte | 53 |
3.8. Słowniczek pojęć wprowadzonych w rozdziale | 53 |
3.9. Przegląd literatury | 54 |
4. Modelowanie wymagań | 55 |
4.1. Przegląd rozdziału | 55 |
4.1.1. Czego dotyczy ten rozdział? | 55 |
4.1.2. Co powinieneś wiedzieć, aby zrozumieć? | 55 |
4.1.3. Jakie najważniejsze problemy rozwiążemy w tym rozdziale? | 55 |
4.1.4. Czego dowiesz się po jego przeczytaniu? | 55 |
4.1.5. Dlaczego warto przeczytać ten rozdział? | 56 |
4.2. Czym są wymagania dla systemu informatycznego? | 56 |
4.3. Rodzaje wymagań | 57 |
4.3.1. Wymagania funkcjonalne | 57 |
4.3.1.1. Język naturalny | 58 |
4.3.1.2. Język naturalny strukturalny | 58 |
4.3.1.3. Tablice i formularze | 58 |
4.3.1.4. Diagramy blokowe | 59 |
4.3.1.5. Diagramy kontekstowe | 59 |
4.3.1.6. Diagramy przypadków użycia | 59 |
4.3.1.7. Formalizm matematyczny | 59 |
4.3.1.8. Formularz wymagań funkcjonalnych | 59 |
4.3.2. Wymagania niefunkcjonalne | 60 |
4.3.2.1. Wymagania dotyczące produktu | 60 |
4.3.2.2. Wymagania dotyczące procesu | 60 |
4.3.2.3. Wymagania zewnętrzne | 60 |
4.3.2.4. Weryfikowanie wymagań niefunkcjonalnych | 60 |
4.4. Metody pozyskiwania i dokumentowania wymagań | 61 |
4.4.1. Wywiady i przeglądy | 61 |
4.4.2. Studia nad istniejącym oprogramowaniem | 62 |
4.4.3. Studia wymagań systemowych | 62 |
4.4.4. Studia osiągalności | 62 |
4.4.5. Prototypowanie | 62 |
4.4.5.1. Jakość dokumentu wymagań | 63 |
4.4.5.2. Opis wymagań z wykorzystaniem przypadków użycia | 64 |
4.4.6. Konwencje typograficzne i opis szablonu | 66 |
4.5. Dokument Specyfikacji Wymagań | 67 |
4.5.1. Struktura Dokumentu Specyfikacji Wymagań | 68 |
4.5.2. Wzorzec szablonu specyfikacji wymagań funkcjonalnych | 70 |
4.6. Najczęstsze błędy popełniane przy modelowaniu wymagań | 72 |
4.7. Ćwiczenia sprawdzające | 72 |
4.7.1. Pytania testowe | 72 |
4.7.2. Pytania otwarte | 73 |
4.8. Słowniczek pojęć wprowadzonych w rozdziale | 73 |
4.9. Przegląd literatury | 73 |
5. Modelowanie systemów czasu rzeczywistego w języku UML | 75 |
5.1. Wprowadzenie | 75 |
5.1.1. Czego dotyczy ten rozdział? | 75 |
5.1.2. Co powinieneś wiedzieć, aby zrozumieć? | 76 |
5.1.3. Jakie najważniejsze problemy rozwiążemy w tym rozdziale? | 76 |
5.1.4. Czego dowiesz się po jego przeczytaniu? | 76 |
5.1.5. Dlaczego warto przeczytać ten rozdział? | 76 |
5.2. UML w modelowaniu systemów czasu rzeczywistego | 77 |
5.2.1. Mechanizmy rozszerzeń języka UML | 79 |
5.2.1.1. Stereotypy | 80 |
5.2.1.2. Metki | 81 |
5.2.1.3. Ograniczenia | 81 |
5.2.2. Analiza rozszerzeń języka UML dla SCR | 82 |
5.3. Modelowanie statyki SCR | 82 |
5.3.1. Klasy czy kapsuły? | 83 |
5.3.2. Porty | 84 |
5.3.3. Łączniki | 87 |
5.4. Modelowanie dynamiki systemów uwarunkowanych czasowo | 87 |
5.4.1. Protokoły | 87 |
5.4.2. Maszyny stanowe | 89 |
5.5. Warsztat projektanta systemów czasu rzeczywistego | 90 |
5.6. Cechy dobrego modelu SCR | 94 |
5.6.1. Pokładowy system sterowania podwieszeniami | 94 |
5.6.1.1. Wymagania wobec pokładowego systemu sterowania podwieszeniami | 95 |
5.6.1.2. Modelowanie struktury PSSP | 97 |
5.6.1.3. Modelowanie dynamiki PSSP | 100 |
5.6.2. Projekt systemu sterowania automatem do serwowania gorących napojów | 101 |
5.6.2.1. Wymagania wobec SSA | 102 |
5.6.2.2. Struktura SSA | 104 |
5.6.2.3. Model dynamiki SSA | 107 |
5.7. Sięgając poza UML dla SCR | 109 |
5.7.1. Dlaczego warto sterować rozwojem systemów poprzez modele? | 110 |
5.7.2. MDA | 111 |
5.7.3. MDA a MDSD | 113 |
5.7.4. Co dalej z językiem UML | 114 |
5.8. Ćwiczenia sprawdzające | 115 |
5.8.1. Pytania testowe | 115 |
5.8.2. Pytania otwarte | 116 |
5.9. Słownik pojęć wprowadzonych w rozdziale | 116 |
5.10. Przegląd literatury | 117 |
6. Modelowanie baz danych | 119 |
6.1. UML w modelowaniu baz danych | 119 |
6.2. Modelowanie danych | 119 |
119 | |
6.2.0.1. Przypadki użycia | 119 |
6.2.0.2. Diagram klas | 120 |
6.2.0.3. Zastosowanie podejścia tabelarycznego do tworzenia architektury aplikacji | 121 |
6.2.1. Struktura DataSet | 121 |
6.2.2. Podejście tabelaryczne | 122 |
6.2.3. Domenowy model organizacji aplikacji | 123 |
6.2.3.1. Sposób działania | 123 |
6.2.3.2. Kiedy stosować model obiektowy? | 125 |
6.2.4. Architektura aplikacji wykorzystująca elementy typu DataSet | 126 |
6.2.4.1. Architektura aplikacji | 127 |
6.2.4.2. Implementacja | 128 |
6.2.4.3. Struktura | 132 |
6.2.4.4. Przykład z użyciem CodeSmith | 144 |
6.3. Podsumowanie | 147 |
6.4. Ćwiczenia sprawdzające | 148 |
6.4.1. Pytania testowe | 148 |
6.4.2. Pytania otwarte | 148 |
6.5. Słowniczek pojęć wprowadzonych w rozdziale | 148 |
6.6. Przegląd literatury | 149 |
7. Wspomaganie modelowania przez narzędzia CASE | 151 |
7.1. Czym są pakiety CASE? | 151 |
7.2. Przegląd dostępnych narzędzi CASE | 151 |
7.2.1. Case/4/0 | 152 |
7.2.2. Oracle Designer | 152 |
7.2.3. IBM Rational Suite Enterprise | 153 |
7.2.4. IBM Rational Software Architect | 153 |
7.2.5. Enterprise Architect | 154 |
7.2.6. StarUML | 154 |
7.3. Narzędzia CASE w praktyce | 155 |
7.3.1. „Hurtownia” – narzędzia CASE w projektowaniu systemów biznesowych | 155 |
7.3.1.1. Model przypadków użycia | 155 |
7.3.1.2. Model analityczny | 162 |
7.3.1.3. Model projektu | 166 |
7.3.2. System „Bankomat” – narzędzia CASE w systemach wbudowanych | 169 |
7.3.2.1. Perspektywa przypadków użycia | 169 |
7.3.2.2. Perspektywa projektowa | 172 |
7.3.2.3. Perspektywa komponentów | 178 |
7.3.2.4. Perspektywa wdrożenia | 179 |
7.4. Kierunki rozwoju narzędzi CASE | 179 |
8. Przegląd diagramów języka UML | 183 |
8.1. Diagram przypadków użycia | 183 |
8.1.1. Diagram przypadków użycia – definicja i zastosowanie | 183 |
8.1.2. Diagram przypadków użycia – notacja i semantyka | 183 |
8.1.2.1. Przypadek użycia | 184 |
8.1.2.2. Aktor | 186 |
8.1.2.3. Strukturalne związki zawierania i rozszerzenia | 188 |
8.1.2.4. Generalizacja | 189 |
8.1.3. Diagram przypadków użycia – przykładowe zastosowanie | 190 |
8.1.4. Od wymagań werbalnych po wymagania wizualne | 191 |
8.1.5. Pięć najczęściej popełnianych błędów | 196 |
8.1.6. Wymagania funkcjonalne to nie wszystko | 200 |
8.1.7. Patrząc w przyszłość | 201 |
8.2. Diagram pakietów | 202 |
8.2.1. Diagram pakietów – definicja i zastosowanie | 202 |
8.2.2. Diagram pakietów – notacja i semantyka | 203 |
8.2.2.1. Pakiet | 203 |
8.2.2.2. Zagnieżdżenie | 204 |
8.2.2.3. Generalizacja | 204 |
8.2.2.4. Zależność | 205 |
8.2.2.5. Zależność ze stereotypem Import | 206 |
8.2.3. Diagram pakietów – przykładowe zastosowanie | 206 |
8.2.4. Patrząc w przyszłość | 207 |
8.3. Diagram klas | 207 |
8.3.1. Diagram klas – definicja i zastosowanie | 207 |
8.3.2. Diagram klas – notacja i semantyka | 208 |
8.3.2.1. Klasa | 208 |
8.3.2.2. Interfejs | 209 |
8.3.2.3. Związek asocjacji (powiązania) | 210 |
8.3.2.4. Związek agregacji | 210 |
8.3.2.5. Silna agregacja (kompozycja) | 211 |
8.3.2.6. Związek zależności | 212 |
8.3.2.7. Związek generalizacji | 213 |
8.3.2.8. Liczebność | 213 |
8.3.3. Diagram klas – przykładowe zastosowanie | 214 |
8.3.4. Patrząc w przyszłość | 215 |
8.4. Diagram obiektów | 215 |
8.4.1. Diagram obiektów – definicja i zastosowanie | 215 |
8.4.2. Diagram obiektów – notacja i semantyka | 216 |
8.4.2.1. Obiekt | 216 |
8.4.2.2. Związek asocjacji (powiązania) | 219 |
8.4.2.3. Związek agregacji | 220 |
8.4.3. Diagram obiektów – przykładowe zastosowanie | 220 |
8.4.4. Patrząc w przyszłość | 220 |
8.5. Diagram czynności | 222 |
8.5.1. Diagram czynności – definicja i zastosowanie | 222 |
8.5.2. Diagram czynności – notacja i semantyka | 222 |
8.5.2.1. Aktywność | 222 |
8.5.2.2. Czynność | 223 |
8.5.2.3. Przepływ sterujący | 223 |
8.5.2.4. Przepływ obiektu | 223 |
8.5.2.6. Warunek wstępny i warunek końcowy | 223 |
8.5.2.7. Obiekt | 224 |
8.5.2.8. Magazyn danych | 225 |
8.5.2.9. Węzeł końcowy | 225 |
8.5.2.10. Węzeł początkowy | 225 |
8.5.2.11. Zakończenie przepływu | 226 |
8.5.2.12. Węzeł decyzyjny | 226 |
8.5.2.13. Węzeł połączenia | 228 |
8.5.2.14. Węzeł rozwidlenia | 228 |
8.5.2.15. Węzeł scalenia | 229 |
8.5.2.16. Partycja aktywności | 230 |
8.5.3. Diagram czynności – przykładowe zastosowanie | 230 |
8.5.4. Patrząc w przyszłość | 231 |
8.6. Diagram maszyny stanowej | 232 |
8.6.1. Diagram maszyny stanowej – definicja i zastosowanie | 232 |
8.6.2. Diagram maszyny stanowej – notacja i semantyka | 232 |
8.6.2.1. Stan | 232 |
8.6.2.2. Przejście | 232 |
8.6.2.3. Stan początkowy | 233 |
8.6.2.4. Stan końcowy | 234 |
8.6.2.5. Maszyna stanowa | 234 |
8.6.2.6. Punkt wejścia | 235 |
8.6.2.7. Punkt wyjścia | 235 |
8.6.2.8. Stan wznowienia | 235 |
8.6.2.9. Węzeł wyboru | 236 |
8.6.2.10. Węzeł rozwidlenia | 237 |
8.6.3. Diagram maszyny stanowej – przykładowe zastosowanie | 237 |
8.6.4. Patrząc w przyszłość | 238 |
8.7. Diagramy sekwencji | 239 |
8.7.1. Diagram sekwencji – definicja i zastosowanie | 239 |
8.7.2. Diagram sekwencji – notacja i semantyka | 239 |
8.7.2.1. Linia życia | 240 |
8.7.2.2. Komunikat | 240 |
8.7.2.3. Fragment | 242 |
8.7.2.4. Wystąpienie interakcji | 244 |
8.7.2.5. Punkt końcowy i startowy | 245 |
8.7.2.6. Brama | 247 |
8.7.3. Diagram sekwencji – przykładowe zastosowanie | 247 |
8.7.4. Najczęściej popełniane błędy | 249 |
8.7.5. Scenariusze na różnym poziomie abstrakcji | 255 |
8.7.6. Patrząc w przyszłość | 256 |
8.8. Diagramy komunikacji | 256 |
8.8.1. Diagram komunikacji – definicja i zastosowanie | 256 |
8.8.2. Diagram komunikacji – notacja i semantyka | 257 |
8.8.2.1. Obiekt | 257 |
8.8.2.2. Komunikat | 257 |
8.8.3. Diagram komunikacji – przykładowe zastosowanie | 258 |
8.8.4. Patrząc w przyszłość | 258 |
8.9. Diagramy przebiegów czasowych | 259 |
8.9.1. Diagramy przebiegów czasowych – definicja i zastosowanie | 259 |
8.9.2. Diagramy przebiegów czasowych – notacja i semantyka | 259 |
8.9.2.1. Linia stanów | 259 |
8.9.2.2. Linia wartości | 260 |
8.9.2.3. Etykieta wiadomości | 261 |
8.9.2.4. Wiadomość końcowa | 261 |
8.9.2.5. Brama diagramu | 262 |
8.9.2.6. Wiadomość | 262 |
8.9.3. Diagram przebiegów czasowych – przykładowe zastosowanie | 263 |
8.9.4. Patrząc w przyszłość | 264 |
8.10. Diagramy widoku interakcji | 264 |
8.10.1. Diagram widoku interakcji – definicja i zastosowanie | 264 |
8.10.2. Diagram widoku interakcji – notacja i semantyka | 265 |
8.10.2.1. Interakcja | 265 |
8.10.2.2. Egzemplarz interakcji | 265 |
8.10.2.3. Węzeł końcowy | 266 |
8.10.2.4. Węzeł początkowy | 266 |
8.10.2.5. Zakończenie przepływu | 266 |
8.10.2.6. Węzeł decyzyjny | 266 |
8.10.2.7. Węzeł połączenia | 268 |
8.10.2.8. Węzeł rozwidlenia | 268 |
8.10.2.9. Węzeł scalenia | 269 |
8.10.2.10. Przepływ sterujący | 270 |
8.10.3. Diagram widoku interakcji – przykładowe zastosowanie | 271 |
8.10.4. Patrząc w przyszłość | 272 |
8.11. Diagram komponentów | 272 |
8.11.1. Diagram komponentów – definicja i zastosowanie | 272 |
8.11.2. Diagram komponentów – notacja i semantyka | 273 |
8.11.2.1. Komponent | 273 |
8.11.2.2. Interfejs | 273 |
8.11.2.3. Połączenie zespolone | 274 |
8.11.2.4. Port | 275 |
8.11.2.5. Artefakt | 275 |
8.11.3. Diagram komponentów – przykładowe zastosowanie | 276 |
8.11.4. Patrząc w przyszłość | 277 |
8.12. Diagram struktury | 277 |
8.12.1. Diagram struktury – definicja i zastosowanie | 277 |
8.12.2. Diagram struktury – notacja i semantyka | 278 |
8.12.2.1. Część | 278 |
8.12.2.2. Port | 279 |
8.12.2.3. Element współpracy | 279 |
8.12.2.4. Użycie elementu współpracy | 279 |
8.12.2.5. Połączenie | 280 |
8.12.2.6. Zależność reprezentacji | 280 |
8.12.2.7. Zależność wystąpienia | 280 |
8.12.2.8. Związek roli | 281 |
8.12.3. Diagram struktury – przykładowe zastosowanie | 281 |
8.12.4. Patrząc w przyszłość | 284 |
8.13. Diagram wdrożenia | 283 |
8.13.1. Diagram wdrożenia – definicja i zastosowanie | 283 |
8.13.2. Diagram wdrożenia – notacja i semantyka | 284 |
8.13.2.1. Węzeł | 284 |
8.13.2.2. Komponent | 284 |
8.13.2.3. Artefakt | 285 |
8.13.2.4. Specyfikacja wdrożenia | 285 |
8.13.2.5. Środowisko wykonania | 286 |
8.13.2.6. Urządzenie | 286 |
8.13.2.7. Asocjacja (powiązanie) | 287 |
8.13.2.8. Manifest | 287 |
8.13.2.9. Zależność | 287 |
8.13.3. Diagram wdrożenia – przykładowe zastosowanie | 287 |
8.14. Przegląd literatury | 288 |
Wykaz tabel | 291 |
Wykaz rysunków | 293 |
Skorowidz | 303 |