Projektowanie Graficznych Interfejsów Użytkownika
Transkrypt
Projektowanie Graficznych Interfejsów Użytkownika
Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 1 UCD - User Centered Design ● 1) User Centered Design – Projekt Skoncentrowany na Użytkowniku ● 2) Model Centered Design – Projekt Oparty na Modelach Projekt Inżynieria oprogramowania, ale w konkretnym zastosowaniu, do projektowania interfejsów użytkownika. Ewaluacja LATO 2007 Implementacja Projektowanie Graficznych Interfejsów Użytkownika 2 User Centered Design (UCD) ● 1) Analiza zadań ● 2) Szkice projektu ● 3) Papierowy prototyp ● 4) Testy wewnętrzne ● 5) Prototyp komputerowy ● 6) Ewaluacja heurystyczna ● ● 7) Implementacja 8) Testy z użytkownikami LATO 2007 Projekt 1 8 6 4 Ewaluacja Projektowanie Graficznych Interfejsów Użytkownika 2 3 5 7 Implementacja 3 Projekt systemu – Projekt GUI ● Fazę projekt podzielimy na 5 podprojektów: ● A) Projekt pojęciowy (analiza) – wyodrębnienie podstawowych koncepcji systemu jak np. obiektów, relacji i uogólnień. ● B) Projekt funkcjonalny (semantyczny) – zdefiniowanie operacji na wszystkich obiektach oraz danych wejściowych i wyjściowych. ● C) Projekt sekwencyjny (syntaktyczny) – definiuje kolejność operacji wprowadzania danych wejściowych i wyjściowych. Przykładem sekwencji jest: Wciśnij przycisk myszy na obiekcie, zmień pozycję myszy, zwolnij przycisk. Projekt syntaktyczny elementów wyjściowych uwzględnia rozmieszczenie elementów wyświetlanych oraz ich zmiany. ● D) Projekt wizualny – definiuje układ obiektów w widokach, kolejność widoków - „storyboards”, ● E) Projekt leksykalny – czasem określany jako projekt integrujący ze sprzętem, określa w jaki sposób i z jakimi rzeczywistymi prymitywami sprzętowymi połączone są elementy syntaktyczne. LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 4 Projekt pojęciowy (A) ● Etap Odkrywania / Analizy: – 1) określ klasy użytkowników (aktorów) – 2) określ cele użytkowników (oczekiwania) – 3) przeanalizuj aktualnie wykonywane czynności użytkownika – 4) zbuduj projekt przypadków użycia LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 5 Poznaj Użytkowników (A) ● Określ charakterystykę docelowej grupy użytkowników, która będzie wpływała na wymagania: – wiek, płeć, kulturę – poziom wykształcenia – możliwości fizyczne (np.: niepełnosprawni) – ogólne doświadczenie komputerowe – umiejętności (szybkie pisanie, czytanie) – doświadczenie związane z dziedziną pracy – doświadczenie z podobnymi aplikacjami – środowisko pracy i pozostałe elementy kulturowe – zależności i wzorce komunikacyjne LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 6 Projekt pojęciowy (A) ● Etap Odkrywania / Analizy: – 1) określ klasy użytkowników (aktorów) – 2) określ cele użytkowników (co musi być zrobione, wymagania) – 3) przeanalizuj aktualnie wykonywane czynności użytkownika – 4) zbuduj projekt przypadków użycia LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 7 Cele użytkowników (A) ● ● Co musi zrobione? - CEL! Co musi być zrobione aby coś innego było możliwe? - Warunki ● ● ● ● Jakich informacji potrzebuje użytkownik aby wykonać zadanie? Z jakich etapów składa proces wykonania zadania? – ● Od jakich innych czynności zależy dane zadanie? Podetapy mogą być podzielone na fragmenty Jak robić analizę? – Rozmowy z 'przyszłymi' użytkownikami – Bezpośrednia obserwacja aktualnie wykonywanej pracy Zagrożenia: – Powtarzanie złych wzorców aktualnie wykorzystywanych przez klienta. – Rezygnacja z /nie uwzględnienie/ pozytywnych aspektów aktualnych prac. Czyli szansy na modernizację procesu. LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 8 Projekt pojęciowy (A) ● Etap Odkrywania / Analizy: – 1) określ klasy użytkowników (aktorów) – 2) określ cele użytkowników (oczekiwania) – 3) przeanalizuj aktualnie wykonywane czynności użytkownika i zbuduj diagram czynności – 4) zbuduj projekt przypadków użycia LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 9 Projekt pojęciowy (A) ● Etap Odkrywania / Analizy: – 1) określ klasy użytkowników (aktorów) – 2) określ cele użytkowników (oczekiwania) – 3) przeanalizuj aktualnie wykonywane czynności użytkownika – 4) zbuduj projekt przypadków użycia (które stają się częścią formalnej specyfikacji wymagań) LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 10 Projekt funkcjonalny (B) ● Projekt funkcjonalny (semantyczny) – zdefiniowanie operacji na wszystkich obiektach oraz danych wejściowych i wyjściowych. – 1) Obiekty Użytkownika - określ obiekty którymi operuje użytkownik – 2) Przegląd Zadań - określ jakie czynności wykonuje system a jakie użytkownik – 3) Widoki Abstrakcyjne - jakie informacje musi widzieć użytkownik aby ukończyć zadanie – 4) Przepływ Zadań - sprecyzuj dokładnie interakcję użytkownika z systemem – 5) Stany Obiektów - co dzieje się danymi obiektami w trakcie interakcji z użytkownikiem LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 11 Projekt funkcjonalny (B) ● Projekt funkcjonalny (semantyczny) – zdefiniowanie operacji na wszystkich obiektach oraz danych wejściowych i wyjściowych. – 1) Obiekty Użytkownika - określ obiekty którymi operuje użytkownik – 2) Przegląd Zadań - określ jakie czynności wykonuje system a jakie użytkownik – 3) Widoki Abstrakcyjne - jakie informacje musi widzieć użytkownik aby ukończyć zadanie – 4) Przepływ Zadań - sprecyzuj dokładnie interakcję użytkownika z systemem – 5) Stany Obiektów - co dzieje się danymi obiektami w trakcie interakcji z użytkownikiem LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 12 Projekt funkcjonalny (C) ● Projekt funkcjonalny (semantyczny) – zdefiniowanie operacji na wszystkich obiektach oraz danych wejściowych i wyjściowych. – 1) Obiekty Użytkownika - określ obiekty którymi operuje użytkownik – 2) Przegląd Zadań - określ jakie czynności wykonuje system a jakie użytkownik – 3) Widoki Abstrakcyjne - jakie informacje musi widzieć użytkownik aby ukończyć zadanie – 4) Przepływ Zadań - sprecyzuj dokładnie interakcję użytkownika z systemem – 5) Stany Obiektów - co dzieje się danymi obiektami w trakcie interakcji z użytkownikiem LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 13 Projekt funkcjonalny (C) ● Projekt funkcjonalny (semantyczny) – zdefiniowanie operacji na wszystkich obiektach oraz danych wejściowych i wyjściowych. – 1) Obiekty Użytkownika - określ obiekty którymi operuje użytkownik – 2) Przegląd Zadań - określ jakie czynności wykonuje system a jakie użytkownik – 3) Widoki Abstrakcyjne - jakie informacje musi widzieć użytkownik aby ukończyć zadanie – 4) Przepływ Zadań - sprecyzuj dokładnie interakcję użytkownika z systemem – 5) Stany Obiektów - co dzieje się danymi obiektami w trakcie interakcji z użytkownikiem LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 14 Projekt wizualny (D) ● ● ● Zgodność z projektem abstrakcyjnym – Wszystkie elementy i decyzje podjęte w fazie projektu abstrakcyjnego powinny mieć swój odpowiednik w projekcie wizualnym. – Nie powinno się robić żadnych rozszerzeń. Czytelność reprezentowanych obiektów – Obiekty, wyodrębnione w fazie abstrakcyjnej powinny być w czytelny sposób reprezentowane dla użytkownika. – Obiekty powinny być łatwo rozpoznawalne przez użytkownika na wszystkich etapach procesu używania systemu. – W jasny i czytelny sposób powinny być reprezentowane aktualne stany obiektów oraz ich zmiany. Zgodność i czytelność mają bezpośredni wpływ na użyteczność systemu. LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 15 Projekt wizualny – Trzy poziomy (D) ● ● ● Poszczególne obiekty – Prezentacja pojedynczych obiektów – Model obiektów, Środowisko Widoki prezentacji – Układy, interakcje – Widoki abstrakcyjne, sekwencje, stany, platforma, środwisko Całkowity odbiór użytkownika – Weryfikacja zgodności i czytelności – Prototypowanie, testy zespołowe (in-house) LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 16 Projekt wizualny – Identyfikacja (D) ● ● Pojedyncze obiekt użytkownika pojawiają się w wiele razy w różnych widokach z różnymi liczebnościami oraz z różnymi możliwościami zajęcia powierzchni ekranu. Każdy obiekt musi być identyfikowalny w całym systemie. Obiekty Różne reprezentacje wizualne obiektu 1 Obiekt 1 Obiekt 2 Obiekt 3 Obiekt 2 Obiekt 1 Obiekt 1 Obiekt 2 Obiekt 1 Obiekt 3 Obiekt 1 Obiekt 2 Obiekt 3 Obiekt 1 Obiekt 1 Obiekt 1 LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 17 Projekt wizualny – Całkowity odbiór (D) ● ● Całkowity odbiór aplikacji przez użytkownika musi uwzględniać: – odpowiednie diagramy sekwencji, – być zgodnym ze scenariuszami przypadków użycia, o ile były stworzone w wymaganiach, – o ie to możliwe pozwalać na interakcję (prototypy), – uwzględniać możliwość występowania kilku wersji do wyboru przez użytkownika, Jest realizowany za pomocą: – – LATO 2007 scenopisów (np. „storyborads”) ● dokumenty tekstowe ● prezentacja OpenOffice Impress lub PowerPoint itp. prototypów Projektowanie Graficznych Interfejsów Użytkownika 18 „Storyboard” (D) LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 19 „Storyboard” - Przykład 2 (D) LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 20 Projekt leksykalny Cel: mapowanie elementów interfejsu graficznego z elementami architektury systemu: akcje, kontrolki stosowane dla odpowiednich elementów graficznych. LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 21 Projekt leksykalny - Akcje u i P ro j e k t le k s y k a ln y «w w w » Z a m o w ie n ie B ile tu c m d Z a tw ie rd z c m d A n u lu j ( f r o m P r o je k t w i z u a l n y ) ( f r o m P r o je k t w i z u a l n y ) « tra c e » ( f r o m P r o je k t w i z u a l n y ) « tra c e » « n a v ig a te » « in sta n tia te » S c re e n 2 « G U IA c tio n » A k c j a W a lid a c j i W a lid a c j a D a n y c h C z y p o p ra w n a ? T ak « tra c e » S c re e n 1 N ie LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 22 Projekt leksykalny - Akcje c d U s e r In te r fa c e p o ka z d o s ta w y .lis ta M odel « a c tio n » :D o s ta w a .L is ta .A k c j a P o rt1 L ista D o sta w (fro m L o g ic a l M o d e l) : : D o s t a w a . L i s t a . A k c ja + e x e c u te () : v o id IM o d e l D o daj E d y tu j D ru ku j Z a tw ie rd z p o ka z do daj « a c tio n » D o s ta w a .L is ta .A k c ja + e x e c u te () : v o id p o ka z D o s ta w a .P o z y c j a .U s u n D o s ta w a .D o d a j D o sta w c a N ie T ak K u rie r p o ka z D a ta P o z y c je u su n « a c tio n » :D o s ta w a .D o d a j .A k c j a D od aj U su ń E d y tu j « a c tio n » :D o s ta w a .D o d a j .A k c j a Zachow a j : : D o s t a w a . D o d a j. A k c ja + e x e c u te () : v o id : : D o s t a w a . D o d a j. A k c ja + e x e c u te () : v o id A n u lu j « a c tio n » zacho w a j D o s ta w a .D o d a j.A k c ja + e x e c u te () : v o id p o ka z LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 23 Projekt leksykalny - implementacja u i P r o j e k t w iz u a ln y D r o p D o w n L is t «w w w » D a te T im e P ic k e r Z a m o w ie n ie B ile tu M ie jsc e i d a ta w y lo tu : c b o M ie jsc e W y lo tu d tW y lo t M ie jsc e i d a ta d o c e lo w a : c b o M ie jsc e C e l d tC e l L ic z b a p rz e sia d e k: c b o P rz e sia d ki M o ż liw o ść a n u lo w a n ia re z e rw a c j i: c h kA n u lo w a n i e R e z e rw a c ji CheckBox K a rta F o rm a p ła tn o śc i: G o to w ka c b o K la sa K la sa b ile tu : c m d Z a tw ie rd z c m d A n u lu j «w w w » Z a m o w ie n ie B ile tu A u to b u s o w e g o Z a m o w in e i e B ile tu K o le j o w e g o T y p o p o c ią g u : P rz e le w e K lim a ty z a c ja c b o T y p P o c ia g u Z a m o w ie n i e B ile tu L o tn ic z e g o J e d ze n ie : LATO 2007 c b o W y z y w ie n ie Projektowanie Graficznych Interfejsów Użytkownika 24 Interakcja ● Dziękuję za uwagę. ● Chcemy być coraz lepsi! ● Jeżeli coś cię zainteresowało napisz e-maila: – ● Jeżeli coś cię bardzo znudziło napisz e-maila: – ● [email protected] [email protected] Jeżeli zauważyłeś błąd napisz e-maila: – LATO 2007 [email protected] Projektowanie Graficznych Interfejsów Użytkownika 25