Techniki szacowania testów w testowaniu oprogramowania

⚡ Inteligentne podsumowanie

Techniki szacowania testów oprogramowania pozwalają oszacować, ile czasu zajmie testowanie i ile będzie kosztować. Czteroetapowy proces – podział zadań, przypisanie właścicieli, oszacowanie nakładu pracy i walidacja z interesariuszami – przekształca niejasne harmonogramy w obronny plan, który kierownictwo może zatwierdzić.

  • 📋 Zacznij od podziału pracy: Podziel projekt na moduły, podmoduły i zadania, tak aby każdy szacunek obejmował małą, własną jednostkę pracy.
  • 🔢 Stosuj sprawdzone techniki: Estymacja punktu funkcyjnego i trzypunktowa dostarczają ustrukturyzowane liczby; szerokopasmowa analiza Delphi i punkt przypadku użycia zapewniają konsensus zespołowy.
  • ???? Przetłumacz wysiłek na koszt: Pomnóż szacowaną liczbę osobogodzin przez stawkę za cały zespół, aby uzyskać jasną kwotę budżetu dla działu finansowego.
  • 🛡️ Dodaj bufor i sprawdź poprawność: Przygotuj wszystko na czas urlopu, poprawek i niespodzianek, a następnie pozwól zarządowi przejrzeć i zatwierdzić plan.
  • 🤖 Wykorzystaj sztuczną inteligencję do udoskonalenia szacunków: Asystenci AI analizują historyczne projekty, oznaczają brakujące zadania i zalecają przedziały ufności dla każdej pozycji w planie.

Techniki szacowania testów oprogramowania

Co to jest szacowanie testów oprogramowania?

Oszacowanie testów oprogramowania To działanie zarządcze, które szacuje czas trwania i koszt zadania testowego. Stworzenie wiarygodnego oszacowania kosztów testów jest jednym z najważniejszych obowiązków w… zarządzanie testami ponieważ wpływa na decyzje dotyczące harmonogramu, budżetu i zasobów.

Dlaczego szacowanie testów ma znaczenie

Klienci zawsze zadają dwa pytania przed podpisaniem umowy testowej:

Dlaczego warto testować estymację

W przypadku małych projektów na te pytania łatwo odpowiedzieć. W przypadku większego projektu — na przykład testowania GuruStrona internetowa 99 Banku — potrzebna jest strukturalna technika obrony odpowiedzi.

Co oszacować?

Co szacować w zarządzaniu testami

  • Zasoby: ludzie, sprzęt, obiekty, fundusze i wszystko inne, co jest potrzebne do wykonania pracy.
  • Czas: najcenniejszy zasób w każdym projekcie — każde wydanie ma swój termin.
  • Umiejętności ludzkie: Wiedza i doświadczenie zespołu. Silniejsi testerzy kończą pracę szybciej niż zespół mniej doświadczony.
  • Koszty: budżet projektu — ile pieniędzy potrzeba na przeprowadzenie zaplanowanych testów.

Jak oszacować

Do typowych technik szacowania wyników testów oprogramowania należą:

  • Struktura podziału prac (WBS).
  • Oszacowanie trzypunktowe.
  • Szerokopasmowy Delphi.
  • Analiza punktów funkcyjnych i punktów testowych.
  • Metoda punktu użycia.
  • Rozkład procentowy.
  • Metoda ad hoc.

Lista technik szacowania

Poniższy czteroetapowy proces łączy kilka technik, aby uzyskać możliwą do obrony ocenę. W przykładzie wykorzystano GuruStudium przypadku 99 Banku.

Czteroetapowy proces szacowania

Krok 1) Podziel cały projekt na podzadania

Użyj Struktura podziału pracy Technika podziału złożonego projektu na moduły, podmoduły i ostatecznie najmniejsze, sensowne zadania. Szacunki są o wiele bardziej wiarygodne na poziomie liści niż w przypadku niejasnych projektów tytułowych.

Podziel projekt na podzadania

Zastosuj technikę przełamywania GuruProjekt 99 Banku podzielony jest na pięć mniejszych zadań:

Guru99 zadań bankowych

Następnie każde zadanie jest dzielone na podzadania, aż do momentu, gdy każdy wiersz będzie wystarczająco szczegółowy, aby umożliwić oszacowanie.

Zadanie Podzadanie
Analiza specyfikacji wymagań oprogramowania Zbadaj specyfikację wymagań.
Przeprowadź wywiady z programistami i innymi osobami zainteresowanymi, aby dowiedzieć się więcej o witrynie.
Utwórz specyfikację testu Zaprojektuj scenariusze testowe.
Utwórz przypadki testowe.
Revprzeglądać i korygować przypadki testowe.
Wykonaj przypadki testowe Zbuduj środowisko testowe.
Wykonaj przypadki testowe.
Revzobacz wyniki wykonania testu.
Zgłoś wady utworzyć ulegnie awarii? raporty.
Zgłoś usterki.

Krok 2) Przydziel każde zadanie członkowi zespołu

Przypisz każde podzadanie najbardziej odpowiedniemu właścicielowi.

Zadanie Właściciel
Analiza specyfikacji wymagań oprogramowania Wszyscy członkowie zespołu
Utwórz specyfikację testu Tester / Analityk testów
Zbuduj środowisko testowe Administrator testów
Wykonaj przypadki testowe Tester, administrator testów
Zgłoś wady Próbnik

Krok 3) Oszacowanie wysiłku dla każdego zadania

Na tym etapie dobrze sprawdzają się dwie uzupełniające się techniki:

  1. Metoda punktów funkcyjnych.
  2. Oszacowanie trzypunktowe.

Metoda 1) Metoda punktu funkcyjnego

Menedżer testów szacuje rozmiar, czas trwania i koszt każdego zadania.

Metoda punktu funkcyjnego

Krok A) Oszacuj rozmiar zadania

Podejmij zadanie „Stwórz specyfikację testu”. Jej rozmiar zależy od rozmiaru funkcjonalnego testowanego systemu – im więcej funkcji, tym bardziej złożony system. Punkty funkcyjne zazwyczaj dzieli się na trzy grupy: złożone, średnie i proste.

Grupy złożoności punktów funkcyjnych

Na podstawie stopnia złożoności Menedżer Testów przypisuje wagę każdemu punktowi funkcji:

Zarządzanie Ważenie
Kompleks 5
Średni 3
Prosty 1

GuruStrona internetowa 99 Banku jest podzielona na 12 punktów funkcyjnych. Ich złożoność podsumowano poniżej.

# Moduł Obowiązujące role OPIS Ważenie
1 Zapytanie o saldo Menedżer, Klient klient: przeglądać tylko saldo własnych kont.
Kierownik: przeglądać saldo każdego nadzorowanego klienta.
3
2 Transfer środków Menedżer, Klient klient: przelew środków z własnego konta do dowolnego miejsca.
Kierownik: przesyłanie środków z dowolnego źródła do dowolnego miejsca.
5
3 Mini oświadczenie Menedżer, Klient Ostatnie pięć transakcji na koncie.
klient: przeglądaj tylko własne konta.
Kierownik: przeglądaj dowolne konto.
3
4 Indywidualne oświadczenie Menedżer, Klient Transakcje filtrowane według daty lub wartości.
klient: tylko własne konta.
Kierownik: dowolne konto.
5
5 Zmień hasło Menedżer, Klient klient: zmień własne hasło.
Kierownik: zmienić własne hasło (nie klienta).
1
6 Nowy klient Menedżer Dodawaj i edytuj dane klienta (adres, adres e-mail, numer telefonu). 3
7 Nowe konto Menedżer Konta oszczędnościowe i bieżące; klient może posiadać wiele kont każdego typu. Menedżer dodaje nowe konta dla istniejących klientów. 5
8 Edytuj konto Menedżer Edytuj szczegóły istniejącego konta. 1
9 Usuń konto Menedżer Usuń istniejące konto klienta. 1
10 Usuń Klienta Menedżer Usuń klienta tylko wtedy, gdy nie ma żadnych aktywnych kont. 1
11 Depozyt Menedżer Wpłać gotówkę na dowolne konto w oddziale. 3
12 Wypłata Menedżer Wypłać gotówkę z dowolnego konta w oddziale. 3

Krok B) Oszacuj czas trwania zadania

Po ustaleniu stopnia skomplikowania oszacuj czas potrzebny na przetestowanie każdej grupy.

Obliczanie czasu trwania

  • Całkowity wysiłek: całkowity wysiłek włożony w przetestowanie każdej funkcji witryny.
  • Łączna liczba punktów funkcyjnych: Łączna liczba modułów witryny.
  • Szacunek na punkt funkcyjny: średni wysiłek na punkt; zależy od produktywności zespołu.

Załóżmy, że szacunek zespołu na punkt funkcyjny wynosi 5 godzin/punkt. Całkowity wysiłek na rzecz GuruPrzykład 99 Banku:

Zarządzanie Ważenie Punkty funkcyjne Cena produktu z VAT:
Kompleks 5 3 15
Średni 3 5 15
Prosty 1 4 4
Funkcja Suma punktów 34
Szacunek za punkt 5
Całkowity szacowany nakład pracy (osobogodziny) 170

Całkowity nakład pracy potrzebny do ukończenia „Stworzenia specyfikacji testu” wynosi około 170 osobogodzin. Gdy znany jest wymagany nakład pracy, można przydzielić zasoby, aby określić czas trwania i koszt.

Krok C) Oszacuj koszt zadań

Ten krok odpowiada na drugie pytanie klienta – „Ile to kosztuje?”. Załóżmy, że średnia stawka zespołu wynosi $ 5 / godzinaPowyższe zadanie zajmuje 170 godzin, więc koszt wynosi 170 × $5 = $850. Zastosuj te same obliczenia do każdego zadania WBS, aby ustalić budżet projektu.

Im dokładniejszy szacunek, tym lepiej możesz zarządzać budżetem projektu i mieć pewność, że każdy wydany dolar przyniesie zwrot.

Metoda 2) Oszacowanie trzypunktowe

Trzypunktowa estymacja to ustrukturyzowana technika, w której Menedżer Testów podaje trzy wartości dla każdego zadania — optymistyczny, najprawdopodobniej, pesymistyczny wysiłek — oparty na wcześniejszych doświadczeniach lub najlepszych przypuszczeniach.

Trzypunktowa ocena

W przypadku opcji „Utwórz specyfikację testu” możliwe są trzy wartości:

  • Najlepszy przypadek: 120 osobogodzin (~15 dni) w silnym, doświadczonym zespole.
  • Najprawdopodobniej: 170 osobogodzin (~21 dni) przy typowym zespole i zasobach.
  • Najgorszy przypadek: 200 osobogodzin (~25 dni) z mniej doświadczonym zespołem i dodatkowymi poprawkami.

Wartości parametrów

Oblicz średnią ważoną, korzystając ze wzoru PERT:

Wzór na trzy punkty

Wartość E jest Średnia ważona — szacunkowy tytuł artykułu „Stworzenie specyfikacji testów”.

Pytanie menedżera

Aby wyrazić zaufanie wokół E, oblicz odchylenie standardowe:

Wzór na odchylenie standardowe

Dla Guru99 Przykład banku, szacunki wychodzą na 166.6 ± 13.33 osobogodzin — w przedziale od 153.33 do 179.99 osobogodzin.

Krok 4) Zweryfikuj oszacowanie

Zbierz wszystkie szacunki zadań z WBS i przekaż plan zarządowi (dyrektorowi generalnemu, kierownikowi projektu, głównym interesariuszom) w celu przeglądu i zatwierdzenia.

Zatwierdź oszacowanie

Przedstaw zarządowi logicznie oszacowanie, aby zrozumiał założenia, wybrane techniki i plan awaryjny, który w nim zaplanowałeś.

Najlepsze praktyki szacowania testów

Dodaj czas buforowania

Plany rzadko wytrzymują zetknięcie z rzeczywistością — członkowie zespołu odchodzą, testy trwają dłużej niż oczekiwano, a zależności ulegają rozproszeniu. Zaplanuj rozsądny bufor czasowy w każdym oszacowaniu, aby harmonogram był odporny na drobne niespodzianki.

Zaplanuj dostępność zasobów

Uwzględnij planowane urlopy, szkolenia i dyżury. Szacunki nieuwzględniające dostępności wyglądają świetnie na papierze, ale w praktyce okazują się nieskuteczne.

Wykorzystaj swoje dotychczasowe doświadczenia jako punkt odniesienia

Dane historyczne z podobnych projektów są bezcenne. Jeśli testowałeś podobną stronę internetową w zeszłym roku, wyciągnij wnioski z jej rzeczywistych danych, napotkanych problemów i bufora, który uratował sytuację.

Trzymaj się szacunków, ale je przejrzyj

Szacunki nie są oszustwemtracts; są to najlepsze przypuszczenia. RevSprawdzaj je na znanych etapach i dostosowuj tylko wtedy, gdy wymagania ulegną istotnej zmianie lub gdy nowe informacje zmienią sytuację. Negocjuj każdą zmianę z klientem w sposób przejrzysty.

Szablon oszacowania testu oprogramowania

Pobierz plik Excel do szacowania testów oprogramowania (.xlsx)

Inne techniki szacowania

Oprócz WBS, estymacji punktów funkcyjnych i estymacji trzypunktowej powszechnie stosuje się kilka innych technik:

  • Szerokopasmowy Delphi: iteracyjna ocena konsensusu przez panel ekspertów.
  • Metoda punktów użycia: wymaga wysiłku wynikającego z liczby i złożoności przypadków użycia.
  • Rozkład procentowy: przeznacza stały procent całkowitego wysiłku w projekcie na testowanie.
  • Metoda ad hoc: ocena ekspercka w przypadku braku danych historycznych.

Szacowanie oddolne a odgórne

Praktyczne podejście do szacowania dzieli się również na dwie uzupełniające się strategie:

  • Oszacowanie oddolne: Oparte na zadaniach na najniższym poziomie WBS. Wielu interesariuszy, doświadczonych pracowników i współpracowników łączy swoje liczby, aby uzyskać dokładną sumę. Idealne rozwiązanie, gdy praca jest dobrze zrozumiana.
  • Oszacowanie odgórne: Klasyfikuje projekt według wielkości i złożoności oraz porównuje go z ukończonymi projektami o podobnym kształcie. Wykorzystuje również średni nakład pracy na walizka testowa i skaluje się według przewidywanej liczby przypadków. Przydatne na wczesnym etapie projektu, gdy brakuje szczegółów.

Większość zespołów łączy te dwa podejścia — odgórne, aby uzyskać główną liczbę, i oddolne, aby uzyskać pewność — i nakłada na wynik zaawansowane modele, gdy budżet uzasadnia taki wysiłek.

FAQ

Wysiłek mierzy całkowitą liczbę osobogodzin wymaganych do wykonania pracy. Czas trwania mierzy czas kalendarzowy potrzebny do wykonania zadania po przydzieleniu do niego osób. Zadanie trwające 170 godzin zajmuje 170 godzin jednej osobie, ale około 21 godzin dziesięciu osobom pracującym równolegle.

Zacznij od struktury podziału pracy (WBS), aby podzielić projekt, a następnie nałóż na nią oszacowanie punktów funkcyjnych lub trzypunktowe. WBS zapewnia strukturę; punkt funkcyjny lub trzypunktowy daje wartości, które można obronić.

Dziesięć do dwudziestu procent to typowy bufor dla stabilnych projektów. Zwiększ go w przypadku nowych domen, nieznanych narzędzi lub dużych zespołów. Zarezerwuj bufor dla nieznanych niewiadomych, a nie dla znanego zakresu.

Zespoły Agile wykorzystują punkty historii i pokera planistycznego do określania rozmiaru testów równolegle z rozwojem. Prędkość z poprzednich sprintów konwertuje punkty historii na przewidywany czas kalendarzowy, zastępując szczegółowe szacunki z góry.

PERT (ocena programu i RevTechnika iew) łączy szacunki optymistyczne (O), najbardziej prawdopodobne (M) i pesymistyczne (P) przy użyciu wzoru E = (O + 4M + P) / 6, aby wyznaczyć oczekiwany wysiłek.

RevDokonaj wyceny, gdy zakres projektu ulegnie zmianie, zależności się zmniejszą lub skład zespołu ulegnie znaczącej zmianie. Poinformuj o zmianie z wyprzedzeniem i renegocjuj ją z klientem, zanim po cichu przedłużysz termin.

Narzędzia AI analizują historyczne projekty, sugerują brakujące zadania, zalecają zakresy ufności i aktualizują plan w miarę napływania danych rzeczywistych. Zmniejsza to rozbieżność między planem a rzeczywistością i eliminuje martwe punkty.

Tak. Asystenci AI przekształcają brief projektu w strukturę podziału prac, klasyfikację punktów funkcyjnych i szacunki trzypunktowe ze wzorami, gotowe do przeglądu i udoskonalenia przez kierownika testów.

Podsumuj ten post następująco: