Co to jest szacowanie testów oprogramowania?
Szacowanie testu to czynność zarządcza, która określa w przybliżeniu, ile czasu zajmie wykonanie zadania. Szacowanie wysiłku związanego z testem jest jednym z głównych i ważnych zadań w zarządzaniu testami.
Dlaczego warto testować oszacowanie?
Dwa pytania, których możesz oczekiwać od swoich klientów, omawiając potencjalne zlecenia testowe, to
W przypadku małych projektów odpowiedzi na te pytania są stosunkowo łatwe. Ale w przypadku dużego projektu, takiego jak strona internetowa Testing Guru99 Bank, musisz mocno pomyśleć, aby odpowiedzieć na te pytania.
W tym samouczku nauczysz się:
- Co to jest szacowanie testów oprogramowania?
- Dlaczego warto testować oszacowanie?
- Co oszacować?
- Jak wycenić?
- Krok 1) Podziel całe zadanie projektowe na podzadania
- Krok 2) Przydziel każde zadanie członkowi zespołu
- Krok 3) Szacowanie nakładu pracy dla zadań
- Metoda 1) Metoda punktów funkcyjnych
- Metoda 2) Trzypunktowe oszacowanie
- Krok 4) Zatwierdź oszacowanie
- Najlepsze praktyki w zakresie szacowania testów
- Inne techniki
Co oszacować?
- Zasoby: zasoby są wymagane do wykonywania wszelkich zadań projektowych. Mogą to być ludzie, sprzęt, obiekty, fundusze lub cokolwiek innego, co można zdefiniować w celu ukończenia działania projektowego.
- Czasy: Czas jest najcenniejszym zasobem w projekcie. Każdy projekt ma określony termin dostawy.
- Umiejętności ludzkie: Umiejętności ludzkie to wiedza i doświadczenie członków Zespołu. Wpływają na twoją ocenę. Na przykład zespół, którego członkowie mają niskie umiejętności testowania, zajmie więcej czasu na ukończenie projektu niż zespół, który ma wysokie umiejętności testowania.
- Koszt: Koszt to budżet projektu . Ogólnie rzecz biorąc, oznacza to, ile pieniędzy potrzeba na ukończenie projektu.
Jak wycenić?
Lista technik szacowania testów oprogramowania
- Struktura podziału pracy
- Technika 3-punktowego testowania oprogramowania
- Technika szerokopasmowa Delphi
- Analiza punktu funkcyjnego / punktu testowego
- Użycie - metoda punktowa
- Rozkład procentowy
- Metoda ad-hoc
Poniżej przedstawiono 4-etapowy proces szacowania
Dowiesz się, jak połączyć te techniki, aby znaleźć oszacowanie dla studium przypadku Guru99 Bank.
Krok 1) Podziel całe zadanie projektowe na podzadania
Zadanie to praca, która została komuś powierzona. Aby to zrobić, możesz użyć techniki struktury podziału pracy .
W tej technice złożony projekt jest podzielony na moduły. Moduły są podzielone na podmoduły. Każdy podmoduł jest dalej podzielony na funkcje. Oznacza to podzielenie całego zadania projektowego na najmniejsze zadania.
Użyj struktury podziału pracy, aby rozbić projekt banku Guru99 na 5 mniejszych zadań:
Następnie możesz podzielić każde zadanie na podzadanie. Celem tego działania jest stworzenie zadania tak szczegółowego, jak to tylko możliwe .
Zadanie | Podzadanie |
---|---|
Przeanalizuj specyfikację wymagań oprogramowania | Zbadaj specyfikacje wymagań miękkich |
Wywiad z deweloperem i innymi zainteresowanymi stronami, aby dowiedzieć się więcej o witrynie | |
Utwórz specyfikację testu | Zaprojektuj scenariusze testów |
Twórz przypadki testowe | |
Przejrzyj i popraw przypadki testowe | |
Wykonaj przypadki testowe | Zbuduj środowisko testowe |
Wykonaj przypadki testowe | |
Przejrzyj wyniki wykonania testów | |
Zgłoś wady | |
Utwórz raporty defektów | |
Zgłoś wady |
Krok 2) Przydziel każde zadanie członkowi zespołu
Na tym etapie każde zadanie jest przypisywane do odpowiedniego członka zespołu projektowego. Możesz przydzielić zadanie w następujący sposób
Zadanie | Członkowie |
---|---|
Przeanalizuj specyfikację wymagań oprogramowania | Wszyscy członkowie |
Utwórz specyfikację testu | Tester / Analityk Testów |
Zbuduj środowisko testowe | Administrator testów |
Wykonaj przypadki testowe | Tester, Administrator Testów |
Zgłoś usterki | Próbnik |
Krok 3) Szacowanie nakładu pracy dla zadań
Istnieją 2 techniki, które można zastosować, aby oszacować nakład pracy związany z zadaniami
- Metoda punktów funkcjonalnych
- Szacowanie w trzech punktach
Metoda 1) Metoda punktów funkcyjnych
W tej metodzie Menedżer testów szacuje rozmiar, czas trwania i koszt zadań
Krok A) Oszacuj wielkość zadania
W kroku 1 już podzieliłeś całe zadanie projektowe na małe zadanie za pomocą metody WBS. Teraz szacujesz rozmiar tych zadań. Poćwiczmy z konkretnym zadaniem „ Utwórz specyfikację testu ”
Rozmiar tego zadania zależy od rozmiaru funkcjonalnego testowanego systemu. Rozmiar funkcjonalny odzwierciedla ilość funkcji, które są istotne dla użytkownika. Im więcej liczba funkcjonalności, im bardziej skomplikowany system.
Przed rozpoczęciem faktycznego szacowania nakładu pracy punkty funkcjonalne są podzielone na trzy grupy, takie jak Złożone , Średnie proste w następujący sposób:
Opierając się na kompleksie funkcji oprogramowania, Kierownik Testów musi nadać odpowiednią wagę każdemu punktowi funkcjonalnemu. Na przykład
Grupa | Waga |
---|---|
Złożony | 5 |
Średni | 3 |
Prosty | 1 |
Weźmy proste przykładowe ćwiczenie, aby było jaśniej:
Spójrz na specyfikację oprogramowania strony internetowej Guru99 Bank tutaj, inżynier oprogramowania już szczegółowo opisał moduły oprogramowania, czy możesz określić złożoność funkcji strony internetowej, podając wagę dla każdego modułu?
Im bardziej złożony jest punkt funkcyjny, tym większy jest wysiłek, aby go przetestować. Witryna jest podzielona na 12 punktów funkcyjnych , możesz określić złożoność każdego punktu funkcyjnego w następujący sposób:
Nie. | Nazwa modułu | Odpowiednie role | Opis | Waga |
---|---|---|---|---|
1. | Zapytanie o saldo | Kierownik klienta | Klient: klient może mieć wiele kont bankowych. Może przeglądać saldo swoich kont tylko. Menedżer: menedżer może przeglądać saldo wszystkich klientów, którzy podlegają jego nadzorowi | 3 |
2. | Transfer środków | Kierownik klienta | Klient: Klient może przesłać środki ze swojego „własnego” konta na dowolne konto docelowe. Menedżer: menedżer może przelać środki z dowolnego źródłowego konta bankowego na konto docelowe | 5 |
3. | Mini Statement | Kierownik klienta | Mini wyciąg pokaże 5 ostatnich transakcji na rachunku Klient: Klient może zobaczyć mini-wyciąg z tylko swoich „własnych” rachunków Menedżer: Menadżer może zobaczyć mini-wyciąg z dowolnego rachunku | 3 |
4. | Indywidualne oświadczenie | Kierownik klienta | Wyciąg niestandardowy umożliwia filtrowanie i wyświetlanie transakcji na koncie w oparciu o datę i wartość transakcji Klient: Klient może zobaczyć Indywidualne zestawienie tylko swoich „własnych” rachunków Menedżer: Menedżer może zobaczyć spersonalizowane zestawienie dowolnego rachunku | 5 |
5. | Zmień hasło | Kierownik klienta | Klient: Klient może zmienić hasło tylko do swojego konta. Menedżer: menedżer może zmienić hasło tylko do swojego konta. Nie może zmieniać haseł swoich klientów | 1 |
6. | Nowy klient | Menedżer | Menedżer: menedżer może dodać nowego klienta. Menedżer: menedżer może edytować szczegóły, takie jak adres, e-mail, telefon klienta. | 3 |
7. | Nowe konto | Menedżer | Obecnie system udostępnia 2 rodzaje kont
| 5 |
8. | Edytuj konto | Menedżer | Menedżer: menedżer może dodać edycję szczegółów konta dla istniejącego konta | 1 |
9. | Usuń konto | Menedżer | Menedżer: menedżer może dodać usunąć konto klienta. | 1 |
10. | Usuń klienta | Menedżer | Klient może zostać usunięty tylko wtedy, gdy nie ma aktywnych rachunków bieżących lub oszczędnościowych. Menedżer: Menedżer może usunąć klienta. | 1 |
11. | Kaucja | Menedżer | Menedżer: menedżer może wpłacić pieniądze na dowolne konto. Zwykle odbywa się przy wpłacie gotówki w oddziale banku. | 3 |
12. | Wycofanie | Menedżer | Menedżer: menedżer może wypłacić pieniądze z dowolnego konta. Zwykle odbywa się przy wypłacie gotówki w oddziale banku. | 3 |
KROK B) Oszacuj czas trwania zadania
Po sklasyfikowaniu złożoności punktów funkcyjnych musisz oszacować czas ich testowania. Czas trwania oznacza, ile czasu potrzeba na wykonanie zadania.
- Total Effort : Wysiłek polegający na całkowitym przetestowaniu wszystkich funkcji witryny
- Suma punktów funkcyjnych : Całkowita liczba modułów witryny
- Szacunek określony na punkty funkcyjne : średni wysiłek potrzebny do wykonania jednego punktu funkcyjnego. Wartość ta zależy od produktywności członka, który podejmie się tego zadania.
Załóżmy, że Twój zespół projektowy oszacował zdefiniowane punkty funkcyjne na 5 godzin / punkty . Możesz oszacować całkowity wysiłek, aby przetestować wszystkie funkcje strony internetowej Guru99 Bank w następujący sposób:
Waga | Liczba punktów funkcyjnych | Całkowity | |
---|---|---|---|
Złożony | 5 | 3 | 15 |
Średni | 3 | 5 | 15 |
Prosty | 1 | 4 | 4 |
Funkcja suma punktów | 34 | ||
Szacunek zdefiniować za punkt | 5 | ||
Całkowity szacowany wysiłek (godziny pracy) | 170 |
Zatem całkowity wysiłek potrzebny do wykonania zadania „Stworzenie specyfikacji testów” Guru99 Bank to około 170 roboczogodzin
Po zrozumieniu wymaganego wysiłku możesz przydzielić zasoby, aby określić, jak długo zajmie zadanie (czas trwania), a następnie możesz oszacować koszty robocizny i inne.
Powyższy przykład pokazuje również znaczenie członka w Twoim zespole. Jeśli masz utalentowanych i doświadczonych członków, możesz zakończyć powierzone zadanie w krótkim czasie, a Twój projekt zakończy się w terminie lub wcześniej.
KROK C) Oszacuj koszt zadań
Ten krok pomoże Ci odpowiedzieć na ostatnie pytanie klienta „ Ile to kosztuje?”
Załóżmy, że średnia pensja zespołu wynosi 5 dolarów za godzinę. Czas potrzebny na zadanie „Tworzenie specyfikacji testów” to 170 godzin. W związku z tym koszt zadania wynosi 5 * 170 = 850 USD. Teraz możesz obliczyć budżet dla innych działań w WBS i uzyskać całkowity budżet projektu.
Jako kierownik projektu musisz zdecydować, jak uzyskać największy zwrot z inwestycji swojej firmy. Im dokładniejsze jest oszacowanie kosztu projektu, tym lepiej będziesz w stanie zarządzać budżetem projektu.
METODA 2) Szacowanie w trzech punktach
Szacowanie trzypunktowe jest jedną z technik, które można wykorzystać do oszacowania zadania. Prostota trójpunktowego oszacowania sprawia, że jest to bardzo przydatne narzędzie dla Kierownika Projektu, który chce szacować.
W szacunkach trzypunktowych początkowo generowane są trzy wartości dla każdego zadania w oparciu o wcześniejsze doświadczenie lub najlepsze domysły, jak poniżej
Podczas szacowania zadania Kierownik Testów musi podać trzy wartości, jak określono powyżej. Zidentyfikowane trzy wartości szacują, co dzieje się w stanie optymalnym , co jest najbardziej prawdopodobne lub co naszym zdaniem byłby najgorszym scenariuszem.
Zobaczmy, jak użyć powyższych trzech wartości w poniższym przykładzie
Czy możesz oszacować nakład pracy związany z zadaniem „ Utwórz specyfikację testu ”? Pamiętaj, że musisz omówić wszystkie moduły strony internetowej Guru99 Bank, tak jak zostało to zrobione w metodzie punktów funkcyjnych
Możesz oszacować w następujący sposób
- Najlepszym wypadku do wykonania tego zadania wynosi 120 osobo-godzin (około 15 dni). W takim przypadku masz utalentowany zespół, który może wykonać zadanie w najkrótszym czasie.
- Najprawdopodobniej sprawa do wykonania tego zadania wynosi 170 osobo-godzin (około 21 dni). To normalny przypadek, masz wystarczające zasoby i możliwości, aby wykonać zadanie
- Najgorszym przypadku do wykonania tego zadania wynosi 200 osobo-godzin (około 25 dni). Musisz wykonać znacznie więcej pracy, ponieważ członkowie Twojego zespołu nie mają doświadczenia.
Teraz przypisz wartość do każdego parametru, jak poniżej
Wysiłek potrzebny do wykonania zadania można obliczyć za pomocą wzoru na rozkład podwójnego trójkąta w następujący sposób:
W powyższym wzorze parametr E jest znany jako średnia ważona . Jest to ocena zadania „Utwórz specyfikację testu”.
Ale twój szef może cię zapytać
W powyższym oszacowaniu wystarczy określić możliwą, a nie pewną wartość, musimy wiedzieć o prawdopodobieństwie, że oszacowanie jest prawidłowe. Możesz użyć innej formuły:
W powyższym wzorze, średnie odchylenie standardowe SD, wartość ta może dostarczyć informacji o prawdopodobieństwie, że oszacowanie jest poprawne.
Teraz możesz zakończyć oszacowanie dla zadania „Utwórz specyfikację testu”
Aby wykonać zadanie „Utwórz specyfikację testu” w witrynie Guru99 Bank, potrzebujesz 166,6 ± 13,33 Roboczogodziny (153,33 do 179,99 roboczogodzin)
Krok 4) Zatwierdź oszacowanie
Po utworzeniu łączną szacunkową dla wszystkich zadań wymienionych w WBS, należy przekazać go do zarządu , który będzie przeglądu i zatwierdzenia go.
Członek zarządu mógłby składać się z dyrektora generalnego, kierownika projektu i innych interesariuszy.
Zarząd zweryfikuje i omówi z Tobą Twój plan wyceny. Możesz wyjaśnić im swoje oszacowanie w sposób logiczny i rozsądny , aby mogli zatwierdzić Twój plan oszacowania.
Najlepsze praktyki w zakresie szacowania testów
W tym temacie przedstawiono ogólne wskazówki dotyczące szacowania dokładności testowania.
- Dodaj trochę czasu buforowego: wiele nieprzewidywalnych rzeczy może się wydarzyć w Twoim projekcie, np. Utalentowany członek zespołu nagle rezygnuje z pracy, testowanie zajmuje więcej czasu niż zakładano, aby zakończyć… itd. Dlatego w oszacowaniu należy uwzględnić bufor. Posiadanie bufora w estymacji pozwala poradzić sobie z ewentualnymi opóźnieniami.
- Szacowanie planowania zasobów konta: co należy zrobić, jeśli niektórzy członkowie zespołu biorą długie urlopy? Może to opóźnić realizację projektu, a planowanie zasobów w estymacji odgrywa kluczową rolę. Dostępność zasobów pomoże upewnić się, że szacunki są realistyczne. Tutaj musisz wziąć pod uwagę urlopy dla członka zespołu, zazwyczaj długie.
- Wykorzystaj doświadczenia z przeszłości jako odniesienie: Doświadczenia z poprzednich projektów odgrywają istotną rolę podczas przygotowywania szacunków czasowych. Ponieważ niektóre projekty mogą wykazywać pewne podobieństwa, możesz ponownie wykorzystać wcześniejsze oszacowanie. Na przykład, jeśli wykonujesz projekt, taki jak testowanie strony internetowej, możesz wyciągnąć wnioski z tego doświadczenia, spróbować uniknąć wszystkich trudności lub problemów, które napotkano w poprzednich projektach.
- Trzymaj się swoich szacunków: oszacowanie to tylko oszacowanie, ponieważ może się nie udać. Na wczesnych etapach projektu należy często ponownie sprawdzać szacunki testowe i wprowadzać modyfikacje w razie potrzeby. Nie powinniśmy przedłużać oszacowania po tym, jak go naprawimy, chyba że nastąpią poważne zmiany w wymaganiach lub musisz negocjować z klientem w sprawie ponownej wyceny
Szablon szacowania testów oprogramowania
Pobierz program Excel Test Estimation (.xlsx)
Inne techniki
Szerokopasmowa technika Delphi, metoda użycia - punktowy, rozkład procentowy, metoda ad-hoc to inne techniki szacowania w inżynierii oprogramowania.
Kliknij tutaj, jeśli wideo nie jest dostępne
Transkrypcja wideo- Zróbmy ćwiczenie - dla aplikacji Flight Reservation przygotuj strukturę podziału pracy
- różne zadania testowe, takie jak - Sprawdź funkcjonalność logowania, Sprawdź nowe funkcje zamówienia, Sprawdź funkcjonalność faksu i inne podobne funkcje oraz oszacuj wysiłek wymagany do przetestowania tych funkcji
- Na przykład funkcjonalność logowania można przetestować w ciągu 2 godzin. Podobnie przygotuj listę wszystkich zadań i odpowiadającego im wysiłku. Zatrzymaj samouczek i zakończ ćwiczenie. Mam nadzieję, że mądrze odgadłeś wymagany wysiłek
- To jest oddolna strategia szacowania testów. Technika ta nosi nazwę oddolnego, ponieważ na podstawie zadań znajdujących się na najniższym poziomie hierarchii podziału pracy szacuje się czas trwania, zależności i zasoby.
- W strategii oddolnej szacunki nie są dokonywane przez jedną osobę, ale przez wszystkich interesariuszy, indywidualnych współpracowników, ekspertów i doświadczonych pracowników łącznie. Chodzi o to, aby wykorzystać wspólną mądrość członków zespołu, aby uzyskać dokładne szacunki testowe
- Teraz, ponieważ masz duże doświadczenie w systemie rezerwacji lotów. Skorzystaj z tego doświadczenia, aby oszacować nakład pracy wymagany do pełnego testowania funkcjonalnego witryny internetowej. - http://newtours.demoaut.com/
- Ta strona funkcjonalnie jest identyczna z aplikacją rezerwacji lotów, tyle że jest oparta na sieci. Zatrzymaj samouczek i wykonaj ćwiczenie teraz
- Mam nadzieję, że opierając się na swoim doświadczeniu, dobrze oszacowałeś wysiłek wymagany do przetestowania strony
- Jest to podejście odgórne do szacowania, które opiera się na doświadczeniu.
- Inną techniką jest klasyfikowanie projektów na podstawie ich wielkości i złożoności, a następnie sprawdzanie, ile czasu zajmował projekt o określonej wielkości i złożoności w przeszłości.
- Innym podejściem jest określenie średniego wysiłku na przypadek testowy w przeszłości dla podobnych projektów, a następnie wykorzystanie szacunkowych przypadków testowych bieżącego projektu i osiągnięcie całkowitego wysiłku
- Bardziej zaawansowane modele estymacji obejmują złożone modele matematyczne. W praktyce większość projektów do szacowania stosuje podejście odgórne.
- Na szacunki testów może wpływać wiele czynników, takich jak presja czasowa, czynniki związane z ludźmi, geograficzne rozmieszczenie zespołu testowego i tak dalej