środa, 15 maja 2013

Małe jest piękne, czyli jak testować duże systemy

Osobiście uważam, że kluczem do sukcesu, czyli zapewnienia wysokiej jakości dużych systemów jest ich dekompozycja, rozumiana dwojako. Z jednej strony jest to dekompozycja funkcjonalna, na specjalizowane moduły lub usługi, z drugiej strony dekompozycja czasowa, czyli realizacja rozciągnięta w czasie. Jestem zdecydowaną zwolenniczką iteracyjnego podejścia. Jak w takim razie testować, zapewniać i kontrolować jakość?

Małe jest piękne

Przy projektowaniu rozwiązań warto zastanawiać się nad taką dekompozycją, która przede wszystkim umożliwi jak najszybsze uzyskanie korzyści biznesowych z wdrożenia. A idąc wstecz, umożliwi przetestowanie spójnego zakresu funkcjonalnego, łącznie z możliwością zintegrowania ze środowiskiem. Dlatego tak ważne jest uzgodnienie kolejnych etapów lub iteracji z klientem i wszystkimi dostawcami.

Optymalizacja kosztów testowania iteracyjnego

W przypadku iteracyjnego podejścia warto też zastanowić się nad kosztami przeprowadzania testów kolejnych iteracji. Dlatego warto zadbać o jak najlepszą izolacyjność pomiędzy kolejnymi iteracjami, aby nie było konieczności powtarzania i poszerzania zakresu testów. A nie jest to takie proste i oczywiste, bo o sposobie testowania nie zawsze myśli się w początkowych etapach realizacji projektu.

Refleksja

Współczesny świat, a w szczególności systemy informatyczne, robią się coraz bardziej skomplikowane i złożone, jak też są elementami złożonego otoczenia. I w zasadzie należy zaakceptować prawdę ze starego powiedzenia: "Nie ma dobrych rozwiązań, są tylko lepiej lub gorzej przetestowane". A to, jak dobrze, można coś przetestować, zależy od bardzo wielu czynników. Biorąc pod uwagę te czynniki, planuje się taki, a nie inny sposób testowania.


2 komentarze:

Zapraszam do komentowania