Gurmaanid: Difference between revisions
(41 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:Programmeerimine CSharp keeles (2016)]] | [[Category:Programmeerimine CSharp keeles (2016)]] | ||
==Meeskonnaliikmed ja rollid == | ==Meeskonnaliikmed ja rollid == | ||
*'''Koit Kõrvel''' - projektijuht, disainer | *'''Koit Kõrvel''' - projektijuht, disainer, arendaja | ||
*'''Marko Kask''' - disainer | *'''Marko Kask''' - disainer, arendaja | ||
*'''Brita Pentšuk''' - arendaja, disainer | *'''Brita Pentšuk''' - kommunikatsioonijuht, arendaja, disainer | ||
*'''Ott Sõerumäe''' - arendaja, disainer | *'''Ott Sõerumäe''' - arendaja, disainer | ||
== Idee == | == Idee == | ||
Retseptiraamat. | 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 == | == Tehnoloogia == | ||
Line 17: | Line 15: | ||
*Windows Presentation Foundation | *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 === | === Võimalikud probleemid === | ||
*Ei suuda asju realiseerida | *Ei suuda asju realiseerida | ||
* | *Ajapuudus | ||
*Kood ei tööta | *Kood ei tööta või selles esinevad loogikavead | ||
=== Andmebaasiskeem === | === Andmebaasiskeem === | ||
[[File:GurmaanideMudel.png|700px|]] | |||
==Retsensioonid== | |||
*Analüüsi retsensioon ATDV kohta: [https://wiki.itcollege.ee/index.php/Talk:ATDV ATDV] | |||
== Dokumentatsioon == | |||
'''Arendusprotsessi kirjeldamine''': | |||
Meie rühmatööna valmis retseptiraamatu rakendus. | |||
<p>'''Tööjaotus:'''</p> | |||
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. | |||
<p>'''Kasutusjuhend:'''</p> | |||
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 |
Latest revision as of 17:14, 25 January 2017
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
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