This commit is contained in:
Mikołaj Paterka 2020-11-17 21:05:43 +01:00
parent 63b789779b
commit 3ba63fdb0b

View File

@ -1,42 +1,57 @@
# **Projekt: Automat** # **Projekt: Automat**
---
## Opis skrócony przypadków użycia ## Opis skrócony przypadków użycia
---
**###Aktorzy procesu i ich cele:** ### Aktorzy procesu i ich cele:
| Aktor | Cel | | Aktor | Cel |
|---|---| |---|---|
| Klient | zakup produktów | 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ę) | | 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 | | Serwisant | Przeprowadzenie serwisu automatu |
| System płatniczy | Realizacja transakcji gotówkowych i płatności kartą | | System płatniczy | Realizacja transakcji gotówkowych i płatności kartą |
**###Słownik:** ### Słownik:
| Hasło | Opis | | Hasło | Opis |
|---|---| |---|---|
| Serwisant | odpowiedzialna za utrzymanie poprawnego działania automatu, wsparcie techniczne | | Serwisant | odpowiedzialna za utrzymanie poprawnego działania automatu, wsparcie techniczne |
### UseCases: ### UseCases:
---
1. **Use Case 1: Automat -** **Use Case 1: Automat - Wysłanie komunikatu o stanie magazynowym produktów**
Wysłanie komunikatu do magazynu o braku/kończeniu się produktów (pojedyńcze zdarzenie czy use case?) (Trigger do innego use case) 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).
2. **Use Case 2: Klient ** **Use Case 2: Automat- sprzedaż produktu**
Zakup gotowego produktu (batonik, puszka etc.) 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.
3. **Use Case 3: Klient ** **Use Case 3: Automat - płatność gotówką**
Zakup przygotowego produktu (kawa etc.) 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ą.
4. **Use Case4: Serwisant ** **Use Case 4: Automat - płatność kartą**
Przeprowadzenie serwisu automatu (tylko rzeczy systemowe, bez mechanicznych) 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.
5. **Use Case5: Dostawca ** **Use Case 5: Serwisant - Przeprowadzenie serwisu automatu - “diagnostyka automatu”**
Odebranie/Dodanie pieniędzy z automatu(zatwierdzenie pobranej/dodanej wartości w systemie) 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”.
6. **Use Case6: Dostawca ** **Use Case 6: Zaopatrzeniowiec Dodanie pieniędzy do automatu**
Dokładanie towaru do automatu(potwierdzenie stanu, który automatycznie uzupełnia ilość za pomocą czujników) 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”.
7. **Use Case7: Serwisant **
Naprawa automatu w przypadku awarii (awaria systemu) (wyłączenie automatu jako osobny use case)(lista błędów)
**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.