Talk:Kalimali budget

From ICO wiki

Analüüsi retsensioon

Analüüs on hästi ülesehitatud, funktsionaalus on arusaadavalt kirjeldatud.. Mõned probleemid, mida ma nägin.. Mingi funktsionaalsus on segane.. Kas ma ise kasutaks lahendust?.. Mida teeksin teistmoodi? Mida meeskond arvab andmemudelist.. Kuidas skoop tundub? Kas on teostatav või peaks meeskond näiteks midagi vähem. Mingi funktsionaalsus Nice to have alt must have alla tõsta.. Tekstist arusaadavus ja ülesehitus..

Retsenseeris meeskond Demo 12.11.2017


Lõpptoote retsensioon

Ülesehitus:

Analüüs on hästi ja loogiliselt ülesehitatud, hea jälgida ja aru saada.

Funktsionaalsuse kirjeldus

Hea, et funktsionaalsus on puntkidena kirjeldatud. Halb see, et välja toodud punktid on veidi pealiskaudsed. Võiks olla veidi detailsemalt kirjeldatud. Puudu jääb ehk ka selgitavatest joonistest, mis aitaksid paremini mõista, mida rakendus täpselt tegema peab.

Probleemid:

  • Vaated 1: “(pole veel otsustatud, kas saab olema parooliga või ilma)”

Kindlasti peab olema parool!

  • Vaated 1: miks on külaline?
  • Vaated 4: Kas kasutaja poolt lisatavad kulu- või tulutüübid on näha hiljem kõikidele kasutajatele või on need kasutajapõhised? Andmemudelist võib eeldada, et need on kõigile nähtavad.
  • Vaated üldiselt: selle asemel, et tekstiliselt lahti kirjutada vaated (kus, mis asub jms) võiks teha lihtsustava prototüübi joonise, mis lihtsustab nii projektiliikmete arusaama võimalikust lõpptulemusest kui ka retsenseerijate oma:)

Kas me ise kasutaks lahendust?

Ei, kuna pole otsest vajadust hetkel (pole pereinimesed). Individuaalsel tasemel on nt. Swedbanki internetipangas sarnane funktsionaalsus rahaplaneerija näol. Soovitaks sellest eeskuju võtta.

Mida teeksime teistmoodi?

Kasutaks SQLite andmebaasi MySQL asemel, kuna tegemist lokaalse desktop rakendusega. MySQL ja networkiga sidumine võib teha nice-to-have funktsionaalsusena.

Andmemudel:

Kulu ja tulu tabelid peaksid olema samuti Foreign Key’de abil kasutajaga seotud. Praeguses andmemudelis ei ole ühtegi viidet sellele, mis kulud/tulud milliste kasutajatega seotud on. Muus osas on hea, et on näitetabelitena välja toodud, milleks mingeid tabeleid vaja läheb.

Skoop:

Nagu ka analüüsikirjutajad ise mainisid, siis nõustume, et algajatele arendajatele on see suhteliselt suur väljakutse. Projekt hõlmab mitmeid komponente, sh kasutajapõhine lähenemine, seos andmebaasiga jms. Kuna tegemist on projekti liikmetele uue arenduskeelega, siis võib vastamisi sattuda erinevate väiksemate muredega, mis pikendavad projekti realiseeritavust. Kokkuvõtvalt on tegu väga suure väljakutsega, kuid samas piisav, et saada C# keele ja framework’idega “sina” peale.

Teostatavus:

Idee on teostatav ja ka jõukohane, samas võiks tõsta mitmed must-have punktid nice-to-have alla. Näiteks:

  • erinevate tulu ja kululiikide (kategooriate) määramise võimalus
  • kasutajanimede, kululiikide ning muude kirjete muutmine/kustutamine
  • võimalus teha päringuid erinevate kasutajate, kululiikide kaupa
  • tehingute grupeerimise võimalus
  • järjestada tulusid-kulusid erinevate parameetrite kaupa (summa, kululiigi, kuupäeva järgi nt. nn. TOP kulud

Must-have võiks olla tõesti core funktsionaalsus.

Arusaadavus:

Tekst on arusaadavalt ja hästi lahti kirjutatud. Analüüsi idee osas kirjutatakse selgelt lahti, mida antud rakendusega teha saab. Teksti üles ehitus on loogiline, algul kirjeldatakse idee lahti ning siis tuuakse välja rakenduse erienvad vaated, kirjeldatakse ära funktsionaalsus ja tuuakse välja andmemudel. Rakendusest arusaamist lihtsustab ka näide andmebaasi tabelitest.

Tublid ja jõudu tööle!

Retsenseeris meeskond CSharpResto 12.11.2017

Lõpptoote retsensioon

Rakenduse kirjeldus

Loodud on rakendus, mille abil saab iga väiksem majapidamine oma tulud ja kulud kokku lüüa ning pidada eraldi arvestust määratud kategooriate kaupa.

Toote vastavus analüüsile

1. Esileht: Analüüsiga võrreldes ei ole arendatud erinevaid kasutajarolle: admin, kasutaja, külaline. Kasutaja valimine ei ole intuitiivne, need on peidetud nimetu rippmenüü alla. Tööle on pandud uue kasutaja lisamine rakenduse kaudu ja selle kuvamine kasutajate listis.

2. Jooksva kuu kulude ja tulude sisestamine, seisu kuvamine: Vastavalt anlüüsile on kujundatud vaade, kus saab lisada kasutaja kulusid ja tulusid ning nende kuvamine. Arendatud on rakenduses uue tululiigi sisestamine ja selle kuvamine tululiikide rippmenüüs. Rakendust testides kuvati alguses ainult üks tululiik. Mitmeid kordi testides ja alles peale kululiigi sisestamist kuvati ka teised testitud kululiikide kirjed tabelis. Kahjuks on jäänud realiseerimata tulude ja kulude sidumine, ehk vabade vahendite kuvamine, mis raamatupidamisprogrammi puhul võiks olla üks olulisemaid komponente.

3. Kirjete otsimine: Funktsionaalsust ei ole arendatud.

4. Must-have funktsionaalsused:

Realiseeritud on:

  • Erinevate kasutajate lisamine
  • Tulude-kulude sisestamisvõimalus
  • Kululiikide lisamise võimalus nt. tahetakse tekitada eraldi kategooria mingi hobi tarvis
  • Erinevate tulu ja kululiikide (kategooriate) määramise võimalus
  • Kasutajanimede, kululiikide ning muude kirjete muutmine/kustutamine

Realiseerimata on:

  • Võimalus teha päringuid erinevate kasutajate, kululiikide kaupa
  • Tehingute grupeerimise võimalus
  • Järjestada tulusid-kulusid erinevate parameetrite kaupa (summa, kululiigi, kuupäeva järgi nt. nn. TOP kulud)
  • Vabade vahendite ja broneeringute kuvamine

Kasutajaliides ja -disain

On näha, et projektiga on vaeva vähtud, kuid on ka mitmeid vajakajäämisi. Kasutajaliidese avamisel on kasutajal kohe raske aru saada mida teha tuleb. Kasutaja valimine ei ole intuitiivne, need on peidetud nimetu rippmenüü alla. Tulude sisestamine esimesel korral ei õnnestu, kuid kuvatavad veatead on suureks abiks. Tulusid ja kulusid kuvab valitud perioodi kohta õigesti. Jooksev kuu ei arvesta tulusid, mis on sisestatud samasse kuusse, aga tulevikku. Kulusid saab muuta, kuid võiks olla mugav võimalus selektsiooni tühistamiseks. Et mõnda kannet muuta, peab vajutama millegipärast kaks korda Muuda nuppu. Kalendri kasutamine on hea lahendus, kuid all olev kuupäeva sisestamise dubleeriv väli ajab segadusse ja võiks seal mitte olla.

Tulude analüüs kuvab nagu nimigi ütleb tulusid, mis on sisestatud kõikide kasutajate kohta. Saab eraldi vaadata erinevate kasutate tulusid. Kahjuks ei ole jõutud Kulude analüüsi teha.

Projektil on realiseeritud kaks suurt kuva: Peavaade, mis on tulude ja kulude sisestamiseks ning Tulude analüüsi vaade. Lisakuvad on kasutajate lisamine, tululiigi sisestamine ja kululiigi sisestamine.

Realiseeritud on mitmeid erinevaid keerulisi funkstionaalsuseid ning üldjoontes töötavad kõik nii nagu võiks arvata. Rakendus on mõningal määral skaleeruv, kuid vigadega. Ette oleks võinud anda näiteks ekraani MinWitdh, et rakendust ei saaks kokku pressida. Meeldib, et pealehe valitud periood on eristatav. Tulude analüüsi lehel seda võimalust, et visuaalselt eristada tehtud valikut, puudub.

Realisatsioon, kood

Loodud on 5 andmebaasi tabelit: Users, Incomes, IncomeTypes, Costs, CostTypes. Code First lähenemisel on kasutatud ka annotatsioone: Required, MaxLength, TypeName. Tabelid on omavel loogiliselt Foreign Key-dega seotud. Kasutatud on 1:m seoseid : ühel kasutajal võib olla palju tulusid ning niisamuti kulusid; ühel tulu- või kulutüübil võib olla mitu tulu- või kuluobjekti.

Services: kasutatud on 3 Service-st: UserService, CostService ja IncomeService, kus toimub baasist andmete pärimine, kustutamine ja lisamine. Meeskond on kasutanud MVVM lähenemist: olemas on vaated (põhivaade tulude ja kulude lisamiseks, tulu- ja kululiikide ning kasutajate lisamise vaade, tulude analüüsi vaade), andmemudel eelpool nimetatud tabelite tarvis loodud klassidega ning vaatemudelid.

Ei ole kasutatud logimist.

Vaadete juures on olemas vigade püüdmine juhuks, kui kasutaja ei täida lahtreid õigesti.

Kood on selge ja arusaadav. Pole kasutatud ülemäära keerulisi päringuid või meetodeid. Kood on loogiliselt stuktureeritud.

Kokkuvõte

Projekti idee on hea, mugav kasutada koduses majapidamises. Arendatud on palju funktsionaalsuseid, mis rakenduse heatahtlikul kasutamisel (kõikide väljade korrektsel sisestamisel) ka töötavad. Corner-cased tekitavad mõningaid erroreid. Mitu olulist funktsionaalsust, nagu sisselogimine, kulude-tulude summeerimine ja vabade vahendite kuvamine on jäänud arendamata. Ka ei ole programm hetkel väga intuitiivne ja kõikide asjade kuvamine ühel lehel teeb pildi natuke kirjuks. Tehtud on tubli töö, aga on veel arendusruumi.

Retsenseeris meeskond PennyFriends 24.01.2018