POLECAMY
Książka jest nowoczesnym podręcznikiem inżynierii oprogramowania. Obejmuje wszystkie etapy wytwarzania oprogramowania: od określenia wymagań, poprzez proces wytwórczy, aż po konserwację produktu. Łączy ścisły opis działań analitycznych zmierzających do zbudowania koncepcji rozwiązania z praktycznym przedstawieniem technologii implementacyjnych używanych do wygenerowania kodu programu. Zawiera obszerne omówienie metod i technik testowania i zapewnienia jakości oprogramowania oraz zarządzania przebiegiem projektów informatycznych, w tym:
Rok wydania | 2010 |
---|---|
Liczba stron | 424 |
Kategoria | Programowanie |
Wydawca | Wydawnictwo Naukowe PWN |
ISBN-13 | 978-83-01-16179-8 |
Numer wydania | 1 |
Język publikacji | polski |
Informacja o sprzedawcy | ePWN sp. z o.o. |
POLECAMY
Ciekawe propozycje
Spis treści
Przedmowa | 7 |
Część I. Procesy i metody | 13 |
1. Wprowadzenie | 13 |
1.1. Proces rozwoju systemu informatycznego | 15 |
1.2. Określenie wymagań | 19 |
1.3. Wytwarzanie oprogramowania | 21 |
1.3.1. Procesy | 23 |
1.3.2. Metody | 30 |
1.4. Weryfikacja i zatwierdzanie | 33 |
1.5. Inżynieria oprogramowania | 37 |
1.5.1. Raport Chaos | 38 |
1.5.2. Polski rynek IT | 40 |
1.6. Historia i kierunki rozwoju | 43 |
2. Inżynieria wymagań | 50 |
2.1. Klasyfikacja wymagań | 51 |
2.1.1. Zakres wymagań | 51 |
2.1.2. Poziomy opisu wymagań | 54 |
2.2. Proces określania wymagań | 57 |
2.2.1. Analiza SWOT | 58 |
2.2.2. Studium wykonalności | 62 |
2.2.3. Przygotowanie wykonania projektu | 64 |
2.3. Pozyskiwanie i dokumentowanie wymagań | 66 |
2.3.1. Metody pozyskiwania wymagań | 67 |
2.3.2. Specyfikacja wymagań | 68 |
2.4. Prototypowanie (prototyping) | 71 |
2.5. Zarządzanie wymaganiami | 74 |
2.6. Uwagi bibliograficzne | 76 |
3. Metody strukturalne | 79 |
3.1. Narzędzia modelowania | 80 |
3.1.1. Hierarchia funkcji | 80 |
3.1.2. Diagram przepływu danych | 82 |
3.1.3. Diagram encji | 85 |
3.1.4. Schemat struktury | 87 |
3.2. Techniki analizy strategicznej | 89 |
3.2.1. Modelowanie przetwarzania | 90 |
3.2.2. Modelowanie danych | 93 |
3.2.3. Schemat kontekstu | 96 |
3.3. Techniki analizy strukturalnej | 98 |
3.3.1. Budowa modelu fizycznego | 99 |
3.3.2. Budowa modelu logicznego | 103 |
3.3.3. Modelowanie danych | 106 |
3.3.4. Budowa nowego modelu fizycznego | 108 |
3.4. Techniki projektowania aplikacji | 110 |
3.4.1. Projektowanie struktury programu | 111 |
3.4.2. Projektowanie bazy danych | 114 |
3.4.3. Projektowanie interfejsu użytkownika | 117 |
3.4.4. Technologie wspomagające | 119 |
3.5. Uwagi bibliograficzne | 120 |
4. Metody obiektowe | 123 |
4.1. Narzędzia modelowania | 124 |
4.1.1. Model przypadków użycia | 126 |
4.1.2. Diagram klas | 132 |
4.2. Modelowanie procesów biznesowych | 140 |
4.2.1. Narzędzia modelowania | 141 |
4.2.2. Budowa modelu | 144 |
4.3. Modelowanie wymagań użytkownika | 150 |
4.3.1. Budowa modelu biznesowego | 153 |
4.3.2. Budowa modelu systemowego | 155 |
4.3.3. Reguły biznesowe | 160 |
4.4. Modelowanie dziedziny | 161 |
4.4.1. Narzędzia modelowania | 161 |
4.4.2. Modelowanie struktury | 165 |
4.4.3. Modelowanie zachowania | 168 |
4.5. Projektowanie oprogramowania | 170 |
4.5.1. Narzędzia modelowania struktury | 171 |
4.5.2. Narzędzia modelowania współdziałania | 175 |
4.5.3. Projektowanie architektury oprogramowania | 178 |
4.5.4. Projektowanie programów | 183 |
4.6. Technologie obiektowe | 195 |
4.6.1. Architektura warstwowa | 196 |
4.6.2. Projektowanie architektury oprogramowania | 198 |
4.6.3. Projektowanie programów | 203 |
4.7. Proces RUP | 209 |
4.7.1. Faza rozpoczęcia | 211 |
4.7.2. Faza opracowania | 213 |
4.7.3. Faza konstrukcji | 215 |
4.7.4. Faza przekazania | 216 |
4.8. Uwagi bibliograficzne | 217 |
5. Testowanie oprogramowania | 220 |
5.1. Poziomy testowania | 221 |
5.2. Organizacja procesu testowania | 226 |
5.2.1. Planowanie testów | 226 |
5.2.2. Przygotowanie testów | 228 |
5.2.3. Testowanie a usuwanie defektów | 231 |
5.3. Metryki | 232 |
5.3.1. Metryki pokrycia kodu | 233 |
5.3.2. Metryki pokrycia wymagań | 236 |
5.3.3. Inne metryki | 237 |
5.4. Metody testowania | 240 |
5.4.1. Testowanie czarnej skrzynki | 241 |
5.4.2. Testowanie białej skrzynki | 244 |
5.5. Automatyzacja testowania | 246 |
5.6. Uwagi bibliograficzne | 251 |
Część II. Zarządzanie projektami | 255 |
6. Zarządzanie projektem informatycznym | 255 |
6.1. Struktura organizacyjna projektu | 256 |
6.1.1. Schemat struktury organizacyjnej | 256 |
6.1.2. Projekty zamawiane | 259 |
6.2. Planowanie projektu | 261 |
6.2.1. Określenie podziału pracy | 262 |
6.2.2. Tworzenie harmonogramu | 267 |
6.2.3. Plan projektu | 272 |
6.3. Planowanie kosztów | 274 |
6.3.1. Heurystyczne metody szacowania | 275 |
6.3.2. Analityczne metody szacowania | 277 |
6.3.3. Tworzenie budżetu | 287 |
6.4. Zarządzanie przebiegiem projektu | 288 |
6.4.1. Kontrola postępów | 289 |
6.4.2. Działania korekcyjne | 290 |
6.5. Zarządzanie ryzykiem | 294 |
6.6. Metoda PRINCE2 | 298 |
6.7. Uwagi bibliograficzne | 302 |
7. Zarządzanie jakością | 305 |
7.1. Jakość oprogramowania (ISO 9126) | 306 |
7.1.1. Model jakości | 307 |
7.1.2. Metryki jakości | 309 |
7.2. System zarządzania jakością | 312 |
7.2.1. Kompleksowe zarządzanie jakością (TQM) | 313 |
7.2.2. Norma ISO 9001 | 314 |
7.2.3. Model CMMI | 318 |
7.3. Metody zapewnienia jakości | 319 |
7.3.1. Standardy | 320 |
7.3.2. Przeglądy i inspekcje | 323 |
7.3.3. Projektowanie metryk jakości (GQM) | 325 |
7.4. Plan zapewnienia jakości | 330 |
7.5. Uwagi bibliograficzne | 332 |
8. Metodyka zwinna | 334 |
8.1. Planowanie wydania | 335 |
8.2. Iteracja projektu | 338 |
8.2.1. Planowanie iteracji | 339 |
8.2.2. Wykonanie iteracji | 341 |
8.3. Zasady | 343 |
8.3.1. Reguły tworzenia kodu | 343 |
8.3.2. Metody pracy | 345 |
8.3.3. Manifest zwinności | 346 |
8.4. Praktyki zwinne | 347 |
8.5. Uwagi końcowe | 348 |
9. Konserwacja oprogramowania | 350 |
9.1. Struktura konserwacji | 351 |
9.2. Proces konserwacji | 353 |
9.2.1. Procedura kontroli zmian | 354 |
9.2.2. Norma IEEE 1219 | 355 |
9.3. Inżynieria odwrotna | 357 |
9.4. Systemy odziedziczone | 360 |
9.4.1. Opakowanie | 362 |
9.4.2. Korporacyjna szyna usług | 363 |
9.5. Uwagi bibliograficzne | 364 |
10. Systemy krytyczne | 366 |
10.1. Wymagania | 367 |
10.2. Analiza bezpieczeństwa | 371 |
10.3. Projektowanie strukturalne | 376 |
10.3.1. Proces projektowy | 376 |
10.3.2. Budowa modelu funkcjonalnego | 378 |
10.3.3. Budowa modelu implementacyjnego | 382 |
10.4. Automatyczna generacja programów | 387 |
10.5. Uwagi bibliograficzne | 393 |
Bibliografia | 394 |
Indeks | 410 |