Inżynieria Oprogramowania 7. Projektowanie interfejsów

1 Inżynieria Oprogramowania 7. Projektowanie interfejsów2...
Author: Marek Zambrzycki
0 downloads 2 Views

1 Inżynieria Oprogramowania 7. Projektowanie interfejsów26/03/2017 Inżynieria Oprogramowania 7. Projektowanie interfejsów Leszek J Chmielewski Wydział Zastosowań Informatyki i Matematyki SGGW

2 Źródła Materiały dra Waldemara Karwowskiego, wykładowcy w poprzednich semestrach Ian Sommerville, Inżynieria Oprogramowania, WNT, Warszawa 2003 Stephen Few, Perceptual Edge  Library

3 Plan Wstęp Zasady projektowania interfejsu użytkownikaInterakcja z użytkownikiem Prezentacja informacji Ocena interfejsu Podsumowanie

4 Plan Wstęp Zasady projektowania interfejsu użytkownikaInterakcja z użytkownikiem Prezentacja informacji Ocena interfejsu Podsumowanie

5 Wstęp Rodzaje interfejsów Interfejsy tekstowe:graficzne Interfejsy tekstowe: systemy odziedziczone wybrane systemy profesjonalne Tu zajmiemy się i. graficznymi

6 Proces tworzenia interfejsuAnaliza czynności użytkownika Prototyp – a tani i prosty, np. papierowy Ocena z udziałem użytkowników Jeśli trzeba, wróć do 2 Prototyp wykonywalny Jeśli trzeba, wróć do 5 Interfejs docelowy

7 Plan Wstęp Zasady projektowania interfejsu użytkownikaInterakcja z użytkownikiem Prezentacja informacji Ocena interfejsu Podsumowanie

8 Ograniczenia użytkownikówograniczona pamięć krótka błędy gdy dużo informacji błędy pod presją różne możliwości psychiczne zróżnicowana wiedza i doświadczenie różne możliwości intelektualne

9 Zasady Blisko użytkownikapojęcia ze świata użytkowników, nie programistów Spójność podobne operacje wykonywane w taki sam sposób o ile możliwe Minimum niespodzianek irytacja wynikiem nieoczekiwanych zdarzeń Możliwość wycofania wielopoziomowe wycofanie z błędów, nie od razu zauważonych potwierdzenie operacji nieodwracalnie destrukcyjnych Porady dla użytkownika konstruktywne, kontekstowe, minimalnie obciążające Rozróżnianie użytkowników stali, wprawni, profesjonalni, okazjonalni, niepełnosprawni

10 Plan Wstęp Zasady projektowania interfejsu użytkownikaInterakcja z użytkownikiem Prezentacja informacji Ocena interfejsu Podsumowanie

11 Dwa kierunki Użytkownik  system: InterakcjaSystem  użytkownik: Prezentacja Rodzaje interakcji (rozumianej jw.) Działanie bezpośrednie – na obiektach Wybór z menu Wypełnianie formularza Język poleceń Język naturalny – pisany, mówiony Każda ma wady i zalety Różne obszary zastosowań

12 Plan Wstęp Zasady projektowania interfejsu użytkownikaInterakcja z użytkownikiem Prezentacja informacji Ocena interfejsu Podsumowanie

13 Prezentacja  obiekty Dobra praktyka: Oddzielenie prezentacji od danych  sprzeczna z programowaniem obiektowym jednak, struktury danych można prezentować na różne sposoby np. w różnych etapach, na różnych poziomach szczegółowości, różnym użytkownikom itp.

14 Model-View-ControllerPodejście MVC (Model-View-Controller, Model-Widok-Koordynator) (Smalltalk, 1983) Użytkownik działania użytkownika Stan koordynatora Metody koordynatora modyfikacje modelu modyfikacje widoku Stan widoku Metody widoku Stan modelu Metody modelu zapytania i aktualizacje

15 Wiele sposobów interakcjiCzynniki wyboru: Czy potrzeba dokładnej informacji, czy jakościowej, np. związki, relacje? Jak szybko zmienia się informacja? Czy użytkownik musi widzieć zmiany natychmiast? Czy użytkownik musi reagować na zmiany, czy tylko obserwować? Czy informacja jest tekstowa, numeryczna, graficzna?

16 Elementy graficzne Prezentacja tych samych danych na różne sposoby

17 Cywilizacja zegarów Trudno porównywać daneNawet, jeśli forma jest podobna

18 Kilka uwag o prezentacji danychSłabo oceniamy kąty i powierzchnie

19 25% rynku

20 25% rynku: czy na pewno?

21 To samo jako wykres słupkowy

22 Mimo to spotykamy... Porównaj wskazaniaTrudne nawet, jeśli podobne w formie

23 Czemu nie tak:

24 Jeszcze trudniej

25 Rzeczywistość a złudzenia

26 To jeszcze nie wszystko

27 Można jeszcze gorzej

28 i gorzej

29 Pole

30 Pole: po co?

31 Porównaj powierzchnieOdpowiedzi: od 6 do 50 To jest 16

32 Prezentacje graficzne i porównaniaRaczej słupki, niż kąty Raczej kąty, niż powierzchnie Słupki równoległe, nie szeregowe Wartości liczone od prawdziwego zera Wyraźnie zaznaczone wartości krytyczne Wykresy jeśli ważna jest historia jeśli czas szybko płynie

33 Kolor Ogranicz liczbę kolorów, używaj ostrożniespokojne, stonowane palety Zmiana koloru = zmiana stanu Korzystaj z kodów kolorów czerwony: dla kierowcy – niebezpieczeństwo dla chemika – wysoka temperatura dla fizyka – niska temperatura Korzystaj spójnie i rozsądnie Uważaj na związki między kolorami czerwony – niebieski Uważaj na ograniczenia różna jakość ekranów Uważaj na ograniczenia i wady wzroku daltonizm

34 System pomocy Dwa przypadki: HELP! potrzebuję pomocy!Help. potrzebuję informacji Przygotowany przez/wraz ze specjalistami w dziedzinie zastosowania oprogramowania Kontekstowy Uwzględniający doświadczenie i umiejętności użytkownika różne poziomy pomocy unikaj nieczytelnych kodów błędów unikaj niejednoznacznie oznaczonych sposobów reakcji (np. OK, NIE, zamknij, wyjdź, przyjmij zamiast akceptuj, cofnij) Styl pozytywny, nigdy negatywny daj wybór objaśnionych działań, wyjaśnij proces Nigdy złośliwość ani żartobliwość Uwzględniający kulturę kraju realnie, unikając naiwnych sądów tłumaczenie na miejscu a nie za granicą

35 Orientacja w systemie pomocy

36 Wpisywanie nazwiska pacjenta

37 Komunikaty błędu Zorientowany na system i na użytkownika

38 Dokumentacja użytkownika – PodręcznikiOpis funkcjonalny b. krótko opis usług do decyzji: kupić? Podręcznik instalatora Przewodnik podstawowy minimalny opis normalnych działań wiele przykładów jak wycofać się po podstawowych pomyłkach Podręcznik opis ich wykorzystywania lista komunikatów o błędach, przyczyny i sposoby zaradcze Skrócona karta udogodnień – do szybkiego przypomnienia Podręcznik administratora pełny opis funkcjonalności opis sprzętu, konfiguracji, ...

39 Plan Wstęp Zasady projektowania interfejsu użytkownikaInterakcja z użytkownikiem Prezentacja informacji Ocena interfejsu Podsumowanie

40 Szacowanie wartości interfejsuOcena względem specyfikacji Łatwość uczenia Szybkość działania Solidność – odporność na błędy (fool proof) Zdolność do wycofania z błędów Zdolność do adaptacji

41 Sposoby oceny Monitorowanie – rejestracja użytkowania Kwestionariuszekamery, zapisy działań etnografia duży koszt Kwestionariusze klarowne pytania z oczywistymi odpowiedziami Prosta obserwacja + „głośne myślenie” Krótkie filmy Kod gromadzący informacje Testerzy-ochotnicy + uwzględnianie opinii

42 Podstawowe błędy Częste, nienaturalne przenoszenie wzroku Długie ruchyZmiany operacji klawiatura/mysz Menu górne, dolne, boczne, ... Zawiłe, długie menu Nienaturalne, nietypowe grupowanie funkcji Działanie wbrew przyzwyczajeniom Bogate zdobnictwo, przepych i ornamenty Mała odporność Zepsuć zawsze można

43 Plan Wstęp Zasady projektowania interfejsu użytkownikaInterakcja z użytkownikiem Prezentacja informacji Ocena interfejsu Podsumowanie

44 Podsumowanie Projektowanie skoncentrowane na użytkownikupojęcia użytkownika, spójność i logika, ergonomia, udogodnienia, pomoc Naturalna interakcja, dobrana do zastosowania Prezentacja danych odpowiednia do celu informacje ilościowe, jakościowe Oszczędny, spójny kolor uwzględnione częste wady wzroku zgodność z kulturą miejsca Pomoc kontekstowa potrzebuję pomocy potrzebuję informacji nie podkreśla winy użytkownika, ale pomaga zaradzić Dokumentacja do wszystkich zastosowań Ocena ilościowa, względem specyfikacji

45 ”People are primarily interested in focusing on their tasks and not on operating the interface””The computer becomes a "tool" in the best sense of the word—an extension of the user's body” Ben Bederson and Ben Shneiderman, The Craft of Information Visualization, Morgan Kaufmann Publishers, San Francisco, CA, 2003. Dziękuję