From d6fe682f64c9bd0fcbca66a4b0fbbe37f075c2e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miko=C5=82aj=20Krzymi=C5=84ski?= Date: Tue, 17 Nov 2020 22:57:03 +0100 Subject: [PATCH] Zaktualizuj 'use-case.md' --- use-case.md | 122 ++++++++++++++++++++++++++-------------------------- 1 file changed, 61 insertions(+), 61 deletions(-) diff --git a/use-case.md b/use-case.md index f89440c..c1ef8c4 100644 --- a/use-case.md +++ b/use-case.md @@ -1,65 +1,65 @@ -Opis skrócony przypadków użycia -=============================== +# **Projekt: Automat** -Aktorzy procesu i ich cele --------------------------- +## Opis skrócony przypadków użycia -Aktor | Cel -----------------------|------------------------------ -Klient | Zakup produktów -Zaopatrzeniowiec | Uzupełnienie brakujących produktów (lub tych które się kończą) i aktualizuje stanu maszyny (w tym gotówkę) -Serwisant | Przeprowadzenie serwisu automatu -System płatniczy | Realizacja transakcji gotówkowych i płatności kartą +### Aktorzy procesu i ich cele: +| Aktor | Cel | +|----------------------|---------------------------------------------------------------------------------| +| Klient | zakup produktów | +| Zaopatrzeniowiec | uzupełnienie brakujących produktów (lub tych które się kończą) | +| Zaopatrzeniowiec | aktualizuje stanu maszyny (w tym gotówkę) | +| Serwisant | przeprowadzenie serwisu automatu | +| Serwisant | naprawa systemu w przypadku awarii | +| System płatniczy | realizacja transakcji gotówkowych i płatności kartą | +| Automat | maszyna wydająca posiłki i produkty | +| Dział zaopatrzeniowy | osoby odpowiedzialne za dostawę i zaopatrywanie automatu (w produkty i gotówkę) | + +### Słownik: +| Hasło | Opis | +|---------------------------|---------------------------------------------------------------------------------| +| Stan magazynowy | ilość produktów danego typu w maszynie | +| Minimalny stan magazynowy | ilość produktu danego typu, przy której maszyna wysyła informację o konieczności jej uzupełnienia | +| Gotowy produkt | Produkt niewymagający przygotowania, np. Baton, napój w puszcze | +| Przygotowany produkt | Produkt wymagający wcześniejszego przygotowania np. Obróbki termicznej: ciepła bułka lub zalania wrzątkiem: kawa, herbata | +| Terminal | urządzenie umożliwiające płacenie kartą wyłącznie zbliżeniowo | +| Serwisant | odpowiedzialna za utrzymanie poprawnego działania automatu, wsparcie techniczne | + +### UseCases: + +**Use Case 1: Automat - Wysłanie komunikatu o stanie magazynowym produktów** +Dział zaopatrzeniowy wysyła prośbę o raport stanu magazynowego wszystkich produktów do maszyny o odpowiednim ID. Automat sprawdza stan wszystkich produktów. Automat wysyła raport stanu do działu zaopatrzenia (ilość każdego z produktów). + +**Use Case 2: Automat- sprzedaż produktu** +Klient wprowadza dostępny numer produktu. Automat wyświetla konieczną do zapłacenia kwotę. Klient dokonuje płatności(patrz UC 3 lub UC4). Automat przygotowuje i wydaje produkt. Automat sprawdza stan magazynowy zakupionego produktu. Jeśli, stan magazynowy tego produktu jest równy minimalnemu stanowi magazynowemu, automat poprzez sieć internetową wysyła informację do działu zaopatrzenia ze swoim ID i ID produktu. + +**Use Case 3: Automat - płatność gotówką** +Klient wrzuca monety lub podaje banknoty. Automat sumuje pieniądze i wyświetla pozostałą wartość w czasie rzeczywistym. Jeśli wartość zamówienia zostanie osiągnięta, automat akceptuje płatność. Nadwyżka salda oznacza wydanie reszty. Jeżeli stan któregoś z nominałów jest mniejszy od minimalnego, automat wysyła informację do działu zaopatrzenia ze swoim ID, nominałem i jego ilością. + +**Use Case 4: Automat - płatność kartą** +Klient wybiera płatność kartą. Automat uruchamia terminal. Terminal łączy się z serwisem płatniczym. Automat wyświetla wartość zamówienia na terminalu. Klient dokonuje płatności kartą. Automat wysyła dane potrzebne do przelewu. Automat przetwarza informacje zwrotną. Automat akceptuje transakcje. + +**Use Case 5: Serwisant - Przeprowadzenie serwisu automatu - “diagnostyka automatu”** +Serwisant, przy pomocy dedykowanego systemu uruchamia opcję “diagnostyka automatu”. Automat zmienia swój stan z “gotowy do użytku” na “tryb diagnostyczny”. Automat przeprowadza przygotowaną procedurę diagnozy. Automat generuje raport i wysyła go do działu serwisu. Automat zmienia swój stan na “gotowy do użytku”. + +**Use Case 6: Zaopatrzeniowiec – Dodanie pieniędzy do automatu** +Zaopatrzeniowiec wybiera w systemie opcję “Dodanie pieniędzy”. Zaopatrzeniowiec dodaje monety do poszczególnych przegródek na odpowiednie nominały. Zaopatrzeniowiec włącza funkcję “przeliczenia pieniędzy”. Automat przelicza monety i banknoty oraz wysyła informację do działu zaopatrzeniowego o nowym stanie kasetki. Zaopatrzeniowiec wyłącza funkcję dodawania pieniędzy i przełącza automat w tryb “gotowy do użytku”. + +**Use Case 7: Zaopatrzeniowiec – Dodanie towaru do automatu** +Zaopatrzeniowiec uzupełnia brakujący towar w automacie. Po uzupełnieniu wybiera w systemie opcję “Uzupełniono towar”. Następnie system czujników w automacie sprawdza nowy stan poszczególnych produktów i wysyła odpowiedni raport do działu zaopatrzeniowego. Automat przechodzi w stan gotowości do zamknięcia. Po zamknięciu automat przechodzi w tryb “gotowy do użytku”. + +**Use Case 8: Serwisant – Naprawa automatu w przypadku awarii systemu** +Serwisant wyłącza automat. Następnie pobiera logi systemowe z automatu w celu ich analizy (znalezienia błędu). Po analizie serwisant podpina się do systemu i przełącza go w stan naprawy. Po naprawie serwisant przeprowadza scenariusz zakupu (patrz UC2) a następnie gdy przeszedł on testy to przełącza go w stan gotowości do działania. + +**Use Case 9 Automat- Generowanie raportu ze sprzedaży** +Po wybraniu funkcji “Raport sprzedaży” automat generuje raport, w którym znajdują się informacje kiedy dany produkt został wykupiony i po jakim czasie od ostatniego uzupełninia towaru. Raport po wygenerowaniu zostanie wysłany na działu zaopatrzeniowego. + +**Use Case 10 Zaopatrzeniowiec - Pobranie pieniędzy z automatu** +Zaopatrzeniowiec przełącza automat w stan pobrania pieniędzy. Czujniki w kasetce przeliczają ilość pieniędzy do wydania i następnie generują raport i wysyłają go do działu zaopatrzeniowego i właściciela automatu. Zaopatrzeniowiec pobiera pieniądze. Zaopatrzeniowiec wyłącza funkcję pobierania pieniędzy i przełącza automat w tryb “gotowy do użytku”. + +**Use Case 11 Automat - Awaryjne wyłączenie się automatu** +Automat jest odporny na pojawienie się błędów systemowych podczas działania. W przypadku natrafienia na jeden z nich, automat nie wyłącza się. Zostaje automatycznie pobierany raport błędu, a szczegółowe dane w nim zawarte zostają przesłane do specjalnego systemu powiadomień serwisanta. + +**Use Case 12 Automat - Alarm przy próbie włamania** +Automat za pomocą specjalnego czujnika wykrywa nieautoryzowane otwarcie. Oznacza to próbę włamania. Automat włącza alarm dźwiękowy oraz wysyła powiadomienie z dokładnym czasem oraz identyfikatorem maszyny. Serwisant otrzymuje powiadomienie w specjalnym systemie i jest w stanie wyłączyć alarm dźwiękowy zdalnie. -Słownik -------- - -Hasło |Opis ----------------------------|----------------------------- -Stan magazynowy | Ilość produktów danego typu w maszynie -Minima stan magazynowy | Ustalona ilość produktów danego typu, przy której maszyna wysyła informację o konieczności jego uzupełnienia -Gotowy produkt | Produkt niewymagający przygotowania, np. baton, napój w puszcze -Przygotowany produkt | Produkt wymagający wcześniejszego przygotowania np. obróbki termicznej: ciepła bułka lub zalania wrzątkiem: kawa, herbata - | - -Przypadki użycia ----------------- - -### Use case 1: Automat - Wysłanie komunikatu o kończeniu się produktu - -1. Po poprawnie wykonanej transakcji, automat sprawdza stan magazynowy produktu, który został sprzedany -2. Jeśli, stan magazynowy tego produktu jest równy minimalnemu stanowi magazynowemu, automat poprzez sieć wysyła informację do działu zaopatrzenia ze swoim ID i ID produktu - -### Use case 2: Automat - Wysłanie komunikatu o stanie magazynowym produktów - -1. Serwer wysyła do maszyny o odpowiednim ID prośbę o raport stanu magazynowego wszystkich produktów -2. Automat sprawdza stan wszystkich produktów -3. Automat wysyła raport stanu do działu zaopatrzenia - -### Use case 3: Klient - Zakup gotowego produktu - -1. Automat wyświetla komunikat “Wybierz numer produktu” -2. Klient wprowadza numer gotowego produktu, który chce zakupić -3. Automat wyświetla konieczną do zapłacenia kwotę -4. Klient wrzuca monety -5. Dopóki kwota wpłacona przez klienta nie zrówna się, bądź nie przewyższy wartości wybranego wcześniej produktu, po każdej wrzuconej monecie automat wyświetla komunikat ile jeszcze pieniędzy należy wprowadzić -6. Automat wydaje produkt i resztę z transakcji - -### Use case 4: Klient - Zakup przygotowanego produktu - -1. Automat wyświetla komunikat “Wybierz numer produktu” -2. Klient wprowadza numer przygotowanego produktu, który chce zakupić -3. Automat wyświetla konieczną do zapłacenia kwotę -4. Klient wrzuca monety -5. Dopóki kwota wpłacona przez klienta nie zrówna się, bądź nie przewyższy wartości wybranego wcześniej produktu, po każdej wrzuconej monecie automat wyświetla komunikat ile jeszcze pieniędzy należy wprowadzić -6. Automat uruchamia procedurę przygotowania produktu -7. Automat wydaje produkt i resztę z transakcji - -### Use case 5: Serwisant - Przeprowadzenie serwisu automatu - “diagnostyka problemu” - -1. Serwisant, przy pomocy aplikacji mobilnej uruchamia opcję “diagnostyka problemu” -2. Automat zmienia swój stan z “uruchomiony” na “tryb diagnozy” -3. Automat przeprowadza przygotowaną procedurę diagnozy -4. Automat generuje raport i wysyła go do działu serwisu -5. Automat zmienia swój stan na “uruchomiony” \ No newline at end of file