Meeskond:iCook

From EIK wiki

Meeskond: iCook

Meeskond

Meeskonna liikmed:

  • Timmo Tõnts(projektijuht)
  • Triin Õige
  • Ralf Sitska

Idee

Plaanis on luua WPF Desktop rakendus, kus sisseloginud kasutaja saab otsida ideid söögivalmistamiseks.

Programmis eristatakse kahte kasutaja tüüpi: tavakasutaja ja admin. Admin saab lisada ja muuta retsepte ning tavakasutaja saab neid uudistada. Retseptid on ära jagatud erinevatesse kategooriatesse ning igal kategoorial on oma vastav andmebaasi tabel. Andmebaasi tabel luuakse ka kasutajate salvestamiseks ning kõik koostisosad salvestatakse eraldi andmebaasi tabelisse , mille kaudu neid retseptidega seotakse. Plaan on luua ka retseptide kommenteerimise võimalus, kus iga kasutaja saab oma arvamust avaldada.

Analüüs

Millega on tegemist

Antud WPF- rakenduse näol on tegemist nö retseptiraamatuga, mida on võimalik kasutada ka ilma kasutajaks registreerimata, kuid retseptide lisamine/ muutmine laieneb vaid registreeritud kasutajatele ning administraatoritele. Retsepte on võimalik kommenteerida kõigil. Retseptid, kasutajad, toiduained jms salvestatakse kõik erinevatesse andmebaasidesse. Mugavaks orienteerumiseks on toidud jagatud gruppidesse valmistamisviisi, komponentide vms järgi.


Milleks seda vaja on?

Ehkki endiselt eksisteerivad paberkujul väga head ning tänapäeval juba väga ilusa välimusega retseptiraamatud, mida ka jõudsasti välja antakse- ostetakse, on peale kasvamas uus generatsioon, kes parema meelega kasutaks toiduvalmistamise ideede leidmiseks Google või mõne (telefoni)aplikatsiooni abi. Tänapäevaseid lahendusi kasutades on võimalus leida küllaldaselt erinevaid ideid, õppida uusi toiduvalmistamise tehnikaid, jagada teiste huvilistega oma nippe jne. Meie rakenduse mõte ongi proovida koondada kõike vajalikku, mida ühe toiduvalmistamise protsessi juures vaja võiks olla ning samas on see ju ka hea võimalus iseenda retseptid ühte kohta kokku koondada.


Mida sellega teha saab?

Rakendus võimaldab andmebaasi registreerida uusi kasutajaid, lisada/muuta/kustutada retsepte ning kommentaare, kuid õigused, mida kasutajatele laienevad on erinevad. Rakendust on võimalik registreerimata kasutajal vabalt kasutada- retsepte sirvida, teostada otsinguid, kommenteerida retsepte; registreeritud kasutajatel on samuti võimalik retsepte sirvida, otsinguid teostada ning kirjutada kommentaare, kuid nendele lisandub võimalus ka ise retsepte ning erinevate toiduainete kirjeldusi lisada ja ka oma tehtud sissekandeid piiramatult muuta; administraatoritel on võimalus lisaks otsingute teostamisele ja retseptide sirvimisele ka ise uusi sissekandeid teha, muuta/ kustutada registreeritud kasutajate retsepte/ kirjeldusi, kustutada ebasobivaid kommentaare ning vajadusel kustutada ka ebasobivaid kasutajaid.

Soovi korral on võimalik end kasutajaks registreerida. Registreerides tuleb täitsa registreerimisvorm, kus küsitakse erinevaid andmeid. Kindlasti tuleb lisada registreerides enda ees-, ja perekonnanimi. Isiku andmetest peaks inimene kindlasti lisama enda e-maili, et vajadusel oleks võimalik inimesega kontakteeruda ning lõpetuseks tuleb lisada kasutajanimi ning salasõna(2 korda).

Rakenduse avanedes kuvatakse kasutajale automaatselt viimati lisatud retsept. Kui keegi on väga agar rakenduse kasutaja ning enamus retseptid proovitud, annab see funktsionaalsus võimaluse kasutajal kohe näha, kas midagi uut ja huvitavat on lisatud.

Iga retsepti all on võimalus kommenteerida, registreeritud kasutajates on nimi automaatselt paigas ning muud külastajad saavad kirjutada suvalise nime. Kui retseptile on juba eelnevalt kommentaare pandud, siis need kuvatakse automaatselt.

Registreeritud kasutajatel ja adminidel on võimalus piiramatult retsepte lisada. Eraldi on väli valmistamisõpetuse, komponentide ja koguste kohta. Retseptinimed on andmebaasis unikaalsed.

Kui kasutaja on sisselogitud, on tal võimalus kergelt näha kõiki enda poolt lisatud retsepte. Kasutaja enda poolt lisatud retsepte on kasutajal õigus ära kustutada ning muuta. Kommentaare kasutaja enda retsepti alt kustutada ei saa.

Olles sisse logitud admini kasutajaga saab muta ning kustutada kõiki retsepte. Selle joaks ilmuvad adminile retsepte vaadates ekraanile 2 lisa nuppu: muuda ja kustuta. Admini poolt lisatud retseptid ja koostisosad on samuti sisselogides ühe koha peal kõik näha.

Kõikidel rakenduse kasutajatel on võimalus retsepte ka nime järgi otsida. Kui otsest vastet otsingusõnale ei leitud, kuvatakse sellega sarnased retseptinimed kasutajale ning pakutakse varianti otsida seda retsepti internetist kasutades Google otsingumootorit(nice to have). Nice to have oleks tavaotsingule ja Google search-ile lisaks veel ka otsing toidu komponentide järgi. Selleks peaks kasutaja sisestama ühe või mitu toiduainet, mis tal näiteks kodus olemas on, ning osingutulemuseks otsitakse andmebaasist need toidud, kus need koostisosad on vajalikud.

Milliste osade realiseerimine võib osutuda problemaatiliseks

Meie rakendusel on palju erinevaid kasutajatüüpe, näiteks registreeritud kasutaja, tava kasutaja, administraator. Kõigil neil on erinevad õigused, mida nad saavad rakenduses teha. Problemaatiliseks võib muutuda erinevatele kasutajatüüpidele erinevate õiguste andmine.

Rakendus peab olema kõigile selgesti arusaadav, puhas ning ilusa stiiliga. Kuna me ei ole õppinud rakenduste disainimist, siis võib problemaatiliseks osutuda ilusa kasutajaliidese realiseerimine.

Meie rakendusel on palju erinevaid andmebaase, mis peavad olema omavahel ühenduses ning see kõik peab olema ka seotud kasutajaliidesega, siis võib suhtlus kasutajaliidese ja andmebaaside vahel olle üheks murepunktiks.

Must have funktsionaalsus

• saab registreerida end uueks kasutajaks • kõik saavad kommenteerida andmebaasis olevaid retsepte • selleks, et kõiki retsepte sirvida ei pea olema registreeritud kasutaja • administraator saab lisada/kustutada/muuta kõike, mis meie andmebaasides on • kui info eksisteerib, saab toiduaine/toidu kohta lugeda täiendavat informatsiooni • retseptile saab lisada ka pildi • kõik retseptid on jagatud kategooriatesse

Nice to have funktsionaalsus

• mingisugune koguste konverteerija • retseptide hindamise võimalus (a’la 10 palli süsteemis ja arvutatakse välja keskmine, ainult regatud kasutajatele) • teiste kommentaaride kommenteerimine • retsepti mitteleidmisel pakutakse Google Searchi tulemusi antud retsepti kohta • retsepti vaatamisel kuvatakse soovitused sarnaste toitude kohta • kasutaja saab profiili lisada pildi • kui kasutaja on registreeritud, saab soovi korral retseptide juurde lisada ka video

Prototüüp

Projekti saab alla tõmmata:

iCookSln2.rar

Solution tuleb avada Visual Studios ning seejärel saab seda juba käivitada. Programmi toimimiseks on vajalik andmebaasi olemasolu, mille nimi on iCookNewDB.

Erinevate andmebaaside tabelite loomise script: script.sql