what is stlc v model
Czym jest model STLC V?
Jedna z głównych przeszkód wodospad model STLC polegał na tym, że defekty zostały znalezione na bardzo późniejszym etapie procesu tworzenia oprogramowania, ponieważ testy przeprowadzono na końcu cyklu rozwoju. Naprawa defektów stała się bardzo trudna i kosztowna, ponieważ została znaleziona na bardzo późniejszym etapie. Aby rozwiązać ten problem, wprowadzono nowy model rozwoju zwany „V Model”
Model V jest obecnie jednym z najczęściej używanych procesów tworzenia oprogramowania. Wprowadzenie modelu V faktycznie dowiodło implementacji testów już od fazy wymagań. Model V nazywany jest również modelem weryfikacji i walidacji.
Czego się nauczysz:
Weryfikacja i walidacja
Aby zrozumieć model V, przyjrzyjmy się najpierw, czym jest weryfikacja i walidacja w oprogramowaniu.
Weryfikacja : Weryfikacja to technika analizy statycznej. W tej technice testowanie odbywa się bez wykonywania kodu. Przykłady obejmują - recenzje, inspekcje i instruktaż.
Uprawomocnienie : Walidacja to technika analizy dynamicznej, w której testowanie odbywa się poprzez wykonanie kodu. Przykłady obejmują funkcjonalne i niefunkcjonalne techniki testowania.
Model V.
W modelu V czynności programistyczne i QA są wykonywane jednocześnie. Nie ma oddzielnej fazy zwanej testowaniem, a raczej testowanie rozpoczyna się od fazy wymagań. Działania weryfikacyjne i walidacyjne idą w parze.
Aby zrozumieć model V, spójrzmy na poniższy rysunek:
czym jest testowanie czarnoskrzynkowe i testowanie białej skrzynki na przykładzie
W typowym procesie programowania lewa strona przedstawia czynności związane z rozwojem, a prawa strona przedstawia czynności testowe. Nie powinienem się mylić, jeśli powiem, że w fazie rozwoju zarówno weryfikacja, jak i walidacja są wykonywane wraz z faktycznymi działaniami rozwojowymi.
Przyjrzyjmy się teraz liczbie:
Lewa strona
Jak wspomniano wcześniej, działania po lewej stronie to działania rozwojowe. Normalnie czujemy jakie testy możemy przeprowadzić w fazie rozwoju, ale to jest piękno tego modelu, które pokazuje, że testy można przeprowadzić również na wszystkich etapach prac rozwojowych.
Analiza wymagań : Na tym etapie wymagania są zbierane, analizowane i badane. Tutaj sposób implementacji systemu nie jest ważny, ale to, co system ma robić, jest ważne. Sesje burzy mózgów / instruktaż, wywiady są przeprowadzane, aby cele były jasne.
- Działania weryfikacyjne : Przegląd wymagań.
- Działania walidacyjne : Utworzenie UAT ( Test akceptacji użytkownika ) przypadki testowe
- Wytworzone artefakty : Dokument zrozumienia wymagań, przypadki testowe UAT.
Wymagania systemowe / Projekt wysokiego poziomu : W tej fazie tworzony jest projekt oprogramowania na wysokim poziomie. Zespół bada i bada, w jaki sposób można wdrożyć wymagania. Badana jest również techniczna wykonalność wymagań. Zespół wymyśla również moduły, które zostaną utworzone / zależności, wymagania sprzętowe / programowe
- Działania weryfikacyjne : Przeglądy projektów
- Działania walidacyjne : Stworzenie Plan testów systemu i przypadków, Tworzenie mierników identyfikowalności
- Wytworzone artefakty : Przypadki testowe systemu, raporty wykonalności, plan testów systemu, wymagania sprzętowe i programowe, moduły do utworzenia itp.
Styl architektoniczny: W tej fazie, w oparciu o projekt wysokiego poziomu , tworzona jest architektura oprogramowania. W tej fazie finalizowane są moduły, ich relacje i zależności, diagramy architektoniczne, tabele bazy danych, szczegóły technologiczne.
- Działania weryfikacyjne : Przeglądy projektów
- Działania walidacyjne : Plan testów integracyjnych i przypadki testowe.
- Wytworzone artefakty : Dokumenty projektowe, plan testów integracyjnych i przypadki testowe, projekty tabel baz danych itp.
Projekt modułu / projekt niskopoziomowy: Na tym etapie każdy moduł komponentów oprogramowania jest projektowany indywidualnie. Metody, klasy, interfejsy, typy danych itp. Są finalizowane na tym etapie.
- Działania weryfikacyjne : Przeglądy projektów
- Działania walidacyjne : Tworzenie i przegląd przypadków testów jednostkowych.
- Wytworzone artefakty : Jednostkowe przypadki testowe,
Wdrożenie / Kod : Na tym etapie właściwe kodowanie jest zakończone.
- Działania weryfikacyjne : Przegląd kodu, przegląd przypadków testowych
- Działania walidacyjne : Tworzenie funkcjonalnych przypadków testowych.
- Wytworzone artefakty : przypadki testowe, lista kontrolna przeglądu.
Prawa strona
Prawa strona przedstawia czynności testowe lub fazę walidacji. Zaczniemy od dołu.
Testów jednostkowych: W tej fazie wykonywane są wszystkie przypadki testów jednostkowych, utworzone w fazie projektowania niskiego poziomu.
* Testowanie jednostkowe to technika testowania typu white box, w której zapisywany jest fragment kodu, który wywołuje metodę (lub dowolny inny fragment kodu) w celu sprawdzenia, czy fragment kodu daje oczekiwane dane wyjściowe, czy nie. Te testy są zasadniczo wykonywane przez zespół programistów. W przypadku jakichkolwiek anomalii usterki są rejestrowane i śledzone.
Wytworzone artefakty : Wyniki wykonania testów jednostkowych
Testy integracyjne : W tej fazie wykonywane są przypadki testowe integracji, które zostały utworzone w fazie projektowania architektonicznego. W przypadku jakichkolwiek anomalii usterki są rejestrowane i śledzone.
* Testowanie integracji: Testowanie integracji to technika, w ramach której testowane moduły są integrowane i sprawdzane, czy zintegrowane moduły dają oczekiwane wyniki. Mówiąc prościej, sprawdza, czy komponenty aplikacji współpracują ze sobą zgodnie z oczekiwaniami.
Wytworzone artefakty : Wyniki testu integracji.
Testowanie systemów : W tej fazie wykonywane są wszystkie przypadki testowe systemu, przypadki testów funkcjonalnych i niefunkcjonalne przypadki testowe. Innymi słowy, odbywa się tutaj faktyczne i pełne testowanie aplikacji. Usterki są rejestrowane i śledzone w celu ich usunięcia. Sprawozdawczość z postępów jest również istotną częścią tej fazy. Metryki identyfikowalności są aktualizowane w celu sprawdzenia pokrycia i ograniczenia ryzyka.
Wytworzone artefakty : Wyniki testów, dzienniki testów, raport defektów, raport podsumowujący testy i zaktualizowane macierze identyfikowalności.
Testy akceptacyjne użytkowników : Testy akceptacyjne są zasadniczo związane z testowaniem wymagań biznesowych. Tutaj przeprowadzane są testy w celu sprawdzenia, czy wymagania biznesowe są spełnione w środowisku użytkownika. Testowanie zgodności, a czasami testy niefunkcjonalne ( Obciążenie, stres i objętość ) testy są również wykonywane w tej fazie.
Wytworzone artefakty : Wyniki UAT, zaktualizowane macierze pokrycia biznesowego.
Kiedy używać modelu V?
Model V ma zastosowanie, gdy:
- Wymóg jest dobrze zdefiniowany i nie jest niejednoznaczny
- Kryteria akceptacji są dobrze zdefiniowane.
- Projekt jest krótki lub średni.
- Zastosowane technologie i narzędzia nie są dynamiczne.
Plusy i minusy korzystania z modelu V.
PROS | CONS |
---|---|
- Rozwój i postęp są bardzo zorganizowane i systematyczne | -Nie nadaje się do większych i złożonych projektów |
- Działa dobrze w przypadku mniejszych i średnich projektów. | - Nie nadaje się, jeśli wymagania nie są spójne. |
- Testowanie zaczyna się od początku, więc niejednoznaczności są identyfikowane od początku. | - Na etapie pośrednim nie jest tworzone żadne działające oprogramowanie. |
- Łatwość zarządzania, ponieważ każda faza ma dobrze zdefiniowane cele i cele. | - Brak możliwości przeprowadzenia analizy ryzyka, więc istnieje niepewność i ryzyko. |
rekomendowane lektury
- Samouczek testowania SOA: Metodologia testowania modelu architektury SOA
- Najlepsze narzędzia do testowania oprogramowania 2021 [Narzędzia do automatyzacji testów QA]
- Testowanie statyczne i testowanie dynamiczne - różnica między tymi dwoma ważnymi technikami testowania
- Model spiralny - Co to jest model spiralny SDLC?
- Praktyczne testowanie oprogramowania - nowy BEZPŁATNY eBook [Pobierz]
- Testy alfa i testy beta (kompletny przewodnik)
- Testing Primer Pobierz eBook
- Lokalny - offshore model projektów testowania oprogramowania (i jak sprawić, by to działało dla Ciebie)