Johhaidii

From ICO wiki
Jump to navigationJump to search

Meeskond

  • Yogesh Sharma
  • Juhan Trink
  • Marju Niinemaa (lahkunud rühmast pärast analüüsi)

Projekti idee

Projekti eesmärk on luua filmilaenutuse infosüsteemi WPF-rakendus. Rakenduse teenusteks on filmide info kuvamine ja filmide välja laenutamine. Rakendus võimaldab hallata filmikogu ja laenutajate andmebaasi. Laenutamiseks saavad kasutajad omale konto luua, filmikogust valida või otsida sobiva filmi sobival andmekandjal ja märkida selle välja laenutatuks. Filmi tagastamise korral saab kasutaja märkida filmi oma kontoga sisse logides tagasi tooduks. Rakendus säilitab laenutajate filmilaenutuste ajaloo, mida on hiljem võimalik kuvada.

Filmikogu ja kasutajate andmebaasi haldamine käib läbi administraatoriliidese, mille kasutamiseks on vajalik eriõigustega konto.

Tehnoloogiad

  • Kasutatav raamistik: .NET Framework 4.5
  • Kasutatav tehnoloogia: C#, WPF, Entity Framework, LINQ
  • Kasutatav arendusmuster: MVVM
  • Kasutatav versioonihaldus: Visual Studio Online

Analüüs

Rakenduse funktsionaalsused

"Must have" funktsionaalsused

  • Filmide registreerimine
  • Filmide andmete muutmine
  • Filmide eemaldamine kogust
  • Kasutaja (laenutaja) registreerimine
  • Laenutaja andmete muutmine
  • Filmi laenutuse sidumine kliendiga
  • Filmilaenutuse ajaloo väljastamine kliendi põhiselt
  • Tugi erinevatel andmekandjatel olevate filmide jaoks
  • Filmide otsimine nime järgi

"Nice to have" funktsionaalsused

  • Tagastamise tähtaja pikendamise võimalus
  • Filmide kommenteerimise ja hindamise võimalus
  • Statistika laenutuste kohta
  • Arvustuste päringud online filmide andmebaasist
  • Filmile plakati lisamine online filmide andmebaasist
  • Sarnaste filmide pakkumine
  • Filmi andmete lugemine ja kogusse lisamine plaadi peal oleva metadata järgi
  • Tagastustähtaja ületamisel kasutajale piirangud

Vaated

  • Otsingu vaade
  • Filmi vaade
  • Filmi andmete sisestamise ja muutmise vorm
  • Laenutaja vaade
  • Laenutaja andmete sisestamise ja muutmise vorm
  • Filmilaenutamise vaade
  • Filmilaenutuse ajaloo vaade
  • Administratiivne vorm

Rollid

  • Tavakasutaja - Tavaõigustega kasutajal (laenutaja) on võimalik otsida filmikogust nime järgi filme. Laenutamiseks peab laenutaja omale konto looma ja sellega sisse logima. Sisse logitud laenutaja saab muuta oma andmeid ja filme laenutada. Tavaõigustega kasutaja näeb sisse logitult oma filmilaenutuste ajalugu.
  • Admin õigustega kasutaja - Administraatoriõigustega kasutajal (admin) on sisse logitult võimalik filmikogusse filme lisada ja muuta filmide andmeid. Admin saab ka muuta tavaõigustega kasutajate kontode andmeid. Admin näeb nimekirja kõigist hetkel välja laenutatud filmidest, nende tagastamise tähtaegadest ja laenutajatest.

Võimalikud probleemid

  • Ei jõua realiseerida kõiki soovitud funktsionaalsusi
  • Halb otsingualgoritm
  • Lisafunktsionaalsuse implementeerimisel võib olla vajalik põhivaadete muutmine, mistõttu võib nice-to-have funktsionaalsuse lisamine võtta oodatust palju kauem
  • Offline-tugi - kui lisada online päringud plakatite ja arvustuste jaoks, peab säilitama eelneva offline-only fuktsionaalsuse

Rakenduse töö kirjeldus

  • Kasutaja saab filmi otsida sisestades osa nimest
  • Kasutaja saab valida filmi sobival andmekandjal
  • Kui kasutaja pole sisse logitud, palutakse sisse logida
  • Kui kasutajal pole kontot, saab uue konto luua ja see lisandub andmebaasi
  • Kasutaja saab enda konto andmeid muuta
  • Kui kasutaja laenutab filmi, märgitakse see välja laenutatuks
  • Kui kasutaja tagastab filmi, märgitakse see saadavaks
  • Kasutaja saab kuvada enda laenutusajalugu
  • Admin saab kasutaja konto andmeid muuta ja kustutada
  • Admin saab filme lisada, muuta ja kustutada
  • Admin saab kuvada kõik filmid, mis on hetkel välja laenutatud

Lõpptoode

Logi