Use Case 1: Zakup produktu ===================== **Aktor podstawowy:** Klient Główni odbiorcy i oczekiwania względem systemu: ----------------------------------------------- - Klient: oczekuje możliwości zakupu wybranego produktu - Klient: oczekuje możliwość rezygnacji z zakupu przed dokonaniem płatności - Klient: oczekuje szybkiego wydania poprawnego produktu Warunki wstępne: ---------------- Klient znajduje się przed automatem Warunki końcowe: ---------------- Klient otrzymał zamówiony produkt, stan magazynu jest zaktualizowany Scenariusz główny (ścieżka podstawowa): --------------------------------------- 1. Klient naciska przycisk start na automacie 2. Klient wybiera na terminalu poprawny kod produktu jaki chce zakupić 3. Klient wybiera sposób w jaki chce dokonać płatności 4. Po zakończeniu płatności wybrany produkt jest wydawany 5. Automat aktualizuje stan ilości produktów 6. Klient odbiera wybrany produkt Rozszerzenia (ścieżki alternatywne): ------------------------------------ *a. Automat zawiesza się 1. Następuje restart 2. Powrót do kroku 1 scenariusza głównego --- (1-3)a. Klient zmienia ustawienia językowe 1. Następuje restart interfejsu w nowo wybranym języku bez restartu procesu zakupu --- (1-3)b. Klient anuluje proces zakupu 1. Następuje restart procesu zakupu 2. Powrót do kroku 1 scenariusza głównego --- 2a. Wybrano niepoprawny produkt 1. Automat informuje klient o wybraniu niepoprawnego produktu 2. Powrót do kroku 2 scenariusza głównego 2b. Anulowano zakup 1. Następuje restart procesu zakupu 2. Powrót do kroku 1 scenariusza głównego --- 3a. Anulowano zakup 1. Następuje restart procesu zakupu 2. Powrót do kroku 1 scenariusza głównego 3b. Wybrano płatność kartą (UseCase3) 3c. Wybrano płatność gotówką (UseCase4) --- 5a. Próba przesłania stanu magazynu nie powiodła się 1. Automat zapisuje stan magazynu i czas wykonania aktualizacji 5b. Próba przesłania stanu magazynu powiodła się 1. Automat sprawdza czy ma do wysłania zaległe aktualizacje 2. Automat podejmuje próbę ponownego wysłania zaległych aktualizacji Wymagania specjalne: -------------------- - Obsługa interfejsu w języku polskim i angielskim Wymagania technologiczne oraz ograniczenia na wprowadzane dane: --------------------------------------------------------------- --- b*. Możliwość zmiany języku interfejsu powinna być dostępna w widocznym miejscu w każdym kroku (1 - 3) procesu zakupu --- c*. Możliwość anulowania procesu zakupu powinna być dostępna w widocznym miejscu w każdym kroku --- 2.Kod produktu powinien być liczbą całkowitą z zakresu od 1 do 999 Kwestie otwarte: ---------------- - Jak długo automat powinien przechowywać nieudane próby aktualizacji magazynu - Ile razy automat powinien podjąć próbę przesłania aktualizacji