Jak eliminować błędy w interfejsie stosując zasady Poka Yoke

Zarządzanie w IT
kaizen agile zarzadzanie it poka yoke

Poka yoke to metoda zapobiegania defektom pochodzącym z pomyłek wywodząca się z Japonii. “Poka” znaczy “błędy” a “Yokeru” - “zapobieganie”.Potocznie często używa się haseł typu “idiotoodporność”. W założeniu etykietce tej bardzo blisko do podejścia Poka Yoke. Pełen zwrot brzmi: “zapobieganie nieumyślnym błędom”.

Za Wikipedią: “Główną zasadą w systemie Poka Yoke jest to, że za błędy nie należy winić ludzi, a tylko procesy”.

 

Zasady Poke Yoke w świecie IT warto wdrażać przede wszystkim w kontekście interfejsu użytkownika.

W procesie analizy wymagań i projektowania interfejsu należy przyjąć założenia:

  • użytkownik będzie się zachowywał inaczej niż się zakłada
  • użytkownik zawsze znajdzie nieprzetestowany przypadek użycia
  • nie można użytkownikowi kazać się zachowywać w określony sposób (pop-upy, dymki z informacjami)
  • użytkownik może zachowywać się nieracjonalnie:
    • może wpisywać w pola formularza znaki zupełnie nie pasujące do zamierzeń
    • może klikać wielokrotnie w elementy interfejsu
    • może chwilowo lub na dłużej utracić dostęp do sieci
    • może w każdej chwili odświeżać stronę, używać innych przycisków nawigacji
    • może zmieniać dowolnie wielkość okna

 

Przykłady zastosowania Poka Yoke w interfejsie aplikacji webowej:

  • należy zabezpieczyć formularze przed wielokrotnym klikaniem w przycisk wysyłający
  • po wykonaniu akcji (wysłaniu formularza) użytkownik powinien być przekierowany na stronę wynikową, w innym przypadku po odświeżeniu strony formularz ponownie wykona akcję (zasada POST - Redirect - GET)
  • pola, gdzie wprowadzone dane mają ścisłą strukturę należy zabezpieczyć przed wpisaniem innych wartości, na przykład pole z polskim kodem pocztowym powinno przyjmować tylko cyfry oraz usuwać inne znaki w tym kreskę (oczywiście sprawdzenie należy powtórzyć po stronie backendowej przy operacjach IO na przykład przy zapisie do danych, w przypadku ASP.NET MVC problem jest najczęściej rozwiązywany za pomocą ORM’a)
  • interfejs powinien być dynamicznie responsywny, musi być gotowy na zmianę orientacji ekranu oraz dowolną zmianę wielkości okna. Nie można zakładać, że jakiś stan z pewnością nie wystąpi
  • każda akcja AJAXowa może zwrócić błąd lub nic nie zwrócić, użytkownik nie powinien być zmuszony do przechodzenia pełnego procesu w przypadku niepowodzeń zapytań asynchronicznych
  • użytkownik może przerwać działanie na określony czas, nie można dopuścić by wynik działań asynchronicznych był różny w zależności od tego z jaką szybkością użytkownik będzie używał interfejsu. Przykładowo wygenerowanie raportu może trwać minutę, a proces wymaga przed jego pobraniem zmianę strony. Jest to przy okazji antywzorzec projektowy o nazwie “system z wyścigami” (race hazard)

 

Podsumowując zasadę Poka Yoke należy mieć ciągle w pamięci przy projektowaniu interfejsu. Zyskuje się przede wszystkim zadowolenie użytkownika, które przekłada się bezpośrednio na osiąganie przez aplikację.

Źródła: https://pl.wikipedia.org/wiki/Poka-yoke Źródła własne

Tomasz Osiński Tomasz Osiński
Jak eliminować błędy w interfejsie stosując zasady Poka Yoke
2017-08-29 20:14:28
Komentarze
Aby dodac komentarz musisz być zalogowany

Zobacz podobne artykuły

Nazywam się Tomasz Osiński. Jestem programistą web developerem od 2008 roku. Obecnie pracuję w Banku Millennium jak .NET web developer, poza tym rozwijam startupy, blogguję. Pokazuję, że za pomocą ASP.NET, HTML, CSS i JS można budować wydajne aplikacje i strony internetowe. Ukazuję potrzeby wdrażania nowoczesnego podejścia do zarządzania w IT (Lean, Kanban, SCRUM, Agile)

Blog, który czytasz tworzę w w/w technologiach i udostępniam na GitHubie