Enjoy IT

From ICO wiki
Jump to navigationJump to search

Projekt "Laena see mulle"

Idee

Luua rakendus,

  • mis aitab hallata ja luua sõpruskondadel, organisatsioonil oma raamatukogu.
  • kus laenutada saab mida hing ihaldab.
  • mille sihiks üldtunnustatud standartid ja on turvalisus kasutamiseks avalikus veebis.
  • mis on kasutajasõbralik

Tegijad

  • Toomas Talviste
  • Joonas Püüa
  • Ragnar Kullamäe
  • Richard Teppart

Töökäik

Siia hakkab tulema info kokkusaamistest ja tehtud tööst ja jutust.

29.09.2011

Saime kokku, arutasime ning vormistasime esialgse rakenduse analüüsi.

Arutatud sai:

  • Plaanid
    • Mida õppida vaja ja tehnoloogiad, millest peab arusaama
  • Veidike tööjaotust
    • Joonas hakkab tegelema andmemudeliga
  • Raamistikku, mida kasutama hakkame.
    • Mõte, et võiks luua veebirakendus kasutades ASP.NET MVC3

20.10.2011

Joonas ja Toomas panid kirja lõpliku analüüsi

06.11.2011

Joonas ja Toomas tegid valmis algse struktuuri

18.11.2011

Kokku said Toomas ja Joonas. Toomas arendas kasutaja liidest. Joonas tegi kujunduse. Kujunduse suutsime ära kaotada - põhjuseks githubi mittetundmine :D Sai loodud kiiruga ajutine kujundus.

30.11.2011

Selle kuupäeva seisuga on veel Raamatukogul puudu põhifunktsioonidest laenutamine ja aruandluse saamine selle kohta, mis on välja laenutud ja kellele. Selle tahame lisada viimaste mudimiste juures. Töötavad osad:

  • Kasutajate registreerimine
  • Erinevad profiilid
  • Raamatukogu vaade, kus saab näha kõikide kasutajate poolt lisatud raamatud
  • Võimalus leida sama autori raamatuid
  • Kasutajal on võimalik lisada raamat
    • Talle kuvatakse see Profiili lehel
    • Muuta raamatud, kuna esimesel lisamisel ei pea lisama kaanepilti, siis

kui kasutaja on leidnud kaanepildi, saab ta selle hiljem lisada

  • Admin poolel on haldus kõikide raamatukogus olevate itemite kohta
    • saab vaadata ja kontrollida sisu õigsus ning vajadusel

Prototüüp

Kuna tegemist on prototüübiga ja vigu esineb siis hetkel toimivad funktsionaalsused

  • Kasutaja saab lisada raamatuid
  • Admin saab hallata kasutajate poolt lisatud raamatuid
  • Kasutajatel on profiilid ja rollid. Lisavad endast andmeid, kui registreerivad
  • Kataloog kasutajate poolt lisatud raamatudest

Puudused

  • Raamatu info muutmine on hetkel vigane nii, et mittesaadaval
  • Andmete kuvamine lisandub lähipäevil
  • Laenutuse võimalus ka nädala lõpuks

Allalaetav prototüüp http://dl.dropbox.com/u/5117761/MvcRaamatuKogu.zip Projekti koodihaldus https://github.com/ttalviste/Raamatukogu-Enjoy-IT

Projekt kaitsemiseks

http://dl.dropbox.com/u/5117761/MvcRaamatuKoguLopp.zip sellel lingil on kaitsemiseks esitatav produkt. Aruandlus on puudulik. Vaated kohmetud. Ei ole nii rafineeritud kui võiks olla. Beta. Kui valmib lõppversioon, siis saadan meili.

Analüüs

Rakenduse üldkirjeldus

Eesmärgiks luua virtuaalne raamatukogu kasutades selleks ASP.NET MVC3. Rakendus on mõeldud kasutamiseks erinevatele huvigruppidele. Rakenduse kasutajaid saab jooksvalt juurde lisada. Seda saab teha registreerides veebilehel. Igale kasutajale on võimalik määrata erinevad rollid. Rollid annavad kasutajatele lisa funktsionaalsuseid. Rolle saab määrata administraator. Kasutajate põhi funktsionaalsusteks on esemete lisamine raamatukokku ja esemete laenutamine raamatukogust. Iga laenutus läheb kirja andmebaasi. Tagantjärele on vajadusel võimalik vaadata iga eseme laenutuse ajalugu. Ajalugu sisaldab endas millal ja kes antud eseme laenutas. Iga eseme laenutus lisab andmebaasi välja kirje, mis kokkuvõttes näitab meile erinevate esemete, kategooriate laenutus populaarsust, mida me kuvame avalehel eraldi moodulis. Lisaks sellele, on võimalik igal laenutajal anda hinne laenutatud objektile, mis omakorda tekitab uue pingerea, kus kõrgema keskmise hindega objektid teiste seast välja toodud. Seda pingerida kuvame ka avalehel, et kasutajatel oleks kergesti näha kõige hinnatumad esemed.

Igal kasutajal on oma profiil – mis hõlmab kogu kasutajaga seotud infot. Seal on välja toodud tema poolt lisatud esemed. Samuti on seal välja toodud kasutaja poolt tehtud komentaarid- komenataaride-ajaloona. Lisaks sellele on võimalik iga kasutaja profiililt teavet saada antud kasutaja sõprusringkonnast - sõprade list. Lisaks sellele on avalehel moodul, mis kuvab kõige populaarsemaid kasutajaid, kes selguvad mingi algoritmi käigus, mis arvestab esemete hulka, laenutuste arve ja esemetele antuid hindeid. Igat kataloogi ( kasutajat) on võimalik kommeteerida. Lisaks sellele on võimalik ka kommenteerida igat eraldi seisvat objekti.

Problemaatika

Kuna see rakendus toetub kasutajate poolt generaaritavale sisule ja tagasisidele ning nende aktiivse kasutuse realiseerimine ühtse jamtoimiva kasutajakeskonnale. Peab tagama andmete turve, hea valideerumise ning ressurside, s.t kasutajaliidese ja serveri vahelise andmete, õiges käsitlemises.

Lisaks sellele peab arvestama:

  • Standardeid
  • Töökindlust erinevates veebilehitsejates

Funktsionaalsused

Rakenduse üldufunktsionaalsus on kasutaja sõbralikus ehk tagada kasutajatele arusaamine sellest, et mis toimub terve rakenduse raames pärast iga tema tehtud käiku. See nõuab korraliku tagaside ja andmete valideerimissüsteemi.

Must Have

Funktsionaalsused, mis saavad kindlalt ja esmajärjekorras arendatud ja rakendatud ja toetuvad ning paiknevad ühtses kasutajakeskkonnas

Kasutajate rollid

  • Külaline - kasutaja, kes näeb avalikke artifakte ehk teemasi ja laenutusi, mis on avalikud
  • Tavakasutaja – Kasutaja kellel on õigus lisada esemeid. Õigus neid laenutada.
  • Administraator- Kasutaja kellel on tavakasutaja õigused ja lisaks sellele, on tal õigus tavakasutaja postituste, esemete kustutamiseks, eemaldamiseks.
  • Super Administraator- Lisaks muudele õigustele, on tal õigus anda erinevatele kasutajatele rolle ja kustutada teisi kasutajaid.

Esemete lisamine

Igal kasutajal on võimalik lisada nii palju esemeid oma kataloogi kui tahab. Esemete hulk on piiramatu. Iga eseme lisamisel tuleb täita Captcha, et vältida botide tööd. Eseme omanikul on õigus oma eset tagasi nõuda , enne laenutus tähtaja lõppu. Iga eseme lisamisel saab kasutaja valida eseme kategooria, tüübi ja sisestada Nime ning lühikirjelduse. Kategooria ja tüüpi kasutatake esemete sorteerimiseks ning erinevate funktsionaalsuste teostamiseks.

Esemete laenutamine

Igal kasutajal on võimalik laenutada ese, selle tegemiseks tuleb tal täita vastav ankeet kataloogis vastava eseme all. Mis muudab eseme „oleku“ nö. Laenutatuks ja lisab andmebaasi kirje laenutuse kohta, mis sisaldab nii tähtaega milleni ese on välja laenutatud, kui ka eseme omaniku id ja laenutaja id. Et küsimuste tekkimisel kõik teada oleks, näiteks laenutuste ajalugu.

Kasutaja profiil

Igal kasutajal on oma „profiil“ kuhu kuvatakse kõik antud kasutajaga seotud info. Kõik tema kataloogid, esemed, kommentaarid, mis ta siiamaani teinud on. Lisaks sellele „populaarsuse skaala“ , mis on arvutatud lähtuvalt, tema esemete laenutuse arvust kui ka tema esemetele antud hinnetest.

Esemete kataloog

Kataloog iseenesest on erinevate esemete kogum, mis on lisatud ühe kasutaja poolt ja hõlmab mingit kategooriat või teemat. Esemete kataloogis on välja toodud kõik esemed ning andmed nende kohta. Nt: kas antud ese on väljalaenutatud kui jah , siis mis kuupäevani.

Pildi lisamine esemele

Igale esemele on võimalik lisada kirjeldav pilt, mis muudab eseme atraktiivsemaks.

Nice to Have

Funktsionaalsused, mis lisatakse sellisel juhul kui on tehtud "Must Have" osa arendusest.

Sõbra funktsionaalsus

Võimalus lisada teisi kasutajaid oma sõbraks. Sõpru kuvatakse iga kasutaja profiili lehel. Võimalus saata sõpradele sõnumeid. Igale profiili tuleks luua juurde “mailbox”, mis võib osutuda liiga aeganõudvaks antud projekti korral, kuid teostatav.

Populaarsemad tooted

Vastavalt laenutuste arvule omab iga ese indeksit, mis võimaldab populaarsemad tooted avalehele esile tõsta. Lisaks sellele on igal kategoorial oma indeks , mis annab võimaluse teatud kategooria

populaarsuse esile tõsta. Igal kasutajal, kes eseme laenutab on antud võimalus esemele hinde andmiseks, mis omakorda annab võimaluse tõsta esile kõige hinnatumad esemed.

Töö jaotus

Toomas – arendus, andmemudel, analüüs, retentsioonid.

Joonas Püüa - analüüs, disain, andmemudel, arendus, retentsioonid.

Ragnar Kullamäe - retentsioon, analüüs.

Richard – analüüs.