Wyślij zapytanie Dołącz do Sii

Testy w każdej organizacji i zespole mogą oraz powinny być zaprojektowane tak, aby uwzględniały potrzeby wszystkich udziałowców. Zobaczmy, jak możemy wykorzystać myślenie projektowe (ang. design thinking) w testowaniu.

Kilka lat temu otrzymałem zadanie, aby zaprojektować usługę testową dla zespołu zwinnego wytwarzającego oprogramowanie dla jednej firm z branży nowych technologii. Postanowiłem zastosować w tym celu myślenie projektowe, z którego korzysta m.in.: Ikea do projektowania swoich sklepów.

W artykule pokrótce przedstawię podstawowe założenia design thinking oraz sposób, w jaki udało mi się je wykorzystać w budowaniu usługi testowej.  

Czym jest myślenie projektowe?

Myślenie projektowe jest odpowiedzią rodem z Princeton na zapotrzebowanie uwzględnienia klienta w procesie projektowania. Design thinking to metoda projektowania, która kładzie nacisk na rozumienie użytkowników, tworzenie innowacyjnych rozwiązań i iteracyjne testowanie pomysłów. Jest to podejście, które pochodzi głównie z obszaru projektowania, ale znalazło zastosowanie w różnych dziedzinach, w tym w biznesie, edukacji i inżynierii.

Główne założenia design thinking to:

  • koncentracja na użytkowniku – zrozumienie jego uświadomionych i nieuświadomionych potrzeb,
  • interdyscyplinarny zespół – spojrzenie na problem z wielu perspektyw,
  • eksperymentowanie i częste testowanie hipotez – budowanie prototypów i zbieranie feedbacku od użytkowników.

W efekcie powstają rozwiązania, które są:

  • pożądane przez użytkowników,
  • technologicznie wykonalne,
  • ekonomicznie uzasadnione.

Myślenie projektowe zdobyło popularność ze względu na skuteczność w rozwiązywaniu różnorodnych problemów z uwzględnieniem perspektywy użytkowników od samego początku procesu projektowego.

Opis poszczególnych faz design thinking

Design thinking – fazy
Ryc. 1 Design thinking – fazy

Design thinking obejmuje zazwyczaj pięć głównych faz:

  1. Empatia (ang. Empathize) – wczucie się w problem. Celem tej fazy jest zrozumienie użytkowników i zidentyfikowanie ich potrzeb, problemów i motywacji. Projektanci angażują się bezpośrednio z użytkownikami, obserwując ich działania, rozmawiając z nimi i starając się wczuć w ich sytuację. Wywiady, obserwacje terenowe i inne metody badawcze pomagają zebrać głębokie zrozumienie perspektywy użytkownika.
  2. Definiowanie problemu (ang. Define) – na podstawie zgromadzonych informacji projektanci definiują problem, który chcą rozwiązać. Określenie problemu jest kluczowe dla skoncentrowania się na istotnych kwestiach i uniknięcia rozproszenia uwagi. W tym etapie tworzone są tzw. „persony”, czyli abstrakcyjne profile reprezentujące różne grupy użytkowników.
  3. Generowanie pomysłów (ang. Ideate) – w fazie ideacji zespoły starają się stworzyć jak najwięcej pomysłów na rozwiązanie zdefiniowanego problemu. Używa się technik kreatywnego myślenia, takich jak brainstorming, mind mapping czy analiza SWOT. Każdy pomysł jest ważny (i na tym etapie dobry), a kreatywność jest bardzo istotna.
  4. Prototypowanie (ang. Prototype) – w tym momencie projektanci przechodzą od abstrakcyjnych pomysłów do konkretnych prototypów. Prototypy mogą przybierać różne formy – od rysunków, makiet, po prototypy interaktywne. Celem jest stworzenie wizualnej lub fizycznej reprezentacji pomysłu, która może zostać przetestowana i oceniona przez użytkowników.
  5. Testowanie (ang. Test) – prototypy są prezentowane użytkownikom w środowisku zbliżonym do rzeczywistych warunków. Informacja zwrotna od użytkowników jest zbierana, analizowana i używana do dalszego doskonalenia projektu. Proces ten może wymagać wielokrotnych iteracji, aby skutecznie dostosować rozwiązanie do rzeczywistych potrzeb.

Powyższe fazy nie muszą być ściśle realizowane i niemal zawsze zachodzi potrzeba powrotu do poprzednich etapów w celu dostosowania lub zrozumienia problemu lepiej, co zachęca do elastycznego podejścia i ciągłej adaptacji. Należy pamiętać, że design thinking jest procesem iteracyjnym. Po przeprowadzeniu testów i uzyskaniu feedbacku, projekt jest dostosowywany, a proces powtarzany, aż do osiągnięcia optymalnego rozwiązania.

Myślenie projektowe może być stosowane w różnych kontekstach i branżach, aby rozwijać innowacyjne i zorientowane na użytkowniku rozwiązania.

Narzędzia w design thinking

Design thinking oferuje szereg narzędzi, które możemy wykorzystać nie tylko do procesu projektowania, ale też w testach. Poniżej przybliżę kilka przykładów narzędzi stosowanych w poszczególnych etapach design thinking.

W pierwszej fazie wczuwania się w problem użytkownika stosuje się:

  1. mapę empatii – pomaga zorganizować zebrane informacje na temat użytkowników, ich potrzeb, pragnień i wyzwań. Ma odpowiedzieć na pytanie, co widzi, myśli, czuje, słyszy, mówi i robi użytkownik.
Mapa empatii
Ryc. 2 Mapa empatii
  1. tworzenie persony – kreowanie abstrakcyjnych profili reprezentujących różne grupy użytkowników, co pomaga zrozumieć ich celowe zachowania. Więcej na temat persony klienta napisałem w artykule: Persona – testowanie z wykorzystywaniem technik z gier RPG (sii.pl)

Podstawowe cechy Persony to:

  • końcowy cel – co persona chce osiągnąć za pomocą produktu/usługi?
  • motywacja – dlaczego dana osoba interesuje się produktem/usługą?
  • bariery – co ją drażni i może zniechęcić do produktu/usługi?
  • szanse – co mogłoby zwiększyć jej zainteresowanie danym produktem/usługą?
  • wpływ – jak na nią wpłynąć, by korzystała z produktu/usługi?

W fazie definiowanie problemu korzysta się z:

  1. słownik problemu – zdefiniowanie problemu w formie zestawu krótkich zdań pomaga precyzyjnie sformułować, nad czym należy pracować.
  2. „5 dlaczego” (ang. „5 Whys”) – pytania „dlaczego” pomagają w identyfikowaniu głębszych przyczyn problemów.

Podczas Generowanie pomysłów wykorzystujemy:

  1. brainstorming – tradycyjna metoda generowania wielu pomysłów w krótkim czasie.
  2. mind mapping – używanie diagramów do wizualnego przedstawiania związków pomiędzy różnymi pomysłami.

W prototypowaniu prym wiodą:

  1. storyboard – ilustracje sekwencji zdarzeń, które pomagają zrozumieć interakcje z użytkownikiem w konkretnym kontekście.
  2. makiety (ang. mockups) i prototypy interaktywne – używanie narzędzi do szybkiego tworzenia wizualnych reprezentacji pomysłów, które można przetestować.

Do testowania wykorzystuje się:

  1. user testing – proste sesje testowe, podczas których użytkownicy są w interakcji z prototypami, dostarczając informacji zwrotnej.
  2. feedback grid – struktura do organizacji i analizy feedbacku od użytkowników.

Studium przypadku – wykorzystanie design thinking w testowaniu

Zadaniem moim i zespołu było wypracowanie sposobu współpracy oraz zaproponowanie, w jaki sposób ów zespół będzie testować oprogramowanie.

Sytuacja wejściowa była następująca:

  • produkt dostarczany do klienta w cyklu co dwa tygodnie,
  • wykorzystanie metodyk zwinnych,
  • nowe osoby w zespole,
  • nowe osoby w firmie,
  • brak ustalonego procesu testowego.

Dzięki temu, że do zespołu dołączały nowe osoby, między innymi testerzy, programiści i architekci, mieliśmy szansę na nowo zdefiniować, w jaki sposób pracować oraz jak dostarczać przetestowane kawałki oprogramowanie do klienta końcowego. Wreszcie – razem z całym zespołem zdefiniować, czym jest jakość wytwarzanego przez nich oprogramowania oraz zdecydować, jakie środki i narzędzia zostaną użyte przez zespół, aby proces działał poprawnie. 

Zaproponowałem przeprowadzenie warsztatów testowych z programistami, testerami, Project Managerem oraz Product Ownerem. Podzieliłem agendę na następujące części:

  1. Wprowadzenie do techniki myślenia projektowego (przedstawione powyżej).
  2. Wspólne przygotowanie person:
    • klienta końcowego,
    • Product Ownera,
    • Project Managera,
    • testera,
    • programisty,
    • interesariusza.
  3. Przygotowanie prototypu usługi testowej spełniającej wymagania wszystkich person.
  4. Przetestowanie procedury.
  5. Wdrożenie w pierwszym sprincie.
  6. Dalszy rozwój procedury:
    • testy automatyczne,
    • uczenie się jak estymować testy,
    • uczenie się produktu.

Przebieg spotkania

Persona testera – zdjęcie ze spotkania
Ryc. 3 Persona testera – zdjęcie ze spotkania

Spotkanie było zaplanowane na dwa dni warsztatowe, podczas których mogliśmy się wszyscy poznać i zintegrować.

Po wstępie zaczęliśmy rozpisywać persony. Każda ze zdefiniowanych ról została opisana – np. tester był ciekawski, znajdujący błędy, nieustępliwy. Następnie określiliśmy potrzeby każdej z person, ustaliliśmy ich priorytety oraz to, kto w organizacji jest odpowiedzialny za ich realizację. Dzięki temu od razu mogliśmy rozmawiać o tym, kiedy możemy zacząć testy oraz co to znaczy, kiedy historyjka użytkownika jest gotowa do testów.

Udało nam się zdefiniować potrzeby interesariuszy, dzięki czemu wiedzieliśmy, jakie informacje są potrzebne i kto ich potrzebuje. Ponadto, podczas prezentacji mieliśmy wszyscy szansę poznać produkt oraz klienta końcowego.

Wnioski

Wspólne spotkanie oraz podjęcie przez zespół decyzji, jak ma wyglądać proces testowy, po co robimy testy i dla kogo, miało znacznie dla formowania się zespołu i pryncypiów wspólnej pracy. Testerzy oraz programiści mieli szansę powiedzieć o swoich potrzebach i wyznaczyć wspólne cele związane z jakością.

Oczywiście, nie wszystko się udało za pierwszym razem – proces jeszcze musiał być zmieniany podczas spotkań retrospektywnych, a wiedza na temat technologii i produktu musiała zostać zbudowana.

Z mojego punktu widzenia, takie warsztaty miały znaczenie w zrozumieniu wspólnej perspektywy dla zespołu w kontekście jakości. Pewnym problem było testowanie samego procesu na spotkaniu – podjęliśmy decyzję, że zrobimy to podczas pierwszej iteracji zespołu.

Testowanie stało się wspólną aktywnością całego zespołu 🙂

Literatura

***

A jeśli interesuje Cię myslenie projektowe, zajrzyj także do innego artykułu naszego eksperta: Z doświadczenia afrykańskiego startupu technologicznego: dobra strategia myślenia projektowego procentuje w biznesie.

5/5 ( głos: 1)
Ocena:
5/5 ( głos: 1)
Autor
Avatar
Michał Kozłowski

Test Manager w Sii Polska. Pracuje w testach od 2009 roku. Karierę w IT zaczął jako producent gier na telefony komórkowe w czasach przed pierwszym iPhonem. Od 2011 roku zajmuje się zarządzaniem testami. Pracował dla dużych klientów z obszaru lotnictwa i telekomunikacji. Od 2013 roku prowadzi szkolenia dla testerów. Szkoli w Software Development Academy i wykłada testowanie oprogramowania w WSB Merito w Gdańsku. Prywatnie jest ojcem czteroletniej dziewczynki oraz miłośnikiem gier RPG.

Zostaw komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Może Cię również zainteresować

Pokaż więcej artykułów

Bądź na bieżąco

Zasubskrybuj naszego bloga i otrzymuj informacje o najnowszych wpisach.

Otrzymaj ofertę

Jeśli chcesz dowiedzieć się więcej na temat oferty Sii, skontaktuj się z nami.

Wyślij zapytanie Wyślij zapytanie

Natalia Competency Center Director

Get an offer

Dołącz do Sii

Znajdź idealną pracę – zapoznaj się z naszą ofertą rekrutacyjną i aplikuj.

Aplikuj Aplikuj

Paweł Process Owner

Join Sii

ZATWIERDŹ

This content is available only in one language version.
You will be redirected to home page.

Are you sure you want to leave this page?