14 - Interfejsy

Projektowanie interfejsu użytkownika dla systemu

1. Wymagania funkcjonalne

  • definiowane ze względu na cel działania systemu
  • lista funkcjonalności, które powinien realizować system
  • realizację poszczególnych funkcjonalności opisują tzw. przypadki użycia

Przypadek użycia:

  • wymaga zdefiniowania "aktorów" oraz celów, które chcą oni osiągnąć
  • scenariusz współdziałania użytkownicy-system prowadzący do osiągnięcia określonego celu
  • może zawierać ścieżki alternatywne

Przykład:

System: kasa

Aktorzy i cele:

  • kasjer: chce szybko wprowadzać dane, bez błędów (braki są odciągane z pensji)
  • klient: chce szybko i bez wysiłku kupić towary i otrzymać potwierdzenie zakupu
  • przedsiębiorstwo: chce poprawnej realizacji transakcji, zadowolenia klienta (żeby przyszedł ponownie), odporności systemu na podstawowe błędy (żeby przykładowo nie znikały dane w razie awarii prądu)
  • urząd skarbowy: chce otrzymać podatek od każdego sprzedanego towaru

Przypadek użycia - dokonanie zakupu:
1. Klient przychodzi do kasy z wybranymi towarami, aby je nabyć.
2. Kasjer wprowadza identyfikator produktu.
3. System wyświetla informację o produkcie (opis i cena) oraz aktualną sumę do zapłaty (na bazie reguł obliczania cen, którymi dysponuje system - np. dotyczących podatków).
Kroki 2-3 są powtarzane dla każdego produktu.
4. System informuje o sumarycznej kwocie do zapłaty (wraz z podatkami), którą kasjer przedstawia klientowi i prosi o jej zapłacenie.
5. Klient płaci, system zachowuje informację o płatności.
6. System drukuje potwierdzenie dokonanego zakupu (paragon).
7. Klient odchodzi z towarami i paragonem.

Ścieżki alternatywne:
*a. w dowolnym czasie - awaria prądu
2a. błędny identyfikator produktu
2-4a. klient rezygnuje z zakupu wprowadzonego już towaru, prosi kasjera o jego usunięcie z listy
4a. klient informuje, że jest upoważniony do zniżki
5a. klient płaci gotówką
5b. klient płaci kartą
(dla każdej z tych ścieżek trzeba dopisać osobny fragment "podscenariusza")

Biznesowe przypadki użycia: http://docs.google.com/Doc?id=ajdgfffc38w6_160543fk95q
Przypadki użycia: http://docs.google.com/Doc?id=ajdgfffc38w6_162dnnjdhf6

2. Analiza użytkownika - czyli potencjalnych użytkowników systemu

  • dla kogo system jest przeznaczony?
  • czego użytkownik oczekuje od systemu?
  • jak zaawansowany jest użytkownik, czy i jakie ma doświadczenie w użytkowaniu podobnych systemów?
  • jak dopasować działanie systemu do doświadczeń użytkownika z życia codziennego? (?)
  • jak powinien wyglądać system, żeby był ładny z punktu widzenia użytkownika? :)

3. Architektura informacji

- przepływ informacji w systemie, ich rodzaje i wzajemne powiązania

4. Prototypowanie

  • prototyp interfejsu w wersji "papierowej" (mogą też być interaktywne)
  • rysunek przedstawiający rozmieszczenie poszczególnych elementów interfejsu uczestniczących w realizacji funkcjonalności
  • nie chodzi tu o kwestie ładnego wyglądu interfejsu, lecz o strukturę

5. Testy użytecznościowe

  • często z wykorzystaniem użytkowników

6. GUI - Graphical User Interface


Zadanie

W trzyosobowych grupach.
Dla wylosowanego projektu napisać raport z realizacji punktów 1,2 i 4.
1. Należy zdefiniować aktorów (lub aktora) i ich cele, opisać wszystkie przypadki użycia systemu prowadzące do osiągnięcia wymienionych celów, bez ścieżek alternatywnych.
2. Przeprowadzić analizę użytkownika/użytkowników systemu.
4. W formie rysunku z opisem działania elementów interfejsu oraz uzasadnieniem ich rozmieszczenia (wykorzystać też wiedzę dotyczącą użyteczności).

deadline: 07.06.2008
punkty: 5

Strona na licencji Creative Commons Attribution-ShareAlike 3.0. Autorzy: A. Czoska, M. Komosiński, B. Kowalczyk, A. Kupś, M. Lubawy