diff --git a/use-case-9.md b/use-case-9.md index 2e54257..23999eb 100644 --- a/use-case-9.md +++ b/use-case-9.md @@ -1,94 +1,110 @@ + Use Case 9: Automat- Generowanie raportu ze sprzedaży ===================== -**Aktor podstawowy: Klient** +**Aktor podstawowy: Zaopatrzeniowiec** Główni odbiorcy i oczekiwania względem systemu: ----------------------------------------------- - - - Odbiorca1: oczekiwania ... - - - Odbiorca2: oczekiwania ... - - - Odbiorca3: oczekiwania ... + - Dział zaopatrzeniowy: uzyskanie informacji, które produkty są najszybciej kupowane. Warunki wstępne: ---------------- - -... +Zaopatrzeniowiec jest zalogwany do systemu. Warunki końcowe: ---------------- - -... +Dział zaopatrezniowy otrzymał od automatu poprawnie wygenerownay raport sprzedazy. Scenariusz główny (ścieżka podstawowa): --------------------------------------- - 1. Krok 1 scenariusza głównego. - 2. Krok 2 scenariusza głównego. - 3. Krok 3 scenariusza głównego. - 4. .... + 1. Zaopatrzenieowiec wybiera w systemie funkcję *Generowanie raportu sprzedży*. + 2. Zaopatrezniowec wybiera produkt (jeden,kilka lub wszytkie), którego ten raport bedzie dotyczył i go/je akceptuje. + 3. Zapatrezniowec akceptuje zamy czasowe raportu (data_od_kiedy, data_do_kiedy). + 4. Autoamt generuje raport sprzedaży. + Raport zawiera: + - id_automatu + - id_produktu + - nazwa_produktu + - data_od_kiedy (domyślnie: od dnia ostatniego dołozenia produktu do autoamtu) + - data_do_kiedy (domyślnie: do dnia wybrania opcji (włącznie)) + - liczby_zakupów_danego_produktu_w_jednym_dniu (w kazdym dniu) + - liczby_zakupów_danego_produktu_w_jednym_tygodniu (w kazdym tygodniu) + - liczba_zakupów_danego_produktu_w_całym okresie + - liczba_wszystkich_kupionych_produktów_w_jednym_dniu (w kazdym dniu) + - liczba_wszystkich_kupionych_produktów_w_tygodniu (w kazdym tygodniu) + - liczba_wszystkich_kupionych_produktów_w_całym_okresie + - stosunek_liczby_zakupów_danego_produktu_w_jednym_dniu_do_liczby_wszystkich_kupionych_produktów_w_jednym_dniu (w kazdym dniu) + - stosunek_liczby_zakupów_danego_produktu_w_jednym_tygodniu_do_liczby_wszystkich_kupionych_produktów_w_tygodniu (w kazdym tygodniu) + - stosunek_liczby_zakupów_danego_produktu_w_całym_okresie_do_liczby_wszystkich_kupionych_produktów_w_całym_okresie + 5. Automat wysyła raport do działu zaopatrzeniowego. Rozszerzenia (ścieżki alternatywne): ------------------------------------ - *a. nazwa rozszerzenia + *a. Brak prądu/ nagłe wyłączenie zasilania + 1. Ponowane włączenie automatu + 2. Automat przechodzi w tryb *Gotowy do działania* + 3. Funkcje przerwane, nalezy rozpocząć od nowa - 1. krok pierwszy rozszerzenia *a - 2. krok drugi rozszerzenia *a + *b Resetowanie sytemu (uruchamianie ponowanie) + 1. Automat przechodzi w tryb *Gotowy do działania* + 2. Funkcje przerwane, nalezy rozpocząć od nowa - 3a. nazwa rozszerzenia + 1a. Wybranie niewłaściwej funkcji + 1. Zaopatrezniowec wybiera opcję cofnij + 1a. Brak mozliwości przejścia do listy z dostepnymi funkcajmi + 1. Po odczekaniu 15s, zaopatrzeniowiec resetuje system + 2. Wybranie funkcji *Generowanie raportu sprzedazy* - 1. krok pierwszy rozszerzenia 3a - 2. krok drugi rozszerzenia 3a + 2a. Zaopatrzeniowiec modyfikuje/zmienia wybrany/-e produkt/-y, którego/-ych będzie dotyczył raport + 1. Zaopatrzeniowiec wybiera opcję *Zmień produkt/-y* + 2. Automat wyświetla listę produktów + 3. Zaopatrzeniowiec modyfikuje listę po przez kliknięcie na dany produkt - 2a. nazwa scenariusza alternatywnego dla kroku 2 rozszerzenia 3a + 3a. Zaopatrzeniowiec modyfikuje ramy czasowe raportu (data_od_kiedy, data_do_kiedy) + 1. Zaopatrzeniowiec wybiera opcję *Modyfikuj* + 2. Zaopatrzeniowec wpisuje nowe ramy czasowe (recznie- z klawiatury) - 1. Krok pierwszy. - 2. Krok drugi. - 3. ... + 4a. Błąd w generowaniu raportu + 1. Automat wyświetla komunikat o błędym wykonaniu funkcji + 2. Zaopatrzeniowiec wybiera opcję *Wyświetl szczegóły błędu* + 3. Automat wyświetla szczegóły błędu + 3a. Automat nie wyświetla szczegółów błędu + 1. Powrót do kominikatu o błędzie + 2. Zaopatrzeniowiec wybiera *Wyświetl szczegóły błędu* + 3. System poprawnie wyświetlił szczegóły błędu + 3a System nie wyświetlił szczegółów błędu - wyświetlił np. puste okienko + 1. Ponownie uruchominie systemu w automacie + 4. Powrót do menu głównego + 5. Automat przechodzi w stan *Gotowy do uzytku* + + 5a. Niepowdzenie w wyłaniu raportu + 1. Automaty wyświetla kominikat o niepowodzeniu wysłania raportu + 2. Zapatrezniowiec wybiera opcję *Wyślij ponowanie* + 3. Automata wysyła raport do działu zaopatrezniowego + 3a. Automaty wyświetla kominikat o niepowodzeniu wysłania raportu + 1. Ponownie uruchominie systemu w automacie + 4. Powrót do menu głównego + 5. Automat przechodzi w stan *Gotowy do uzytku* - 2b. nazwa scenariusza alternatywnego dla kroku 2 rozszerzenia 3a - - 1. Krok pierwszy. - 2. ... - - 3. krok trzeci rozszerzenia 3a - 4. krok czwarty rozszerzenia 3a - - 3b. nazwa rozszerzenia - - 1. krok pierwszy rozszerzenia 3b - 2. krok drugi rozszerzenia 3b - 3. ... - - 3-4a. nazwa rozszerzenia Wymagania specjalne: -------------------- + - Raport jest generowny w języku polskim - - ... + - Po wybraniu produktu z listy, dany produkt zostaje podświetlony (jego tło zmienia kolor) - - ... - - - ... + - W raporcie statystyki/liczby poszczególnych produktów, rozpoczynają się od nowe strony (by potem mozna było łatwo wydzielić statystyki poszczegónego produktu) Wymagania technologiczne oraz ograniczenia na wprowadzane dane: --------------------------------------------------------------- + - Automat ma dostęp do internetu - 2a. ... - - 2b. ... - - 3a. ... Kwestie otwarte: ---------------- + - Raport genrowany w języku obcym - - ... - - - ... - - - ...