Głosowe interfejsy użytkownika: czym są i jak je projektować?

Appchance on 13 marca 2018

projektowanie VUI

Eksperci są zgodni: rok 2018 będzie rokiem głosowych interfejsów użytkownika. Zamiast mozolnie przeklikiwać się przez kolejne zakładki, będziemy mogli poprosić narzędzie o wykonanie pożądanego zadania, a co więcej: jego interfejs sam podpowie nam, co powinniśmy zrobić…

…o ile, ma się rozumieć, projektanci poradzą sobie z czyhającymi na nich wyzwaniami. A tych jest niemało.

Interfejsy głosowe a interfejsy graficzne: najważniejsze różnice

Zasady projektowania interfejsów głosowych (ang. Voice User Interface, w skrócie: VUI) i graficznych (ang. Graphical User Interface, w skrócie: GUI) znacząco się od siebie różnią.

Pierwsza i najważniejsza różnica dotyczy preferowanego przez użytkowników sposobu interakcji. Użytkownik wchodzący w interakcję z interfejsem głosowym oczekuje czegoś innego niż użytkownik wchodzący w interakcję z interfejsem graficznym. Jest to banał, ale tylko z pozoru. W praktyce wielu projektantów zapomina o tej zasadzie. W efekcie powstają interfejsy głosowe niedostosowane do faktycznych potrzeb i oczekiwań użytkowników.

Druga różnica dotyczy instrukcji. Nawet najbardziej przejrzysty interfejs powinien być wyposażony w instrukcję obsługi. Poleganie tylko i wyłącznie na intuicji użytkownika najczęściej kończy się źle dla designu. Projektanci interfejsów graficznych posiadają w tej kwestii ogromne doświadczenie; tworzone przez nich interfejsy same przeprowadzają użytkowników poprzez swoje najistotniejsze funkcje, bez konieczności sięgania po zewnętrzne instrukcje czy obszerne manuale. Wprowadzenie nie musi mieć charakteru osobnego modułu. Zintegrowany z narzędziem tutorial znacząco przyspiesza cały onboarding, a proces nauki przebiega on the go, czyli podczas pracy z samymi funkcjami.

Trzecia różnica dotyczy braku kompendium sprawdzonych rozwiązań. Projektanci GUI mają tu zdecydowanie łatwiej: istnieje bardzo dużo dobrze zaprojektowanych interfejsów graficznych, a zasady ich projektowania zostały wielokrotnie skodyfikowane, przetworzone i zweryfikowane. Natomiast osoby pracujące nad VUI porównać można do badaczy nowych lądów. Wielu rzeczy nie sposób przewidzieć. Z pozoru nieistotne błędy mogą przekreślić wiele godzin prac programistów. Inne – sprawić, że interfejs stanie się tematem drwin w  Internecie. Problemy te dotyczą również liderów; vide: głośna sytuacja z Siri, która pomyliła hymn Bułgarii z Despacito. O sprawie pisano w prasie na całym świecie.

Problem oczekiwań komunikacyjnych

Wiele interfejsów głosowych to produkty zupełnie nieintuicyjne, niezgodne z oczekiwaniami użytkowników w procesie komunikacji. Problem ten dotyczy również dobrze zaprojektowanych VUI – Siri, Alexy czy Google Assistanta. Po części wynika on z ograniczeń technicznych. Choć komunikacja międzyludzka znacząco różni się od komunikacji z interfejsem, użytkownik korzystający z interfejsu głosowego spodziewa się, że będzie on bliższy raczej tej pierwszej. W konsekwencji próbuje komunikować się z nim jak z innym człowiekiem. Tymczasem nawet najlepsze VUI wciąż mają problem z komunikacją tego rodzaju: nie w pełni radzą sobie z rozpoznawaniem faktycznych intencji użytkownika oraz albo kontekstu. Jeżeli więc zastanawiałeś się czasem, dlaczego Siri czy Alexie tak często zdarza się mylić Twoje intencje czy udzielać bezsensownych odpowiedzi – oto rozwiązanie.

Jak poradzić sobie z tymi i innymi problemami nękającymi projektantów głosowych interfejsów użytkownika? Poniżej podajemy listę rekomendowanych praktyk oraz sposobów na ominięcie problemów.

Podstawowe zasady projektowania interfejsów głosowych

1. Zapewnij użytkownikowi informacje na temat możliwości interfejsu oraz jego ograniczeń

Możliwości i ograniczenia interfejsów graficznych są widoczne gołym okiem. Z interfejsami głosowymi rzecz ma się inaczej. Do dobrych praktyk należy więc poinformowanie użytkownika o zakresie funkcjonalności interfejsu. Jak to zrobić? Najlepiej prosto i do rzeczy. Nasz interfejs może poinformować użytkownika o swojej podstawowej funkcji za pomocą pytania: „Czy chcesz teraz podgłośnić muzykę/zapalić światło w salonie/sprawdzić prognozę pogody na weekend?”. Może też poinformować wprost: „Jeżeli chcesz, mogę podgłośnić dla Ciebie muzykę. Mogę zrobić to w zakresie takim a takim”.

Informowanie o ograniczeniach pozwala natomiast uniknąć irytacji użytkownika. Interfejs, który sam informuje, że muzyki nie można już bardziej podgłośnić, a światła rozjaśnić, jest zaprojektowany lepiej niż taki, który informuje o tym dopiero po podjętej przez użytkownika próbie.

2. Zapewnij użytkownikowi informacje na temat wykorzystywanych przez niego w danym momencie funkcji

Jeżeli użytkownik wykorzystuje którąś z funkcji interfejsu, nie powinien mieć co do tego żadnych wątpliwości. Jeżeli przeprowadzenie danej funkcji zajmuje dłuższą chwilę, to interfejs powinien zakomunikować użytkownikowi, że przyjął instrukcję i pracuje nad jej wykonaniem (np. „Właśnie zamawiam dla Ciebie zakupy”). Informacji tej nie należy przy tym powtarzać. Ewentualne powtórzenia lepiej zastąpić informacją o postępie (np. „Przekazanie złożonego przez Ciebie zamówienia do sklepu zajmie mi jeszcze 6 sekund”).

Warto zadbać też o udzielenie pełniejszej informacji. Zwróć uwagę, że najpopularniejsze głosowe interfejsy użytkownika, szczególnie Alexa, zawsze komunikują się pełnymi zdaniami. Dzięki temu użytkownik nie ma problemu z identyfikacją swojego polecenia (co może mieć znaczenie przy zadaniach, których realizacja trwa dłużej niż kilkanaście minut). Nie musi też zastanawiać się, czy interfejs poprawnie zrozumiał polecenie. Alexa informuje go o tym wprost, umożliwiając tym samym weryfikację i ewentualną modyfikację wcześniejszej instrukcji.

3. Dostarcz użytkownikowi instrukcję komunikacji – nie musi być w formie tekstowej

W podobny sposób interfejs głosowy może przekazywać użytkownikowi informacje na temat preferowanej przez siebie formy komunikatu. Ogólna zasada: im pełniejszymi zdaniami posługuje się nasz interfejs, tym krótsze mogą być odpowiedzi użytkownika. Taka wymiana może przyjąć następującą postać:

Użytkownik: „Sprawdź dla mnie prognozę pogody”.

Interfejs: „W tej chwili mogę sprawdzić dla Ciebie prognozę pogody na dzisiaj, na nadchodzący tydzień albo na weekend. Którą prognozę chciałbyś usłyszeć?”.

Jest to znacznie lepsze rozwiązanie niż interfejs komunikujący się np. w ten sposób: „Jeżeli chcesz poznać prognozę pogody na dzisiaj, powiedz słowo «Dzisiaj». Jeżeli chcesz poznać prognozę na tydzień, powiedz słowo «Tydzień». Jeżeli chcesz poznać prognozę na weekend…” etc.etc. Niemniej w pewnych sytuacjach to drugie rozwiązanie również może być uzasadnione – np. tam, gdzie mamy do czynienia z ograniczoną ilością diametralnie różnych możliwości, ewentualnie w przypadku interfejsów głosowo-graficznych (jak chociażby infolinie).

Do dobrych praktyk należy też informowanie użytkownika o niezrozumieniu instrukcji – najlepiej od razu z zaznaczeniem powodów. Interfejs, który mówi nam, dlaczego nie zrozumiał naszego polecenia i co możemy na to poradzić, zawsze będzie miał przewagę nad takim, który informuje wyłącznie o niezrozumieniu. Przykład:

Użytkownik: „Sprawdzisz to dla mnie?”.

Interfejs: „Niestety, nie rozumiem Twojej instrukcji. Rozmawialiśmy o prognozie pogody oraz meczu Polski z Niemcami. Czy chcesz, abym sprawdził(-a) prognozę pogody? A może chodzi o wynik spotkania?”.

Rozwiązanie to z całą pewnością sprawdzi się lepiej niż interfejs informujący o prognozie pogody w odpowiedzi na pytanie o wynik meczu.

4. Ogranicz ilość przekazywanych jednorazowo informacji oraz możliwości wyboru

Wszyscy doskonale zdajemy sobie sprawę, jak irytujące potrafią być nadmiernie rozbudowane interfejsy głosowo-graficzne. „Oferta banku – wciśnij 1. Twoje produkty – wciśnij 2. Kredyty gotówkowe – wciśnij 3. Kredyty hipoteczne – wciśnij 4…” – i tak dalej, i tak dalej, aż do dziewiątki, nim dowiemy się nareszcie, że rozmowa z konsultantem to numer 8, a nie 9. Jeżeli dodać do tego reklamy produktów (które w takich sytuacjach zdarzają się przecież wcale nierzadko), otrzymujemy bardzo złe usability. I jeszcze gorsze doświadczenie użytkownika.

5. Wesprzyj sygnały dźwiękowe innego rodzaju sygnałami

Użytkownik musi wiedzieć, że wydawane przez niego polecenia są słyszane. Powinien też wiedzieć, kiedy obsługiwane przez nasz interfejs urządzenie przechodzi ze stanu czuwania w stan uśpienia i na odwrót. Status urządzenia najlepiej sygnalizować za pomocą sygnałów pozadźwiękowych (np. świecąca się dioda może poinformować użytkownika o stanie czuwania). Rozwiązanie to stosują wszyscy wiodący producenci tego typu rozwiązań – z wielokrotnie wspominaną tutaj Alexą na czele.

Pewną alternatywą jest informowanie użytkownika o zmianach statusu za pomocą prostych, łatwo rozpoznawalnych, ale nie narzucających się sygnałów dźwiękowych. Rozwiązanie to ma jednak jeden poważny minus: sygnał trwa chwilę, status – niekoniecznie. Kłopoty pojawiają się też przy próbie zaprojektowania takiej informacji dla urządzeń często przechodzących z jednego stanu w inny. Problem może stanowić również wydłużony proces zmiany statusu (np. w urządzeniach przemysłowych czy inteligentnych domach).

6. Uprość proces nanoszenia poprawek

Nawet najlepszym interfejsom głosowym zdarza się czasem „usłyszeć coś” błędnie. W takiej sytuacji każdorazowe zmuszanie użytkownika do powtarzania całości polecenia jest równoznaczne karaniu go za błąd urządzenia. To z kolei przekłada się na znaczący wzrost irytacji.

Dobrze zaprojektowany interfejs głosowy umożliwia użytkownikowi szybkie nanoszenie poprawek bez konieczności powtarzania całego polecenia. Jest to szczególnie ważne w przypadku bardziej rozbudowanych programów. Jeżeli użytkownik instruuje interfejs tak, aby wysłać wiadomość tekstową do określonej osoby, a interfejs błędnie zapisuje jej treść, to użytkownik powinien mieć możliwość łatwego wskazania fragmentów wymagających poprawy i zastąpienia ich właściwymi. Podobnie zresztą – gdy błąd następuje z winy samego użytkownika. Nanoszenie poprawek do wcześniejszego polecenia powinno być prostsze i mniej czasochłonne niż cofanie go i ponowne instruowanie interfejsu od początku.

7. Wprowadź system automatycznej korekty/reinterpretacji błędów

Sporządzenie katalogu najczęściej popełnianych przez Twój interfejs błędów może okazać się czasochłonne i wymagać dodatkowych testów. Jego poprawne wdrożenie może jednak skutkować znaczącą poprawą doświadczenia użytkownika. Dzięki systemowi automatycznej korekty błędów interfejs z łatwością poradzi sobie z wieloma potencjalnie kłopotliwymi sytuacjami (np. takimi jak ta opisana w poprzednim punkcie). Korekta ograniczy też liczbę poważniejszych nieporozumień (np. kiedy urządzenie faktycznie wykonuje czynność zgodną z błędnie zinterpretowanym poleceniem). Przykładem dobrze zaimplementowanego mechanizmu korekty jest funkcja rozpoznawania akcentów.

Głosowy interfejs użytkownika a potrzeby użytkowników i rynek

Zgodnie z przewidywaniami J. Koetsiera – znanego kanadyjskiego przedsiębiorcy i publicysty związanego z najbardziej poczytnymi outletami dotyczącymi nowych technologii – urządzenia stosujące interfejs głosowy znalazły się pod koniec 2017 roku w 33 milionach amerykańskich domów. To o 24 i pół miliona więcej niż pod koniec 2016. Najpopularniejszym z nich było – oczywiście – Amazon Echo.

Choć nie przewiduje się – pisze Koetsier – by interfejsy głosowe miały w najbliższym czasie zastąpić graficzne, to popyt na nie nadal będzie rósł wykładniczo. Same urządzenia wyposażone będą natomiast w coraz to nowsze umiejętności. Dla przykładu: Alexa posiada ich na chwilę obecną około 25 000. To o ponad 15 000 więcej niż rok temu (kiedy wciąż posiadała ich niecałe 10 000). Umiejętności to – najprościej rzecz ujmując – unikalne funkcje interfejsu (np. obsługa ekspresu do kawy albo wysyłka wiadomości tekstowych za pomocą zintegrowanego z interfejsem telefonu).

Powstawanie nowych funkcji rozumieć należy jako bezpośrednią odpowiedź na rosnące zapotrzebowanie i wymagania użytkowników. Nie ulega wątpliwości, że świat przyjął VUI z ogromnym entuzjazmem. Pytanie brzmi: na jak długo – i co będzie z nimi dalej?

Przyszłość interfejsów głosowych

Projektanci nadal zadają sobie pytania dotyczące preferowanego kierunku rozwoju urządzeń. Czy projektowane przez nich interfejsy powinny być coraz bardziej podobne do ludzi? A jeśli tak – to w jakim sensie? I w jaki sposób uniknąć tak niebezpiecznego fenomenu Uncanny Valley?

Fenomen Uncanny Valley polega – w skrócie – na tym, że im bardziej zachowanie urządzenia, np. sposób jego wypowiadania się, podobne jest do ludzkiego, tym bardziej odstręczające są dla użytkowników stosunkowo niewielkie odstępstwa od ogólnie przyjętych ludzkich norm. W konsekwencji bardziej przeszkadzają nam małe błędy w animacji realistycznie przedstawionych twarzy niż duże błędy w animacjach nierealistycznych. To jeden z powodów, dla których projektanci decydują się, przynajmniej póki co, na projektowanie urządzeń, które w niczym nie przypominają ludzi; widać to zresztą nie tylko w wyglądzie zewnętrznym odbiorników/nadajników, ale i w sposobach ich wypowiadania się (które zawsze są trochę przerysowane, ale nie zawsze w sposób uzasadniony przez usability lub względy wspomniane powyżej). Nic nie wskazuje też na to, żeby cokolwiek miało się w tej kwestii zmienić – a w każdym razie nie w najbliższej przyszłości.

Choć mainstreamowa prasa technologiczna z lubością ogłasza koniec interfejsów graficznych i nadejście nowej ery interfejsów głosowych, to dużo bardziej prawdopodobnym scenariuszem jest wzrost powszechności urządzeń stosujących zarówno te pierwsze, jak i te drugie. Na chwilę obecną nie istnieją żadne miarodajne badania dotyczące przewagi VUI nad GUI czy możliwego wyparcia jednych przez drugie. Interfejsy głosowe wciąż są bardzo świeżą sprawą. Otwiera to przed projektantami całkiem nowe możliwości. Czas pokaże, czy ci zdołają je wykorzystać.

Tagi: , , , , ,

Przeczytaj również

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *