Skip to content

3. Specifikacija zahtjeva sustava

Eugen Kozomara edited this page Jan 24, 2025 · 25 revisions

Dijagrami obrazaca uporabe

Kako bi se postigla bolja preglednost funkcionalnosti i obrazaca uporabe, osim visokorazinskog dijagrama obrazaca uporabe cijelog sustava, izrađeni su i posebni dijagrami za svakog korisnika MenZg aplikacije.


1. Visokorazinski dijagram obrazaca uporabe cijelog sustava

Cjelokupni pogled

2. Dijagram obracaza uporabe za funkcionalnosti studenta

Student

3. Dijagram obracaza uporabe za funkcionalnosti djelatnika

Djelatnik

4. Dijagram obracaza uporabe za funkcionalnosti administratora

Administrator

Obrasci uporabe

Opis obrazaca uporabe

UC1 - Prijava korisnika

  • Glavni sudionik: student, djelatnik, administrator
  • Cilj: prijaviti se u aplikaciju MenZg
  • Sudionici: OAuth 2.0 (Google)
  • Preduvjet: /
  • Opis osnovnog tijeka:
  1. Korisniku se na login stranici aplikacije nudi mogućnost prijavljivanja pomoću google računa
  2. Korisnik bira opciju prijave preko google računa i unosi detalje za prijavu.
  3. Sustav preko OAuth 2.0 standarda provodi autentifikaciju korisnika.
  4. Korisnik je uspješno autentificiran.
  5. Sustav prebacuje korisnika na naslovnu stranicu aplikacije.
  • Opis mogućih odstupanja:
  1. Korisnik unese pogrešne informacije, prijava nije odobrena, te prima poruku koja ga obavještava o tome.
  2. Korisnik unese točne informacije računa, ali prijava nije odobrena, zato jer je taj račun blokiran od strane administratora.

UC2 - Pregled svih menzi

  • Glavni sudionik: student, djelatnik, administrator
  • Cilj: pregledati sve dostupne menze
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je uspješno prijavljen u aplikaciju
  • Opis osnovnog tijeka:
  1. Nakon uspješne prijave prikazuje se naslovna stranica aplikacije.
  2. Sustav iz baze podataka dohvaća osnovne informacije svih dostupnih menzi.
  3. Na intuitivnom sučelju korisniku se prikazuju sve dostupne menze i osnovne informacije o njima.

UC2.1 - Oznaka menzi kao omiljene

  • Glavni sudionik: student, administrator
  • Cilj: označiti menzu kao omiljenu
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je prijavljen u sustav kao student ili administrator
  • Opis osnovnog tijeka:
  1. Korisnik prelazi mišom preko prikaza određene menze.
  2. Korisničko sučelje pruža mogućnost korisniku da označi odabranu menzu kao omiljenu.
  3. Sustav provjerava u bazi podataka je li određena menza već označena kao omiljena.
  4. Sustav uvidom podataka iz baze potvrđuje da menza nije već od prije označena kao omiljena.
  5. Odabrana menza se sprema u bazi kao omiljena.
  • Opis mogućih odstupanja:
  1. Uvidom u bazu podataka sustav utvrđuje da je menza već označena kao omiljena.
  2. Sustav u bazi podataka odznačava odabranu menzu kao omiljenu.

UC3 - Pregled informacija menze

  • Glavni sudionik: student, djelatnik, administrator
  • Cilj: pristupiti informacijama određene menze
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je uspješno prijavljen u aplikaciju
  • Opis osnovnog tijeka:
  1. Korisnik na naslovnoj stranici aplikacije bira menzu za pregled ključnih informacija.
  2. Sustav prebacuje korisnika iz naslovne stranice u stranicu za detaljniji prikaz menze.
  3. Sustav iz baze podataka uzima sve važne informacije menze (npr slike, radno vrijeme, lokacija, ocjene, jelovnik...).
  4. Dobiveni podatci se prikazuju korisniku na posebno organizirano sučelje sa prikaz dodatnih informacija menze.

UC3.1 - Pregled ocjena menze

  • Glavni sudionik: student, djelatnik, administrator
  • Cilj: pregledati ocjene menze
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je uspješno prijavljen u aplikaciju
  • Opis osnovnog tijeka:
  1. Sustav iz baze podataka dohvaća sve ocjene koji se odnose na odabranu menzu.
  2. Sustav računa prosječnu ocjenu menze.
  3. Sustav prikazuje prosječnu ocjenu menze na korisničkom sučelju za prikaz detaljnijih informacija menze.
  4. Sustav prikazuje sve ocjene menze na korisničkom sučelju za prikaz detaljnijih informacija menze.
  • Opis mogućih odstupanja:
  1. Odabrana menza nema još ni jednu ocjenu, pa sustav ne prikazuje prosječnu ocjenu jer ju ne može izračunati.
  2. Odabrana menza nema još ni jednu ocjenu, pa sustav prikazuje korisniku da je menza neocijenjena.

UC3.2 - Pregled lokacije menze

  • Glavni sudionik: student, djelatnik, administrator
  • Cilj: pregledati lokaciju menze
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je uspješno prijavljen u aplikaciju
  • Opis osnovnog tijeka:
  1. Sustav iz baze podataka dohvaća lokaciju menze.
  2. Sustav prikazuje lokaciju menze na korisničkom sučelju za prikaz detaljnijih informacija menze .

UC3.3 - Pregled radnog vremena

  • Glavni sudionik: student, djelatnik, administrator
  • Cilj: pregledati razne informacije menze
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je uspješno prijavljen u aplikaciju
  • Opis osnovnog tijeka:
  1. Sustav iz baze podataka dohvaća radno vrijeme odabrane menze.
  2. Sustav prikazuje radno vrijeme menze na korisničkom sučelju za prikaz detaljnijih informacija menze.

UC3.4 - Pregled jelovnika

  • Glavni sudionik: student, djelatnik, administrator
  • Cilj: označiti menzu kao "omiljenu", dodati u listu omiljenih menzi
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je uspješno prijavljen u aplikaciju
  • Opis osnovnog tijeka:
  1. Sustav iz baze podataka dohvaća djevni jelovnik.
  2. Sustav organizira dohvaćene podatke o jelima u kategorije doručak, ručak i večera.
  3. Sustav prikazuje radno vrijeme menze na korisničkom sučelju za prikaz detaljnijih informacija menze.
  • Opis mogućih odstupanja:
  1. Djelatnici menze nisu objavili dnevni jelovnik za taj dan, pa sustav ne uspijeva dohvatiti potrebne informacije.
  2. Sustav prikazuje da jelovnik još nije objavljen od strane djelatnika na korisničkom sučelju za prikaz detaljnijih informacija menze.

UC3.5 - Ocjenjivanje mneze

  • Glavni sudionik: student, administrator
  • Cilj: ocijeniti menzu na osnovu raznih kategorija (npr: kvaliteta jela, usluga, ambijent...)
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je prijavljen kao student ili administrator
  • Opis osnovnog tijeka:
  1. Korisnik na sučelju detaljnog prikaza menze ocjenjuje menzu na osnovu raznih kategorija (npr: kvaliteta jela, usluga, ambijent...).
  2. Korisnik daje ocjenu na osnovu osobnog zadovoljstva usluge (1 zvjezdica, 2 zvjezdice ... 5 zvjezdica).
  3. Sustav u bazi podataka provjerava je li korisnik već ocijenio odabranu menzu.
  4. Sustav sprema korisnikovu ocjenu u bazu podataka.
  5. Sustav osvježava i prikazuje prosječnu ocjenu menze na korisničkom sučelju.
  • Opis mogućih odstupanja:
  1. Sustav dohvaća podatak da je korisnik već ocijenio.
  2. Sustav ažurira korisnikovu ocjenu menze u bazi podataka (umjesto stare ocjene, sprema novu).
  3. Sustav osvježava i prikazuje prosječnu ocjenu mneze na korisničkom sučelju.

UC4 - Pristup prijenosu uživo

  • Glavni sudionik: student, djelatnik, administrator
  • Cilj: pristupiti prijenosu uživo menze radi procjene gužve
  • Sudionici: WI-FI kamere
  • Preduvjet: korisnik je uspješno prijavljen u aplikaciju
  • Opis osnovnog tijeka:
  1. Korisnik na sučelju za detaljan prikaz menze bira opciju pristupanja prijenosu uživo (live stream).
  2. Sustav komunicira sa WI-FI kamerama u odabranoj menzi.
  3. WI-FI kamere omogućuju sustavu prijenos uživo.
  4. Sustav omogućuje korisniku pregled prijenosa uživo.
  • Opis mogućih odstupanja:
  1. Kamere zbog kvara nisu u mogućnosti pružiti sustavu prijenos uživo.
  2. Administrator je blokirao sustavski pristup kamerama.
  3. Sustav obavještava korisnika da prijenos uživo nije dostupan.

UC5 - Pristup studentskom chatu

  • Glavni sudionik: student, administrator
  • Cilj: pristupiti i aktivno sudjelovati u studentskom chatu
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je prijavljen kao student ili administrator
  • Opis osnovnog tijeka:
  1. Korisnik u sučelju detaljnog prikaza menze bira opciju da pristupi studentskom chatu odabrane menze.
  2. Sustav provjerava u bazi podataka je li korisniku blokiran pristup studentskom chatu od strane administratora.
  3. Sustav daje pristup korisniku.
  4. Iz baze podataka dohvaćaju se stare poruke chata odabrane menze.
  5. Stare poruke chata prikazuju se na sučelju.
  • Opis mogućih odstupanja:
  1. Sustav dohvaća iz baze podataka da je korisniku blokiran pristup studentskom chatu.
  2. Pristup korisnika je odbijen.

UC6 - Upravljanje jelovnikom

  • Glavni sudionik: djelatnik, administrator
  • Cilj: upravljati dnevnim jelovnikom menze u kojoj djelatnik radi
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je prijavljen kao djelatnik koji radi u odabranoj menzi ili administrator
  • Opis osnovnog tijeka:
  1. Djelatnik na naslovnoj strani aplikacije bira opciju da pristupi detaljnom prikazu menze.
  2. Sustav prebacuje korisnika iz naslovne stranice u stranicu za detaljniji prikaz menze.
  3. Sustav provjerava je li djelatnik zaposlen u odabranoj menzi.
  4. Sustav dohvaća informaciju da djelatnik radi u odbranoj menzi.
  5. Djelatniku se nudi opcija upravljanja jelovnikom.
  • Opis mogućih odstupanja:
  1. Sustav dohvaća informaciju da djelatnik ne radi u odbranoj menzi.
  2. Djelatniku se ne nudi opciju upravljanja jelovnikom.

UC6.1 - Ažuriranje jelovnika

  • Glavni sudionik: djelatnik, administrator
  • Cilj: ažurirati dnevni jelovnik menze u kojoj djelatnik radi
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je prijavljen kao djelatnik koji radi u odabranoj menzi ili administrator
  • Opis osnovnog tijeka:
  1. Djelatnik bira opciju upravljanja jelovnikom.
  2. Sustav prebacuje djelatnika na intuitivno korisničko sučelje za unos novog jelovnika menze.
  3. Djelatnik unosi novi jelovnik.
  4. Sustav sprema nove podatke u bazu podataka
  5. Korisnički prikaz jelovnika menze se osvježava

UC7 - Upravljanje menzama

  • Glavni sudionik: administrator
  • Cilj: upravljanje menzi dostupnih na naslovnoj stranici
  • Sudionici:
  • Preduvjet: korisnik je prijavljen u aplikaciju kao administrator
  • Opis osnovnog tijeka:
  1. Aplikacija nudi korisniku prijavljenom kao administrator posebno korisničko sučelje u koje ima mogućnost upravljanja dostupnim menzama.
  2. Administator pristupa posebnom korisničkom sučelju u kojem ima mogućnost upravljanja dostupnim menzama.
  3. Aplikacija nudi administratoru opcije dodavanja novih menzi i brisanja menzi koji više nisu u funkciji.

UC7.1 - Dodavanje menze

  • Glavni sudionik: administrator
  • Cilj: dodavanje novootvorenih menza
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je prijavljen u aplikaciju kao administrator
  • Opis osnovnog tijeka:
  1. Administrator bira opciju dodavanja novih menzi.
  2. Sustav prikazuje administratoru posebnu formu u kojoj može ispuniti ključne informacije o novoj menzi.
  3. Administator ispunjava forumu sa svim ključnim informacijama menze.
  4. Sustav dodaje novu menzu u bazu podataka.
  5. Osvježava se prikaz dostupnih menzi na naslovnoj stranici aplikacije.
  • Opis mogućih odstupanja:
  1. Administrator ne ispunjava formu sa svim ključnim informacijama.
  2. Sustav preko korisničkog sučelja vraća grešku i upozorava administratora.

UC7.2 - Brisanje menze

  • Glavni sudionik: administrator
  • Cilj: brisanje menzi koji više nisu u funkciji
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je prijavljen u aplikaciju kao administrator
  • Opis osnovnog tijeka:
  1. Administrator bira opciju brisanja menze.
  2. Odabrana menza se briše iz baze podataka.
  3. Osvježava se prikaz dostuping menzi na naslovnoj stranici aplikacije.

UC8 - Pregled korisničkih računa

  • Glavni sudionik: administrator
  • Cilj: pregledati sve korisničke račune koji su se ikada prijavili u aplikaciju
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je prijavljen u aplikaciju kao administrator
  • Opis osnovnog tijeka:
  1. Aplikacija nudi korisniku prijavljenom kao administrator posebno sučelje za upravljanje dostupnim menzama.
  2. Administrator pristupa navedenom korisničkom sučelju.
  3. Iz baze podataka se dohvaćaju svi korisnički računi koji su ikada se prijavili u aplikaciju.
  4. Na posebnom sučelju za administratore prikazuju se detalji prijava svih korisničkih računa dohvaćeni iz baze podataka.
  5. Aplikacija na navedenom sučelju nudi administratoru opciju brisanja korisničkog računa.

UC8.1 - Brisanje korisničkih računa

  • Glavni sudionik: administrator
  • Cilj: Brisanje/blokiranje korisnika
  • Sudionici: Baza podataka
  • Preduvjet: korisnik je prijavljen u aplikaciju kao administrator
  • Opis osnovnog tijeka:
  1. Administrator u pregledu svih korisničkih računa bira opciju blokiranja računa ako je korisnik prekršio pravila korištenja aplikacije (npr korištenje vulgarnih riječi u chatu, verbalno vrijeđanje...).
  2. U bazu podataka se sprema da je odabrani račun blokiran.

UC9 - Upravljanje prijenosa uživo

  • Glavni sudionik: administrator
  • Cilj: Brisanje/blokiranje korisnika
  • Sudionici: /
  • Preduvjet: korisnik je prijavljen u aplikaciju kao administrator
  • Opis osnovnog tijeka:
  1. Administrator pristupa sučelju za detaljan prikaz menze.
  2. Administratoru se na sučelju za detaljan prikaz menze nudi opcija pristupanja prijenosu uživo (live stream).

UC9.1 - Blokiranje prijenosa uživo

  • Glavni sudionik: administrator
  • Cilj: Brisanje/blokiranje korisnika
  • Sudionici: /
  • Preduvjet: korisnik je prijavljen u aplikaciju kao administrator
  • Opis osnovnog tijeka:
  1. Administrator bira opciju blokiranja prijenosa uživo.
  2. Sustavu je onemogućena komunikacija s WI-FI kamerama u menzama.

Sekvencijski dijagrami

Sekvencijski dijagram: Login

Login

Sekvencijski dijagram prikazuje proces prijave u aplikaciju MenZg pomoću Google autentifikacije. Korisnik odabire prijavu putem Google računa, a aplikacija zatim provjerava ispravnost tokena preko Googleovog poslužitelja. Ako je token valjan, korisniku se prikazuje popis menzi, dok se u slučaju neispravnog tokena prikazuje poruka o pogrešci.

Sekvencijski dijagram: Pregled menze i prijenosa uživo

Pregled menze i prijenosa uživo

Sekvencijski dijagram prikazuje proces pregleda menze i prijenosa uživo u aplikaciji MenZg. Korisnik odabire menzu, a aplikacija dohvaća podatke o toj menzi iz baze podataka te ih prikazuje korisniku. Ako korisnik želi pristupiti kamerama, odabire opciju prikaza kamere, nakon čega aplikacija šalje zahtjev za prijenos uživo kamerama odabrane menze i prikazuje prijenos uživo (koji su kamere vratile aplikaciji) korisniku.

Provjera uključenosti ključnih funkcionalnosti u obrasce uporabe

ID funkcijskog zahtjeva Obrazac uporabe
F-001 UC1
F-002 UC2
F-003 UC2
F-004 UC3, UC3.1, UC3.2, UC3.3, UC3.4
F-005 UC4
F-006 UC5, UC3.5
F-007 UC2.1
F-008 UC6, UC6.1
F-009 UC8
F-010 UC8.1
F-011 UC7, UC7.1, UC7.2

Clone this wiki locally