Meeskond: LIB
Meeskond ja rollid
- Sigrid Pachel - Projektijuht
- Diana Nikolajeva
- Kristjan Adrat
Idee
Kodune raamatukogu. Plaanis on luua rakendus, mis võimaldab sisestada kõik kodus olevad raamatud ja neid teatud tingimustel välja laenutada. Rakendusest peaks saama ülevaate olemasolevatest raamatutest, laenutajatest, tähtaegadest jmt.
Projekti kirjeldus
Tehnoloogiad
WPF, LINQ, versioonikontrolliks TFS
Analüüs
Koduse raamatukogu rakenduse eesmärk on võimaldada selle kasutajal organiseeritult hallata oma kodus olevaid raamatuid ja pidada logi nende väljalaenutamise kohta. Süsteem on mõeldud erakasutamiseks ja eelkõige selleks, et saada ülevaade kodus olevatest teostest ja sellest, kelle kätte mingi eksemplar antud on. Tegemist on graafilise kasutajaliidesega, mis lubab sisestada ja vaadata raamatute ja laenutajatega seotud teavet.
Rakenduse kasutajate sihtrühmaks on inimesed, kellel on hulk raamatuid ja kes laenavad neid tihti teistele. Rakendus on abiks, kui on soov pidada olemasolevate raamatute registrit ja näha milliseid raamatuid üldse ja kui palju neid kogus on. Samuti juhul, kui tahetakse raamatuid teatud kriteeriumite alusel sorteerida või otsida ning saada ülevaadet kogu hetkeseisust – millised raamatud peaksid olema riiulil ja millised on parajasti välja laenutatud.
Koduse raamatukogu maht on tüüpiliselt palju väiksem kui avalikul raamatukogul, seega ei ole vaja pidada arvestust kümnete või sadade tuhandete raamatute üle. Teoste kohta salvestatakse tüüpilisi andmeid: pealkiri, autor, žanr, ilmumisaasta jms. Rakendus annab lisaks raamatuinfole teavet laenutajate ja laenutamistähtaegade kohta (eeldusel, et haldaja vastava info sisestab) ning võimaldab seda teavet valitud kriteeriumi alusel analüüsida või töödelda.
Rakenduse kasutaja saab raamatu kirjeid sisestada ja kustutada ning märkida teoseid välja laenutatuks, samuti märkida neid tagastatuks. Tagastamistähtaeg on vaikimisi üks kuu. Kasutaja saab ka sisestada ja kustutada laenutajaid ehk tekitada laenutajaprofiile. Uue laenutaja sisestamisel luuakse tema profiil, kust näeb laenutaja üldandmeid, käesolevaid raamatuid ja nende tähtaegu. Üldandmete all on mõeldud nime ja kontakti (e-posti aadressi ja telefoninumbrit). Raamatuid ja laenutajaid on võimalik filtreerida salvestatud andmete põhjal.
Raamatu kirje juures on info selle teose kohta: pealkiri, autor, žanr, ilmumise aasta. Kui raamat on vaatamise hetkel välja laenutatud, siis on raamatu kirje juures vastav märge, samuti on näha, kes on laenutajaks ja millal on tagastamise tähtaeg.
Lisafunktsionaalsusena on mõeldud meenutamine. See tähendab, et kui mõne teose tagastamise tähtaeg hakkab lähenema või on möödas, kuvab rakendus vastavasisulise teate ja kasutaja soovil saadab laenutajale meeldetuletava e-kirja. Samuti on lisafunktsionaalsusena mõeldud tähtaegade pikendamine. Pikemas perspektiivis võib kasutajal tekkida ka soov lisada raamatutele hinnanguid või täiustada raamatu profiili näiteks lühikese kokkuvõttega ja pildiga esikaanest. Lisaks võib kasulikuks osutuda laenutaja profiililt tema laenutuste ajaloo nägemine. Samuti võiks rakendus teada anda, kui mõnel laenutajal on korraga käes liiga palju raamatuid (mis on liiga palju, saab määrata kogu omanik) ja pole soovitav talle uusi raamatuid juurde anda.
Arendamisel võib problemaatiliseks osutuda automaatse meeldetuletuse genereerimine ja vastava e-kirja saatmine. Tähelepanu vajab ka see, et disain oleks minimalistlikult lihtne, navigeerimine loogiline ja süsteem võimalikult iseseletav.
Must have funktsionaalsused:
- raamatute sisestamise võimalus
- raamatute kustutamise võimalus
- raamatute otsimise ja kuvamise võimalus pealkirja järgi
- raamatute otsimise ja kuvamise võimalus autori järgi
- raamatute otsimise ja kuvamise võimalus žanri järgi
- raamatute laenutatuks märkimise võimalus
- raamatute tagastatuks märkimise võimalus
- raamatu laenutamise tähtaeg vaikimisi üks kuu
- süsteem arvutab välja laenutamise päeva põhjal tagastustähtaja automaatselt
- parajasti väljalaenutatud raamatute nimekiri koos tähtaegade ja laenutajatega
- raamatu kirje juures märgitud, kui raamat on parajasti laenutatud
- kui raamat on laenutatud, siis on kirje juures kohe näha ka tähtaeg
- kui raamat on laenutatud, siis on kirje juures olemas ka laenutaja nimi
- laenutaja profiil (nimi, kontakt, parajasti käes olev raamat)
- raport, mis võimaldab pärida raamatukogu seisu (raamatuid kokku, palju väljas, raamatute tähtajad)
Nice to have funktsionaalsused:
- tähtaja pikendamise võimalus
- meenutus, kui tähtaeg hakkab saabuma või on läbi
- automaatne e-kiri laenutajale, kui tähtaeg hakkab saabuma või on läbi
- iga raamatu profiilis lisaks veel pilt ja lühikirjeldus
- raamatu profiili saab lisada ka raamatu kokkuvõtet
- kasutajal võimalus märkida, milliseid raamatud on tal endal juba loetud
- kasutaja hinnang raamatule, kui ta on seda lugenud (näiteks kolm valikut: „meeldis“, „meh“ (ehk siis ei oska öelda) ja „ei meeldinud“, mille saaks ühe võimalusena lahendada kas või emotikonidega :), :|, :( )
- raamatu ühesuguste eksemplaride arvu määramine
- kui ühel laenutajal on käes vähemalt n arv raamatuid, mis on läinud üle tähtaja, siis süsteem kuvab teate, et sellele kasutajale rohkem laenutada ei soovita, enne kui ta pole eelmisi tagastanud
Rakendus leiaks kasutust ka näiteks filmide, plaatide, lauamängude vms jaoks, sest nende registri pidamise ja laenutamise loogika sarnaneb raamatukogus hoitavatele raamatutele. Tõenäoliselt tuleks muuta mõned “veeru kirjed”, näiteks filmide puhul oleks salvestatud järgmine informatsioon: pealkiri, režissöör, žanr, ilmumisaasta, (lühikirjeldus või näiteks link IMDb lehele). Heliplaatide puhul oleks salvestatud: esitaja, plaadi nimi, žanr, ilmumisaasta.
Avaldatud failid
Arendusprotsess
- 12.10.2015 - Loodud wiki leht ja toimus esimene kohtumine, kus panime paika teema ja jagasime ära esmased ülesanded.
- 15.10.2015 - TFS konto loodud.
- 17.10.2015 - Iga meeskonnaliige kirjutas esimese analüüsi enda ideede ja mõtega, mille pealt tööd jätkata.
- 23.10.2015 - Veebikoosolek, kus arutasime detailsemalt funktsionaalsust, mida ja kuidas raamatukogu jaoks arendada.
- 24.10.2015 - Esimene analüüsi draft.
- 30.10.2015 - Analüüs valmis ja laetud wikisse.
- 08.11.2015 - Analüüsi retsensioon valmis ja laetud wikisse.
- 10.11.2015 - Rühmaga liitus Kristjan Adrat.
- 11.11.2015 - Kohtumine. Esimesed taskid jagatud.
- 28.11.2015 - Nõupidamine.
- 29.11.2015 - Projekt esitletud loengus. Versioonikontrolli probleemi tuvastamine ja osaline lahendamine.
- 02.12.2015 - Üks liige lahkus rühmast.