Gurmaanid

From ICO wiki

Meeskonnaliikmed ja rollid

  • Koit Kõrvel - projektijuht, disainer, arendaja
  • Marko Kask - disainer, arendaja
  • Brita Pentšuk - kommunikatsioonijuht, arendaja, disainer
  • Ott Sõerumäe - arendaja, disainer

Idee

Retseptiraamat, mis annab kasutajatele võimaluse sisestada uusi ja endale meelepäraseid retsepte, neid vajadusel muuta või kustutada, kommenteerida ning hinnata. Retsepte on võimalik vastavalt nende liigitusele, toidukomponentidele ja nimetusele kas otsida, sorteerida või filtreerida.

Tehnoloogia

  • C#
  • Windows Presentation Foundation

Rakenduse sisu

Analüüs

Tegu on WPF-rakendusega “Gurmaanid”, mis kujutab endast interaktiivset retseptiraamatut. Rakendus koondab endas mitmeid võimalusi: kasutajaks registreerimist, kasutaja poolt uute retseptide sisestamist ja juba olemasolevate muutmist, retseptile pildi lisamist, hindamissüsteemi ja kommentaariumit. Retsepte on võimalik näha, kommenteerida ja hinnata kõigil, seda ilma kasutajaks registreerimata. Retseptide lisamisvõimalus rakendub vaid registreeritud kasutajale. Retseptid jaotatakse kategooriatesse – otsingumootor suudab orienteeruda erinevate valmistusviiside ja koostisosade vahel, mis tagab kiire ning kasutajasõbraliku lähenemise. Et toiduvalmistamine hõlpsamaks muuta, on iga retsepti juures vastavalt inimeste arvule võimalik genereerida ka vajaminevate komponentide koguseid.

Arvestades tänapäeva kiiret elutempot, võiks olla antud rakenduse eesmärgiks muuta inimeste elu lihtsamaks. Retseptiraamatud paberkandjal sisaldavad vaid kitsast ja valitud hulka retsepte, nende puhul on tavaliselt fikseeritud nii koostisosad kui ka kogused, mis paraku jätab katsetaja mõneti pimedusse. Meie rakenduses on võimalik aga koguseid vastavalt vajadusele määrata ja retsepti vajadusel kommenteerida – mida, kas ja kuidas teha vastavalt maitsele teisiti, et lõpptulemus saaks veelgi parem. Retseptide juures on eraldi välja toodud kalorisisaldus ja toidus olevad allergeenid (Nice to have). Samuti puudub tavapärastes retseptiraamatutes võimalus retsepte nende koostisosade järgi filtreerida, ikka on määratud ära toidukategooriad, näiteks nagu hoidised, supid, salatid ja nii edasi. Vahel on meil käepärast vaid teatud üksikud toiduained, millega midagi peale ei osata hakata. Sellisel juhul on lihtne retsepte ühe, kahe või kolme koostisosa järgi otsida - meie rakendus tagab sellise võimaluse. Retsepte saab otsida ka kindla nime järgi. Retseptinimed on andmebaasis unikaalsed. Kasutajatele annab selline rakendus võimaluse luua enda isiklik retseptiraamat – selline, mis varem sai eksisteerida vaid märkmikutes ja käsikirjaliselt. Tulevikus võib WPF-rakendusest edasi arendada mobiilirakenduse.

Probleemseks võib kujuneda kasutajaliidese ja andmebaaside omavaheline sidumine. Vähene kogemus kasutajaliidese disainimisel võib ohustada soovi luua kasutajasõbralik ning mugav ja eelkõige kasutama kutsuv rakendus. Ajapuuduse tõttu võivad mõned lisafunktsioonid jääda tagaplaanile. Suurimaks väljakutseks võivad kujuneda loogikavead koodis.

Põhifunktsionaalsus (Must have):

  • Kasutajaks registreerimise võimalus
  • Retseptide lisamine, muutmine ja eemaldamine
  • Retseptidele kirjelduse lisamine
  • Retseptidele kategooriate lisamine
  • Retseptidele piltide lisamine
  • Retseptide valmistamise kirjeldus samm-sammult
  • Retsepti lisamise aeg
  • Hindamissüsteem ja kommentaarid

Lisafunktsionaalsus (Nice to have):

  • Mugav, lihtne ja väljanägemiselt ülivinge kasutajaliides
  • Koostisosade koguste arvutamine vastavalt vajadusele
  • Allergeenide olemasolu toidus
  • Progress bar kasutamine

Võimalikud probleemid

  • Ei suuda asju realiseerida
  • Ajapuudus
  • Kood ei tööta või selles esinevad loogikavead

Andmebaasiskeem

GurmaanideMudel.png

Retsensioonid

  • Analüüsi retsensioon ATDV kohta: ATDV

Dokumentatsioon

Arendusprotsessi kirjeldamine:

Meie rühmatööna valmis retseptiraamatu rakendus.

Tööjaotus:

Koit Kõrvel – Projekti juht, andmebaasi väljatöötamine, ning selle Visual Studios realiseerimine. Toitude tegemise juhiste ja komponentide pärimine andmebaasi tabelitest ning kuvamine WPF rakenduses. Toitudele hinnangute andmise funktsionaalsus. Rakenduse akende ja funktsioonaalsuse tegemine. Marko Kask – Andmebaasi väljatöötamine, ning selle Visual Studios realiseerimine. Toitude tegemise juhiste ja komponentide pärimine andmebaasi tabelitest ning kuvamine WPF rakenduses. Toitudele hinnangute andmise funktsionaalsus. Rakenduse akende ja funktsioonaalsuse tegemine. Brita Pentšuk – Andmebaas, kasutajaliidese disain, retsensioon. Ott Sõerumäe – Andmebaasi väljatöötamine, ning selle Visual Studios realiseerimine. Toitude tegemise juhiste ja komponentide pärimine andmebaasi tabelitest ning kuvamine WPF rakenduses. Toitudele hinnangute andmise funktsionaalsus.

Kasutusjuhend:

Rakenduse avamisel küsitakse selle kasutajalt kasutajanime ja parooli, millega sisse logida. Kui tal seda pole, võib ta end kasutajaks registreerida või siseneda külalisena. Kasutaja saab siseneda ka külalisena, sel juhul pole registreerimine vajalik. Seejärel kuvatakse kasutajale rakenduse põhiaken, kust saab navigeerida Retsepti lisamise lehele või vaadata sel samal lehel olemasolevaid retsepte. Kastis pealkirjaga „RETSEPTID“ on kuvatud kõik andmebaasitabelis „Toit“ leiduvad toidud. Sealt toidu valides ilmuvad ekraanile toidu nimi, lühike kirjeldus, valmistamise juhised ning kõrval olevas kastis „Komponendid:“ ilmuvad komponendid koos nende koguste ja mõõtühikutega. Toidu kohta näeb ka selle hinnangut. Seda saab igaüks toidule ka ise salvestada. Kuvatav hinnang on saadud kõikide antud hinnete keskmisena. Toidu lisamise aknas saab lisada kateggoriat, mõõtühikuid. Seejärel saab koostada kogu retsepti, mis koosneb toidu nimest, portsjonite arvust, kirjeldusest, juhenditest, hinnangust, kategooriast, komponentidest, komponendi mõõtühikust ja komponendi kogusest.

Logi

21.10.2016

  • Idee genereerimine ja analüüs
  • Wiki lehe tegemine
  • Esialgse andmebaasimudeli loomine

27.10.2016

  • WPF-rakenduse loomine

01.11.2016

  • Analüüsi lisamine Wiki lehele

23.01.2017

  • Lõpptoode

http://enos.itcollege.ee/~kkorvel/CSharpProject.rar

23.01.2017

  • Struktuur

Business Objects[muuda] Rakendusel on 8 BO'd: KasutajaBO, KasutajaNotesBO, Koguse_mootyhikBO, KomponentBO, Toidu_kategooriaBO, Toidu_kommentaarBO, Toidu_komponendidBO, ToitBO,

Teenused (Service)[muuda] Rakenduse Teenus(Service)kihis on 6 klassi: KasutajaService, KoguseMootyhikService, KomponentService, LisamineService, ToiduKategooriaService, ToitService


Vaatemudelid[muuda] Käivitataval ConsoleApplication1.WPF rakendusel on 3 vaatemudelit: LisamiseLehtVM, logimisAkenUusVM, tereUusVM

Vaated[muuda] Käivitataval ConsoleApplication1 rakendusel on 3 vaadet, mis kuvatakse vastavalt vajadusele 3 aknal: Logimisaken, Põhiaken, Retsepti lisamise aken