Meeskond: MSI

From ICO wiki


Meeskond

  • Indrek Tamm
  • Siim Ivask
  • Martin Saar

Projekti ülevaade

Eesmärk oli luua tarkvara, mis aitab kaasa koduste raamatute/filmide haldamisele - nende laenutamine, lisamine ja eemaldamine. Raamatuid sisestab ja muudab ainult raamatukogu omanik (admin). Samuti saab raamatuid välja laenutada ainult omanik. Raamatuid laenutatakse ainult inimestele, kes on ennast meie raamatukokku registreerinud. Tarkvara eesmärk on tagada mugav ja turvaline laenutusprotsess ja samuti anda selgem ülevaade kõikidest kodus olevatest raamatutest.

Kasutatav .NET tehnoloogia

  • Kasutatav raamistik: .NET Framework 4.5
  • Tarkvara : MS Visual Studio, QSEE Super Lite, MS SQL Server Management Studio

Funktsionaalsused

  • Kasutajaks registreerumine.
  • Sisse logimine
  • Filmide ja raamatute lisamine.
  • Filmide ja raamatute vaatamine.
  • Raamatute ja filmide laenutamine.
  • Hilinejatele e-mailiga teate saatmine.(ainult G-Mailile)

Nice To Have

  • Teate saatmine on automaatne.
  • Kasutaja andmete muutmine.(admin/tavakasutaja)
  • Lisatud raamatute ja filmide muutmine.(admin)

Andmebaasi mudel

Andmebaasi ERD-mudel. RaamatukoguAndmebaaspiltv1.png

Probleemid

  • Raamatud mitme autoriga.
  • MVVM
  • Tarkvara
  • Liiga kõrged ootused ülesande täitmiseks.
  • Ülesande raskuse alahindamine.
  • Aja halb planeerimine.

Arendusprotsess

  • 20.10.15 - Meeskonna loomine
  • 22.10.15 - idee väljamõtlemine
  • 25.10.15 - WIKI lehe loomine
  • Arendusprotsessi algus - mõningad "all-nighterid"
  • Prototüüp
  • WIKI lehe lõpetamine
  • Palju koodimist
  • Valmis projekt

Analüüs

Eesmärk oli luua tarkvara, mis aitab kaasa koduste raamatute/filmide haldamisele - nende laenutamine, lisamine ja eemaldamine (maha kandmine). Raamatuid sisestab ja muudab ainult raamatukogu omanik (admin). Samuti saab raamatuid välja laenutada ainult omanik. Raamatuid laenutatakse ainult inimestele, kes on ennast meie raamatukokku registreerinud. Tarkvara eesmärk on tagada mugav ja turvaline laenutusprotsess ja samuti anda selgem ülevaade kõikidest kodus olevatest raamatutest. Kõige suuremateks probleemideks tarkvara arendamise juures oli programmi korrektne ülesehitus (MVVM) ja aja planeerimine – hindasime tõsiselt ülesande raskust ja hakkasime sellega liiga hilja tegelema, samuti puudus eelnev kogemus C# programmeerimiskeelega. Arendusprotsessi alguses tekitas probleeme arendustarkvara kasutamine ja andmebaasidest ükitkute lahtrite pärimine. Lahenduse leidmine võttis aega, lõpuks saime ikkagi rahuldava lahenduse. Funktsionaalsused – hindasime ülesande keerukust ja seadsime esmased eesmärgid liiga kõrkeks.(hiline algus) MUST Lõpptoode pidi lubama registreerida ja sisse logida. Omanik/kasutaja peab saama luua kasutaja, et raamatuid välja laenutada. Omanik saab raamatud ja filme lisada. Tavakasutaja aga ainult näeb omaniku poolt lisatud filme. Raamatu tagastamisega hilinenud inimestele saadetakse e-mail (preagu ainult G-Mailile).

NICE Olemas – Omanik saab muuta/kustutada kasutajat. Samuti on omanikul olemas filmide ja raamatute muutmise õigus. Tulekul - E-mailide saatmine täielikult automatiseerida ja saata ka teistele e-mailidele peale G-Maili. Programmi käivitamisel avaneb aken, milles on navigatsiooniriba, millega saab programmi erinevate lahtrite vahel liikuda. (näiteks raamatud, filmid, laenutamine, tagastus jne...) Vajutades Raamatute lahtri peale on võimalik raamatuid nimeliselt otsida, samuti on seal list kõigist raamatutest. (sama on ka filmidega, aga filme on võimalik ka žanri järgi otsida). Filmi laenutamine peale vajutades avaneb filmide laenutamise aken, omanik valib laenutaja kasutaja, selle käigus kuvatakse kõik filmid, siis kuvatakse filmid, mis on hetkel kasutaja käes, ja saadaval oleva filmi, mida soovitakse laenutada (Kuvatakse ka pealkiri ja lühike filmi kirjeldus). Vajutades nupule Laenuta, laenutatakse film kasutajale. (Raamatute laenutamine on filmidega samasugune). Raamatute tagastamiseks minnakse Tagastus lehtrisse, seal olles valib omanik kasutaja, seejärel kuvatakse kõik raamatud/filmid, mis on hetkel kasutaja käes, valitakse tagastatav film/raamat ja vajutatakse nupule tagasta. Omanik saab kasutajate käes olevate raamatute/filmide kohta infot lahtrist Kasutajad, samuti saab omanik saata hilinejatele meeldetuletuse. Raamatute/filmide lisamiseks ja muutmiseks minnakse lahtrisse Raamatute haldus/Filmide haldus. Raamatute lisamiseks peab omanik täitma vajalikud lahtrid ja vajutama nupule Lisa raamat, kustutamiseks peab omanik valima raamatu mida kustutada, kustutamisel saab ka kasutada otsingufunktsiooni, ja vajutama nupule Kustuta. (Raamatute ja filmide haldamine on identne). Kasutajaks registreerumiseks peab kasutaja täitma kõik lahtrid ja vajutama nupule registreeri. Logi sisse lahter on põhiliselt omanikule, kes saab hiljem raamatuid/filme leanutada ja hallata. Programmi arenduse käigus tegelesime eelkõige programmi funktsionaalsusega.

Prototüüp

https://www.dropbox.com/s/r6ds02k10oqcpa7/KoduneRaamatukogu.zip?dl=0

Lõpp

Programmi korralikuks jooksutamiseks on vaja eelnevalt andmebaasi lisada kasutajagruppi id-ga 1 ja 2. Lisaks on vaja lisada mõningad zanrid ning autorid. kui nendesse tabelitesse sissekanded teha toimib kogu funktsionaalsus ideaalselt ;)
https://www.dropbox.com/s/651ugio1wpcatbe/KodutooMSI.rar?dl=0
Andmebaasi SQL script: http://www.upload.ee/files/5516117/raamatukoguUUS01.sql.html