Meeskond "Tyhik"

From ICO wiki
Revision as of 15:52, 30 May 2011 by Aanijago (talk | contribs) (Veebiteenuse kirjeldus)

Liikmed

  • Kert Suvi
  • Seda Sahradyan
  • Helen Muidik
  • Allar Anijago
  • Madis Kõosaar
  • Jana Mrots

XML kodutöö kirjeldus

Plaanis on luua kinode ajakava süsteemi XML fail. Meil on võimalik vaadata erinevate kinode näidatavate filmide kavasid - hinnad, seansid, filmide kirjeldused, treilerid jne. Tegime XML-i küll väga pika ning hetkel on kinodes vaid üks film, korduvalt (kuid see selliseks kindlasti ei jää).

  • XML fail on kättesaadav aadressilt: [1]
  • Skeemifail on kättesaadav aadressilt: [2]
  • Stiilifail on kättesaadav aadressilt: [3]
  • XML fail stiiliga: [4]

Veebiteenuse kirjeldus

Jätkasime eelmises kodutöös tehtud XML-i põhjal veebiteenuse tegemist. Esiteks koostasime andmebaasi ning tegime erinevad klassid asjade jaoks, mida meil on mitu, näiteks kino, film, seanss jne. Seejärel tegime klassid Anna, Vota, Kustuta ja Uuenda, milles vastavalt Anna klassis on kõik meetodid väljastamise kohta, Vota klassis on meetodid andmebaasi sisestamise kohta, Kustuta klassis on meetodid andmebaasist kustutamise kohta ning Uuenda klassis omakorda meetodid andmebaasi kirjete muutmise/uuendamise kohta (näiteks kui sisestamisel tekib näpuviga või kui mõni, filmi kohta käiva lingi või treileri veebiaadress peaks muutuma). Peale seda tegime andmebaasi juurde tabeli Kasutaja ning lisasime projekti 2 klassi: Kasutaja ja KasutajaFunks, viimases on ka meetodid RegaKasutaja, LogiKasutaja, KontrolliKasutaja ja Statistika. Statistika jaoks tegime andmebaasi samuti uue tabeli.

Meetodid anna klassis:

  • annaFilmid
  • annaFilmidNimi
  • annaInimesed
  • annaKinod
  • annaLingid
  • annaSaalid
  • annaSeansid
  • annaSeansidAeg
  • annaTootjad
  • annaTreilerid
  • annaZanrid

Meetodid vota klassis:

  • votaFilm
  • votaHind
  • votaInimene
  • votaInimene_Seos
  • votaKino
  • votaLink
  • votaRoll
  • votaSaal
  • votaSeanss
  • votaSeanss_Tyyp
  • votaTootja
  • votaTootja_Seos
  • votaTreiler
  • votaZanr
  • votaZanr_Seos

Meetodid uuenda klassis:

  • UuendaFilm
  • UuendaHind
  • UuendaInimene
  • UuendaInimeneSeos
  • UuendaKasutaja
  • UuendaKino
  • UuendaLink
  • UuendaRoll
  • UuendaSaal
  • UuendaSeanss
  • UuendaSeanssTyyp
  • UuendaTootja
  • UuendaTootjaSeos
  • UuendaTreiler
  • UuendaZanr
  • UuendaZanrSeos

Meetodid klassis KasutajaFunks:

  • KontrolliKasutajat
  • LogiKasutaja
  • RegaKasutaja
  • Statistika

Meetodid klassis kustuta:

  • KustutaFilm
  • KustutaHind
  • KustutaInimene
  • KustutaInimeneSeos
  • KustutaKino
  • KustutaLink
  • KustutaRoll
  • KustutaSaal
  • KustutaSeanss
  • KustutaSeanssTyyp
  • KustutaTootja
  • KustutaTootjaSeos
  • KustutaTrailer
  • KustutaZanr
  • KustutaZanrSeos

  • Veebiteenus on kättesaadav aadressilt: [5]

Klientrakenduse kirjeldus

Jätkasime olemasoleva veebiteenuse põhjal klientrakenduse tegemist. Enne klientrakenduse tegemist sai ka teenuses parandatud mõned vead pärast esitlusel saadud tagasisidet, muutsime sisselogimist ja tegime hinna kuvamise veidi ümber.

Rakendusel on kaks poolt:

  • tavakasutaja pool
  • administraatori pool

Tavakasutajale kuvatakse erinevate kinode nimekiri, kes meil baasis on, samuti erinevate filmide nimekiri ja seansside ajad ning hinnad.

Administraatori pool toimib selliselt, et sisselogimisel saab adminn lisada erinevaid andmeid andmebaasi, näiteks kinode, filmide, seansside ja hindadega seotud informatsiooni, mis siis kinnitamisel on nähtav tavakasutajale. Adminni lehele saamiseks tuleb urli lõppu panna "/Admin". Adminnid saavad hetkel lisada, muuta ja kustutada kahe asja: kino ja filmi.

Esilehel kuvatakse kõige uuemad filmid, koos väikese kirjelduse, pildi ja muude atribuutidega. Menüüs navigeerides saab vaadata erinevaid kinosid (k.a. nendega seotud andmeid), kõiki filme, mis parasjagu kinodes on, aga ka seansside aegu (ideaalis peaks kuvama seansi juures hindu ka, kuid seda funktsiooni hetkel ei ole).

Kui keegi soovib meie rakendust arvustada, siis tuleb sellele määrata kindel port: 58121. Administraatori poole testimiseks saab kasutada testimiseks loodud kasutajat kasutajanimi: meow | parool: meow


  • Kliendirakendus on kättesaadav aadressilt: [6]

Meeskonna lõpparuanne

Teemaks sai valitud kinokavade infosüsteem, kus on võimalik vaadata erinevaid kinosid, kinodes jooksvaid filme, erinevaid seansse ja hindu. Teema idee pärines Sedalt ning see tundus kõigi jaoks huvitavana, kuna meil ükski kino ei jaga avalikult XML-i, mille vastu saaks rakenduse teha. Otsustasime kõik 3 projekti etappi (XML, veebiteenus, klientrakendus) teha ühel teemal, ehk enda loodud veebiteenusele tegime ka klientrakenduse.

Meeskonna liikmeid oli meil alguses neli, kuid saime juurde kaks liiget erinevatel asjaoludel. Samas oli see ka hea, kuna uued liikmed tõid kaasa uusi ideid ja lahendusi. Töid oli esialgu väga raske jagada, kuna meeskonna liikmed olid kõik nii erinevad ning erinevate oskuste ja võimetega. Sellest põhjustatuna saime me pidevalt koolis õhtuti kokku ning tegime suuremad osad koos ära, kõik said kaasa rääkida ja ideid välja pakkuda, kuidas ülesandeid paremini teostada. Kes vähegi tahtis ja kellel aega oli, sai ka kodus mingeid projekti osi teha ja lõpetada. Rakenduse puhul sai kasutatud ka paaris programmeerimist, kus paarikaupa sai tegeletud erinevate projekti osadega.

XML sai kohe alguses meil põhjalikult läbi analüüsitud ja koostatud. Püüdsime XML-i panna piisavalt andmeid, mida meil hiljem kuvada oleks vaja.

Veebiteenus sai tehtud XML-i arvestades, kus esialgu tegime andmebaasi ning seejärel erinevad klassid, mis hoiavad endas meetodeid andmete kuvamiseks, sisestamiseks, kustutamiseks ja uuendamiseks. Enne rakenduse tegemist sai teenust ikkagi muudetud ja uuendatud, tänu tagasisidele esitlusel, aga ka rakenduse tõttu (näiteks lisasime filmi juurde ka pildi). Veebiteenuses on ka statistika pidamise meetod.

Klientrakendus sai teostatud veebirakendusena kasutades ASP.Net'i võimalusi. Rakendusel on kaks poolt: tavakasutaja ja adminn. Tavakasutaja saab vaadata erinevate kinode kavasid, mis meil andmebaasis olemas on, kinode endi andmeid, erinevaid seansse (ideaalis peaks saama näha ka hindu, kuid seda hetkel veel ei ole). Adminnid saavad sisselogimisel andmeid muuta, kustutada ja lisada. Kokkuvõttes on rakendus veel poolik, kuid eesmärk näha kuidas rakenduse ja teenuse vahel andmete pärimine ja andmine toimib, sai saavutatud.

Hinnang:

  • + piisavalt läbimõeldud XML
  • + palju erinevaid inimesi tiimis, erinevad oskused (oskuste jagamine teistega)
  • + pidev suhtlemine ja kokkusaamised
  • - aja planeerimine
  • - liiga lai teema
  • - keerulised ja segadusse ajavad klassinimed