Talk:Meeskond:NimetuRühmitus

From ICO wiki
Retsensioon meeskond NimetuRühmitus analüüsile

Meeskond NimetuRühmitus on võtnud aluseks juhendi „Kodune raamatukogu” idee ning teinud seda universaalsemaks. Analüüsis defineeritakse esmalt ära funktsionaalsused, mis peavad olema (must have) ning mis võiks olla (nice to have), kusjuures on hea, et meeskonnal on juba eelnevalt visioon, millised nice to have funktsionaalsused peaksid olema prioriteetsed. Antud funktsionaalsused vastavad ka aluseks oleva idee juhendile ning must have sektsioonis esitatu on piisav, et idee rakendusena ka toimiks. Üks märkus siiski oleks – nimelt aruannete funktsioon tundub antud rakenduse kasulikkuse seisukohalt väga tähtsana ja seega oleks oodanud, et see must have nimekirjas on (aruannete funktsioon on kohustuslik ka aluseks olevas ülesandes). Positiivne on ka, et meeskond on esitanud esialgsed andmetabelid. Nendest esialgsetest andmetabelitest lähtuvalt soovitaks meeskonnal veelkord kaaluda üle tähtaja läinud asjade kohta eraldi tabeli loomist.

Võimaliku probleemina käsitletakse analüüsis töökorraldust, mis muutub kaugõppe puhul eriti tähtsaks, kuna on vähe reaalset kokkupuudet ja töö kõrvalt aega õppimiseks. Seega, kui analüüsis nähakse selles probleemi, siis oleks ehk hea olnud määrata kas või esialgsed teemad, milles igaüks muu kursuse materjali kõrval pisut rohkem end harib.

Retsenseeris meeskond EasyRent


Retsensioon meeskond NimetuRühmitus prototüübile

Meeskonna NimetuRühmitus prototüübi saime kiiresti ja lihtsa vaevaga tööle ning programm ei kuvanud käivitamisel veateateid. Valdavalt on must-have funktsionaalsus täidetud. Programmiga saab asju laenutada ja tagastada ning otsinguid teostada. Programm näeb visuaalselt kena välja. Ka koodi ülesehitus tundub loogiline ning arusaadav. Kood on enamjaolt kommenteeritud ja regioonidesse jagatud, mis muudab selle lugemise lihtsamaks ja kiiresti haaratavaks. Prototüübi kohta on tegemist väga hea ja hästi üles ehitatud rakendusega, kuid toome välja siiski mõned puudujäägid ja soovitused.


Funktsionaalsus

Kõige märgatavam funktsionaalne puudujääk on see, et asju laenutades ei saa määrata tagastamistähtaega. Lisaks ei saa isikuid ja asju kustutada või mitteaktiivseks määrata. Samuti ei saa mittesoovitud toiminguid tühistada. Isiku otsimisel kommentaari välja abil, väljastab programm alati kõik isikud, olenemata otsinguvälja sisust. Asja liigita asju otsides kuvatakse kõik asjad, kuid olles juba liigi valinud võik saada uuesti kõiki liike otsida. Tabeleid ei saa väljade põhjal järjestada või filtreerida. Programm ei väljasta ühtegi vea- ega infoteadet. Näiteks isiku või asja sisestamisel ei kuvata infot, kas asi salvestati ja uuesti nuppu vajutades salvestatakse topelt. Samas saab aga ilma nimeta isikut salvestada ja ilma nimeta, kuid liigiga asja. Teostades selliseid toiminguid, mida ei ole võimalik teostada, nt mitte millegi laenutamine või mitte kellelegi laenutamine, jookseb programm kokku. Puudub süsteemilogi ehk ei salvestata rakenduses teostatavaid tegevusi.


Disain

Disaini osas torkas esimesena silma avaakna pealkiri, milleks on „MainWindow“, kuid teistel vaadetel on teemakohased pealkirjad. Kuna mitut vaadet ei saa paralleelselt avada/kasutada, siis võiksid vaated avaneda samas aknas või vähemalt sama resolutsiooniga. Vaated skaleeruvad osaliselt, kuid üsna kitsas ulatuses. Väljad ja nupud lähevad peitu, kui tegelikult veel aknas ruumi on ja akent liiga suureks venitades lähevad nupud nimekirjade peale. Laenutatavat objekti nimetatakse eri kohtades asjaks, kirjeks ja nimetuseks, mis tekitab kohati segadust.


Kood ja struktuur

Valdavalt on kood kommenteeritud ja regioonideks jaotatud, kuid osaliselt on see tegemata. Võib-olla võiks laenutuse ja ajaloo tabelid kokku panna, kuna nad sisaldavad valdavalt sama infot. Positiivne on see, et andmebaasiga suhtlus toimub ühes kohas, milleks on projekt Model. On olemas ka eraldi BLL projekt, kus teostatakse programmi funktsionaalsus. Samas jääb veidi arusaamatuks, miks on need kaks lahku löödud. Projekt Rakendus sisaldab aga nii vaateid kui vaatemudeleid, mis võiks olla eraldi projektide all. Eriti arvestades, et nice-to-have funktsionaalsuse all sooviti ka veebirakendust luua.


Retsenseeris meeskond RemindEm


Retsensioon meeskond NimetuRühmitus lõpptootele

Võrreldes prototüübiga on programm oluliselt täiustunud, nii koodi kui funktsionaalsuse osas. Mõnevõrra ka disaini osas. Programm on terviklik ja eesmärgipäraselt kasutatav. Programmi käivitamine õnnestus probleemideta ja kasutajajuhend oli olemas ning asjakohane. Kood on valdavalt kommenteeritud ja regioonidesse jaotatud. Must-have funktsionaalsus on enamjaolt realiseeritud. Nice-to-have funktsionaalsus on täielikult realiseerimata. Rakendus on väga kena ja terviklik ning kui seda veel veidi edasi aerendada, siis leiaks ilmselt päris palju huvilisi, kes tahaks seda kasutada. Järgnevalt toome välja mõned leitud puudujäägid ja soovitused.


Funktsionaalsus

Must-have funktsionaalsusest ei ole realiseeritud: süsteemilogi ja sorteerimise/filtreerimise võimalus ning mittesoovitud toimingute tühistamine. Võrreldes prototüübiga on vea- ja infoteadete kuvamine oluliselt paranenud, kuid väljale liiga pikka väärtust sisestades jookseb programm kokku. Tagastustähtajaks lubab programm määrata aega minevikus, kui aga sisestada kuupäev vigaselt (nt tekst), siis määratakse automaatselt kahe kuuline tähtaeg ja vea- või infoteadet ei kuvata.

Laenutuste ajalugu ei kuva infot mitte laenutuste, vaid tagastuste kohta. Sarnaselt prototüübile nimetatakse laenutatavat objekti eri kohtades asjaks, kirjeks ja nimetuseks.

Laenutuste kohta infot kuvades võiks kuvada ka asja (või inimese) kommentaari, et eristada samanimelisi. Mugavamaks navigeerimiseks võiks olla back-nupp, et näiteks otsingu detailsest vaatest saaks tagasi otsingu-, mitte avalehele. Asja liigita asju otsides kuvatakse kõik asjad, kuid olles juba liigi valinud võiks saada uuesti kõiki liike otsida.


Disain

Suurim disaini probleem on skaleerumine. Mõningates vaadetes kaovad tekstid, nupud (liiga vara) ära või lähevad üksteise otsa. Osades vaadetes nupud liiguvad, teistes mitte. Iga uus aken avaneb kindla suurusega ja kindlas kohas olenemata sellest, kuhu eelnev aken oli lohistatud või kui suureks tehtud. Põhimõtteliselt on programm hästi ja mugavalt kasutatav vaid vaikimisi resolutsiooniga (1055x713). Aruannetes väljade pikkus ei skaleeru ja on ette määratud arvestamata väljade tegelikke pikkusi, nt asi on pikem kui nimed, kuigi kõigi maksimumpikkus on 50 tähemärki. Osades aruannetes on veeru päised taustapildi tõttu halvasti loetavad ning päised võiksid olla joondatud sarnaselt tabeli sisule (vasakule).

Sarnaselt prototüübile hakkab kohe silma, et avaakna pealkiri on „MainWindow“ ning programmi tiitelribal võiks kuvada ka ikooni.


Kood ja struktuur

Sarnaselt prototüübile on kood üsna hästi kommenteeritud ja regioonidesse jaotatud, kuid välja võiks tuua selle, et MVVM kohaselt peaks mudel sisaldama programmi funktsionaalsust ja andmeid, mistõttu jääb arusaamatuks, mis BLL ja Model on eraldi projektid. Lõpptoote kirjelduses tuuakse välja, et projekt rakendus on WPF rakendus, kuid see sisaldab lisaks ka vaatemudeleid. Vaated ja vaatemudelid võiksid ka sellepärast olla eraldi projektides, et saaks hiljem lisada teisi kasutajaliideseid (näiteks nice-to-have all märgitud veebiliides).


Retsenseeris meeskond RemindEm


Retsensioon NimetuRühmitus rakenduse lõpptoodele

Saime probleemideta rakenduse tööle. Esmapilgul on rakendus ilusa disainiga ja arusaadava funktsionaalsusega. Funktsionaalsus on hästi realiseeritud ja võrreldes prototüübiga ka täiendatud. Kuigi must-have funktsionaalsusest on mõni element puudu, ei teki rakenduse kasutamisel muljet, et toode oleks poolik. Meeldis ka see, kuidas programm käsitleb vigaseid sisestusi.

Lõpptoote kirjeldus on väga hästi dokumenteeritud, on välja tooodud vead, mis võivad ilmneda ja nende lahendused. Andmebaas on hästi ja loogiliselt üles ehitatud ja kõik tabelid on kasutusel. Märkasime, et väljale liiga pikka väärtust sisestades jookseb programm kokku. Seda oleks võinud realiseerida xaml-is MaxLength-i abil.

Kood on jagatud mudeliteks ja kommenteeritud. Päringud on tehtud BLL poolel ning vaatemudelis on ainult WPFiga seotud meetodid.