Współcześnie możemy wyróżnić różne koncepcje prowadzenia testów w projekcie. Mogą to być np.:
- usługa testowania zakupiona od zewnętrznego podmiotu,
- pojedynczy, niezależny tester w projekcie,
- tester w samoorganizującym się zespole,
- zespół testerski pod przewodnictwem kierownika testów.
Każdy z tych modeli pozwala na prowadzenie testów eksploracyjnych. Wprawdzie w pierwszym przypadku, tj. outsourcingu testerskiego, stosowane metody niespecjalnie nas zainteresują, ale powinniśmy zwrócić uwagę na czynności związane z testowaniem. Przyjrzyjmy się im dokładniej.
Pojedynczy, niezależny tester w projekcie
W tym podejściu tester staje się kierownikiem testów. Jeśli więc testy prowadzone są eksploracyjnie, to część swoich codziennych obowiązków należałoby określić mianem "zarządzania". Należy przez to rozumieć wszystkie działania, związane z definiowaniem celów testowania (co należy zweryfikować) oraz czas poświęcony każdej z funkcji i cech oprogramowania. To rozdzielenie obowiązków, choć z pozoru sztuczne, pozwala nam określić realny czas zarządzania projektem testowym oraz czas poświęcony na testowanie. Jest to w zasadzie przeniesienie, jeden do jednego, metryk znanych z SBTM, gdzie określamy ile czasu zajęło nam przygotowanie i raportowanie testów, a ile samo testowanie.
Tester w samoorganizującym się zespole
Ten model przypomina poprzedni (pojedynczy tester), z tą różnicą, iż testy mogą być wykonywane przez wszystkich członków zespołu, a tester może koordynować zadania eksploracji. Zmianie może ulec z kolei forma raportowania. Przykładowo, w Scrumie status testów może być przekazywany ustnie, na "daily", a plan testów eksploracyjnych stanowi deklarację zadań do wykonania (wyrażoną podczas tego samego spotkania) w danym dniu.
Zespół testerski pod przewodnictwem kierownika testów
W tym modelu kierownik testów pojawia się oficjalnie, co nie zmienia faktu, że zakres jego obowiązków będzie zbliżony do opisanego powyżej. Pamiętajmy, że jego podstawowym zadaniem jest koordynowanie i monitorowanie prac testerów w zespole. W doświadczonym zespole, taki kierownik może pracować w modelu zarządzania służebnego, sprowadzającego się jedynie do rozwiązywania problemów, z którymi stykają się testerzy.
Jeśli jednak zespół nie ma zbyt dużego doświadczenia, to rola kierownika może stać się trudniejsza - wymaga bowiem prowadzenia mentoringu z testerami, którzy dopiero uczą się testowania lub wdrażają się w eksplorację. Doskonałym w tej sytuacji narzędziem jest spotkanie debrifingowe, które pozwala skorygować niedociągnięcia sesji eksploracyjnej oraz podsunąć pomysły na inne testy.
Czym bardziej złożony produkt i czym większy zespół, tym i potrzeba test managera eksploracji, wydaje się być bardziej oczywista.
Podsumowując, testowanie eksploracyjne nie przekreśla roli kierownika testów. Choć z zasady TE wykonywane są przez doświadczonych testerów, którzy potrafią sami sobą zarządzić, to jednak w przytoczonych powyżej okolicznościach, pojawienie się lidera może być niezbędne do efektywnego poprowadzenia testów.