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