Talk:FreeVar

From ICO wiki
Revision as of 13:19, 9 June 2016 by Ntingas (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Retsensioon veebiteenusele

Meeskond FreeVar on loonud veebiteenuse, mis võimaldab isikul jagada enda sõiduautoga seonduvat informatsiooni ja seeläbi luua ka vastavat funktsionaalsust pakkuvaid keskkondi klientrakendusena. Antud veebiteenusele retsensiooni koostamisel on aluseks võetud õppeaine “Võrgurakendused II: hajussüsteemide ehitamine” kodutöö Wiki leheküljel veebiteenusele esitatud tingimused ja retsensiooni koostamise juhend.

Lähtudes kodutöö juhendist peab veebiteenus pakkuma teenust, kasutajate tuvastamist ja haldamist, teenuse kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes ning teenuse poole pöördumiste arvu piiramist ja piirangute haldamist. Vormiliste kriteeriumitena on toodud ka nõue kasutatud Windows Communication Foundation või ASP.NET MVC Web API tehnoloogiat ja luua andmebaas, milles oleks vähemalt 9 olemit.

Meeskonna poolt loodud veebiteenus pakub blogide haldust (vaatamine, loomine, muutmine), blogi postituste ja sõidukite haldust (vaatamine, loomine, muutmine, kustutamine) ja kasutajate haldust koos tuvastamisega. Osaliselt on realiseeritud sõnumite saatmise teenus. Teenuse kontrollerid sisaldavad küll vähesel määral logimist (NLog), kuid statistikat otseselt ei koguta. Samas veebiteenuse puhul saab statistika koostamise jaoks kasutada ka veebiserveri logi, mistõttu ei saa väita, et tegemist oleks ilmtingimata puudusega. Samuti ei ole veebiteenuse koodis otseselt vahendeid pöördumiste arvu ja piirangute haldamiseks, kuid ka neid on võimalik veebiserveris konfigureerida. Pöördumiste arvu ja muude taoliste piirangute rakendamine ongi veebiserveri kui madalama taseme peal optimaalsem - siiski ei võimaldaks niivõrd madalal tasemel piirangud nt. kasutajatepõhiseid piiranguid või muid dünaamilisi lahendusi. Vormilised tingimused ehk ASP.NET MVC Web API tehnoloogia kasutamine ja andmebaasi maht ehk vähemalt 9 olemit on täidetud.

Retsenseerimise juhise järgi tuleb anda hinnang ka koodile, s.h. loetavusele ja kommenteeritusele. Veebiteenuse lähtekood on struktureeritud arusaadavalt ja mõistlikult - teenuse, andmebaasi ja domeeni kihid on eraldatud. Samuti paistab, et aluseks on võetud õppejõu poolt kasutamiseks antud baasprojekt. Kasutatud on nõutud arendusmustreid - andmebaasikihis on olemas repositooriumid ja tööüksus (Unit of Work). Kood on loetav ja tagasihoidlikult kommenteeritud, kuid koos meeskonna Wiki leheküljel toodud projekti kirjeldusega on veebiteenuse poolt pakutav funktsionaalsus siiski arusaadav.

Veebiteenuse API-le on koostatud ka dokumentatsioon, mis - nagu meeskond ka ise nendib - on antud hetkel poolik. Samas annab see hea ülevaate kõigist päringutest ja paistab, et API koostamisel on järgitud REST-le omaseid printsiipe.


Retsenseeris Meeskond "Symphony No. 7 in C-sharp minor"

Retsensioon klientrakendusele

Meeskond FreeVar on loonud klientrakenduse enda veebiteenusele, mis võimaldab isikul jagada enda sõiduautoga seonduvat informatsiooni. Antud klientrakendusele retsensiooni koostamisel on aluseks võetud õppeaine “Võrgurakendused II: hajussüsteemide ehitamine” kodutöö Wiki leheküljel klientrakendusele esitatud tingimused ja retsensiooni koostamise juhend.

Kodutöö juhend annab klientrakenduse loomisele suure loominguvabaduse - ainuke piirang on vormile. Antud juhul on klientrakendus loodud sarnaselt veebiteenusele samuti kasutades ASP.NET-i MVC tehnoloogiat ehk kõik formaalsed tingimused on täidetud.

Klientrakendus on ASP.NET-i mõistes jagatud kolmeks piirkonnaks: pealeht, administreerimine (Admin) ja liikmed (MemberArea). Pealeht märkimisväärset funktsionaalsust ei paku, sisaldades ainult mittetöötavat otsinguvormi ja linke. Samuti on pealehe kontroller äärmiselt minimalne ehk pealehe funktsionaalsus ei saagi töötada. Administreerimise piirkonnas on toetatud rollide, süsteemide logide (kustutamine) ja kasutajate haldus. Osaliselt on toetatud ka mitmekeelsuse, nõuete (Claims) ja sisselogimiste haldus. Klientrakenduse keskne osa ehk liikmete piirkond toetab vähemalt kontrollerite ja vaadete tasemel kasutajakonto info, sõnumite, lemmikblogide ja sõiduautode haldust. Osaliselt on toetatud blogipostituste ja blogide haldust.

Retsenseerimise juhise järgi tuleb anda hinnang ka koodile, s.h. loetavusele ja kommenteeritusele. Klientrakenduse lähtekood on struktureeritud arusaadavalt ja mõistlikult - erinevad kihid on teineteisest eraldatud. Kasutatud on soovituslikke arendusmustreid - veebiteenusega suhtlemiseks on olemas repositooriumid ja tööüksus (Unit of Work). Puuduste poole pealt võib välja tuua mõnes kohas vaatemudelite asemel ViewBag’ide kasutamise.

Üldiselt on kood loetav ja tagasihoidlikult kommenteeritud, kuid koos meeskonna Wiki leheküljel toodud projekti kirjeldusega on arusaadav, millist funktsionaalsust meeskond on soovinud arendada.


Retsenseeris Meeskond "Symphony No. 7 in C-sharp minor"