Software Requirements Specification - mpohizek/Foosh GitHub Wiki

Uvod

Svrha specifikacije korisničkih zahtjeva je opisati riječima i Use Case dijagramom koji su zahtjevi korisnika prema sustavu. SRS ne objašnjava u potpunosti kako aplikacija radi te kako bi ju trebalo koristiti. Ova specifikacija korisničkih zahtjeva namijenjena je razvojnom timu kako bi znali koje sve funkcionalnosti treba implementirati.

Mobilna aplikacija Foosh omogućava povezivanje naručitelja manjih poslova (poljoprivredni radovi, odlazak u trgovinu...) s izvršiteljem.

Ovaj dokument napravljen je prema IEEE Std 830-1998. U nastavku je opisana aplikacija, interakcija korisnika i aplikacije.

Opis aplikacije

Mobilna aplikacija Foosh pomaže naručiteljima u traženju izvršitelja za njihove poslove. Također pomaže osobama koje imaju odgovarajuća znanja i alate (izvršiteljima) da nude svoje usluge i da si traže poslove. Komunikacija između naručitelja i izvršitelja je intuitivna i jasna stoga je proces sklapanja poslova brži. Aplikacija je povezana s Google računom.

Funkcionalnosti aplikacije

  • Upravljanje korisničkim računima
  • Upravljanje oglasima
  • Glavni feed (prikaz, pretraživanje, sortiranje i filtriranje oglasa)
  • Upravljanje procesom prijave na oglas, dogovaranja posla i završavanja posla
  • Prikaz notifikacija

Nefunkcionalni zahtjevi

  • za implementaciju je korišten IDE Android Studio i programski jezik Java
  • aplikacija mora raditi na Android uređajima s minimalnom verzijom 6.0 (Marshmallow)
  • koristi se mobilna platforma Firebase
  • aplikacija se razvija prema Scrum metodici razvoja programskih proizvoda uz pomoć alata Trello
  • poštivanje standarda IEEE Std 830-1998
  • u dokumentaciji se koriste UML dijagrami

Korisnici aplikacije

Unutar aplikacije implementirane su dvije uloge: naručitelj i izvršitelj. Korisnik istovremeno može imati dvije uloge.

Operacijski sustav

Aplikacija je razvijena za Android operacijski sustav minimalne verzije 6.0 (Marshmallow).

Dostupnost

Aplikacija je dostupna za korištenje nakon instaliranja i prijave. Aplikaciju je moguće instalirati na sve Android mobilne uređaje minimalne verzije 6.0 (Marshmallow).

Ograničenja

Aplikacija je programirana za rad isključivo na Android operacijskom sustavu. Aplikacija se ne može koristiti bez pristupa internetu.

Prenosivost

Aplikacija je prenosiva na sve Android uređaje s minimalnom verzijom 6.0 (Marshmallow).

Opis interakcije korisnika i aplikacije, aplikacije i Firebase-a, administratora i Firebase-a

Slika 1: Dijagram slučaja korištenja skraćene detaljnosti

Interakcija korisnika i aplikacije

U ovom poglavlju detaljnije su prikazani slučajevi korištenja iz sustava Foosh prikazani na slici 1. Na detaljnijim dijagramima nema prikaza interakcije aplikacije i Firebase-a i administratora i Firebase-a jer se to podrazumijeva budući da je prikazano na slici 1.

Korisnik ima dvije mogućnosti registracije: registracija mailom i registracija Google računom. Ako korisnik zaboravi lozinku kod prijave mailom, može zatražiti promjenu lozinke klikom na "Problem s prijavom?".

Slika 2: Detaljni dijagram slučaja korištenja za upravljanje korisničkim računima

Upravljanje oglasima podrazumijeva sljedeće mogućnosti za korisnika: kreiranje oglasa, prikaz oglasa koje je kreirao i za koje se prijavio, detaljni pregled oglasa. Oglas se prikazuje u detaljnom prikazu klikom na oglas u glavnom feedu ili klikom na oglas u popisu kreiranih / prijavljenih oglasa.

Slika 3: Detaljni dijagram slučaja korištenja za upravljanje oglasima

Slika 4: Detaljni dijagram slučaja korištenja za prikaz glavnog feed-a

Obavljanje oglasa je prikazano sljedećim dvjema slikama. Kod obavljanja poslova jednom korisniku je potrebno dodijeliti ulogu naručitelja, a drugome ulogu izvršitelja. Naručitelj kreira oglas. Izvršitelj vidi oglas u glavnom feed-u te klikne da je zainteresiran. Naručitelj može vidjeti tko se sve prijavio na oglas. Naručitelj izvršitelju šalje zahtjev za dogovaranjem posla. Izvršitelj se u međuvremenu može odjaviti s oglasa pa ga naručitelj više ne vidi na popisu prijavljenih. Ako izvršitelj prihvati naručiteljev zahtjev, naručitelju i izvršitelju se otvara opcija završavanja posla. Naručitelj klikom na gumb Završi posao generira QR kod. Izvršitelju se klikom na gumb Završi posao uključuje kamera kojom može skenirati QR kod. U aplikaciji su implementirane notifikacije. Notifikacija se prikazuje naručitelju kad izvršitelj klikne da je zainteresiran. Izvršitelj dobije notifikaciju kad naručitelj želi sklopiti posao. Naručitelj dobije notifikaciju kad izvršitelj potvrdi sklapanje posla.

Slika 5: Detaljni dijagram slučaja korištenja za obavljanje poslova sa stajališta izvršitelja

Slika 6: Detaljni dijagram slučaja korištenja za obavljanje poslova sa stajališta naručitelja