Meeskond:EasyRent: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Ahjogi (talk | contribs)
Hantsov (talk | contribs)
No edit summary
 
(56 intermediate revisions by 3 users not shown)
Line 2: Line 2:
Meeskonna liikmed:
Meeskonna liikmed:
*Hardi Antsov
*Hardi Antsov
*A<span style="color:white; width:1px; display:inline-block;">jura</span>h<!-- -->ti J<!-- -->õ<span style="color:white; width:1px; display:inline-block;">jura</span>gi
*Andres Kaljo


=Idee=
=Idee=
Line 9: Line 7:
'''Autorendi tarkvara EasyRent'''
'''Autorendi tarkvara EasyRent'''


Meeskonna eesmärgiks on luua WPF rakendus, mis võimaldab autorendi teenust pakkuvatel ettevõtetel oma igapäevaseid
Meeskonna eesmärgiks on luua autorendi teenust pakkuvale firmale põhitegevust toetav tarkvara. Tarkvara eesmärk on hallata sõidukite rentimist.
tööprotsesse lihtsustada.  


Tarkvara võimaldab ettevõttel:
Rakenduse loomiseks kasutatakse <i>Windows Presentation Foundation</i>'it ning <i>Model-View-ViewModel</i> arendusmustrit.
*sisestada renditavaid sõidukeid andmebaasi
*broneerida sõidukeid ja kontrollida sõidukite saadavust erinevatel päevadel
*sisestada kliente andmebaasi ja vaadata klientidega seotud tellimusi
*pidada arvestust tellimuste üle
*koostada erinevaid aruandeid (tellimused, kliendid, sõidukid jms)


=Must have=
=Rakenduse skoop=
=Nice to have=
 
Rakendus on mõeldud ainult renditeenuse pakkumise toetamiseks. Skoopi kuulub ka ettevõtte klientide üle arve pidamine.
 
Rakenduse skoobist on väljas järgmised funktsionaalsused:
* sõidukite üle raamatupidamise jaoks vajaliku täpsusega arvepidamine, sealhulgas kõik sõidukite remondiga, kindlustamisega ning muu igapäevase haldamisega seotu;
* klientidele arvete väljastamine.
Mõlemad toodud funktsioonid tuleb ettevõttel lahendada eraldiseisva raamatupidamise tarkvaraga.
 
Kuna klientidele arvete väljastamise aluseks on EasyRent'ist pärit andmed, siis reaalses maailmas oleks rakenduse üheks järgmiseks arendusetapiks selle liidestamine raamatupidamise tarkvaraga.
 
=Rollid=
Rakenduse kasutajatele omistatakse rollid. Rollid määravad kasutajale lubatud tegevused. Ühel kasutajal võib olla mitu rolli. Rakendusele on ligipääs ka autentimata kasutajatel, neil ei ole seega ka rolle.
 
Rakenduses on kasutusel järgmised rollid:
* laenutaja - sisaldab endas kliendi teenindamiseks vajalikke tegevusi;
* <i><u>nice2have and very optional</u> klient - autenditud klient, saab vaadata pakkumises olevad sõidukeid, teha broneerimisi, muuta mittevõõrandamatuid andmeid</i>;
* sõiduki sisestaja/muutja - sisaldab endas privileege operatsioonideks sõidukiga; reaalne täitja sõltub ettevõtte suurusest;
* sõidukile pildi lisaja/muutja - reaalses elus on mõistlik panna pildibaasi <i>up-to-date</i> hoidmine klienditeenindajale;
* kliendi muutja - kliendi võõrandamatute andmete muutmiseks, samuti kliendi arhiveerimiseks, roll omistatakse kogenud rakenduse kasutajale, kelle eksimisoht on väike (<i>power-user</i>);
* raamatupidaja - ainult selle rolli omaja saab määrata sõiduki rentimise hinna piirid, laenutaja peab püsima ette seatud piirides, ärilises mõttes kriitilise tähtsusega roll;
* vaatleja - igale kasutajale vaikimisi omistatav roll, reaalses elus peaks vastama autentimata laenutuse kliendile, selle rolli omaja saab ainult vaadata pakkumises olevaid sõidukeid;
* kasutajate haldaja - roll võimaldab kasutajaid luua, omistada neile rolle ning nullida parooli.
 
=Funktsionaalsus=
Alljärgnevas esituses ei ole funktsionaalsust jagatud [http://en.wikipedia.org/wiki/MoSCoW_method MoSCoW] järgi. Esitluses on funktsionaalsus toodud äriloogikat silmas pidades. Kirjeldatud funktsionaalsuses on eraldi märgitud, kui silmas on peetud mitte kohustuslikku osa (<u><i>nice2have</i></u>).
 
==Sõiduki haldamine==
Sõidukil on järgmised omadused: registreerimise number, VIN kood, mudel, mark, värvus, väljalaskmise aasta, läbisõit, sõiduki olukorra iseloomustus, pildid sõidukist.
 
Olemiga sõiduk on võimalik sooritada järgmisi tegevusi:
* sõiduki loomine - uue sõiduki andmebaasi sisestamine;
* sõiduki mahakandmine (arhiveerimine) - sõidukit kustutada ei saa, mahakandmine kaotab ta välja renditavate valikust;
* sõiduki muutmine - muuta ei saa võõrandamatuid andmeid, sellisteks on registrinumber (tegeleme ainult Eestis registreeritud sõidukitega) ja VIN kood;
* piltide haldamine - lisamine ja kustutamine, ajalugu ei ole vaja säilitada;
* rendihinna haldamine - rendihind hoitakse rakenduses vahemikuna, selline lähenemine võimaldab jätta klienditeenindajale väikese kaalutlusõiguse.
 
==Kliendi haldamine==
Kliendil on järgmised omadused: registri kood, registri koodi allikas, eesnimi, perenimi/ettevõtte nimi, sünniaeg, sugu, elukoht (ühe väljana), e-post, telefon, kommentaar vaba tekstina.
 
Olemiga klient on võimalik sooritada järgmisi tegevusi:
* loomine - uue kliendi andmebaasi sisestamine.
* muutmine - muuta ei saa võõrandamatuid andmeid, sellisteks andmeteks on registrikoodi ja koodi allika paar, koodi allikaks on näiteks Eesti isikukood, Läti isikukood, Eesti äriregistri kood, RKOARR reg nr, ...
* klienti kustutada ei saa, samuti ei ole vaja teda arhiveerida, eeldame, et inimesed rakenduse skoobis ei sure
* <i><u>nice2have</u> krediidireiting, keeruline on sisuline defineerimine ...</i>
 
==Rentimiste haldus==
Rentimise haldus ongi rakenduse põhiline äripoolt toetav funktsionaalsus.
 
===Sõiduki broneerimine===
Sõiduki broneerimine on konkreetse kliendi poolt konkreetseks ajaks konkreetse sõiduki kohta esitatud rendi soov.
 
Kui sama klient soovib broneerida kattuvaks ajaks mitut sõidukit, siis kuvab rakendus selle kohta teate.
 
Rakendus tuletab kasutajale meelde broneeringu tähtaja möödumistest. Selle eesmärk on, et klienditeenindaja saaks enne broneeringu lõplikku tühistamist potentsiaalse kliendiga üle suhelda.
 
===Broneeringu tühistamine===
Klient loobub broneeringust omal initsiatiivil. Sõiduk vabaneb teisteks rentimisteks.
 
===Sõiduki väljastamine===
Tähistab sõiduki reaalset välja rentimist ehk sõiduk antakse kliendile üle. Sõiduki kliendile üleandmise käigus vaadatakse koos kliendiga sõiduk üle ning fikseeritakse sõiduki olukord. Sõiduki olukorra hulka kuuluvad sõiduki läbisõit, küte, sõiduki üldine olukord.
 
===Sõiduki tagastamine===
Sõiduk toodi firmasse tagasi. See tegevus tähendab sõiduki vabanemist teisteks rentimisteks. Sõiduki tagastamise osaks on sõiduki seisukorra hindamine. Sõiduki olukorra hulka kuuluvad sõiduki läbisõit, küte, sõiduki üldine olukord.
 
==Aruanded==
Rakendus võimaldab tegevusest ning hetkeolukorrast ülevaate saamiseks aruannete koostamist.
 
Vajalikud on järgmised aruanded:
* tähtajaks tagastamata sõidukite loetelu
** <i><u>nice2have</u> rakendus saadab ise automaatselt igal öösel klientidele meeldetuletusi tähtaja möödumise kohta kliendi e-posti aadressile</i>
* <i><u>nice2have</u> hinnang kliendile – eesmärk on kliente senise käitumise põhjal profileerida ning halva reitinguga klientidele sõidukit mitte rentida, igale tegevusele hinnang (näiteks bronni mitterealiseerimine on negatiivne), nende summa,</i>
* nõutavuse top – sõidukite (ka markide?) kaupa
 
==Kasutajate haldamine==
Rakenduse privileegidega piiratud osa kasutamiseks on vajalik autentimine ja autoriseerimine. Selleks on rakenduses kasutajad. Kasutajate autentimise toimub parooli abil.
 
Olem kasutaja omadused on kasutajanimi, nimi, kommentaar ja talle omistatud rollid. Siin on mindud teadlikult lihtsuse teed.
 
Kasutajate haldamine sisaldab endas:
* kasutaja loomist;
* kasutajale rollide omistamist ja rollide eemaldamist;
* kasutaja rakendusest eemaldamist - sisemiselt märgitakse ta mitteaktiivseks, kasutajaid päriselt kustutada ei saa.
 
 
==<i>(nice2have and very optional) Väga piiratud funktsionaalsusega veebirakendus klientidele</i>==
 
* <i>võimaldab autenditud kliendil veebis vaadata pakkumises sõidukeid, teha broneerimist.</i>
 
* <i>võimaldab vaatlejal veebis vaadata pakkumises sõidukeid.</i>
 
 
=Prototüüp=
 
Prototüübi leiab [http://enos.itcollege.ee/~hantsov/EasyRent_proto.rar siit].
On kasutatud MVVM arendusmustrit, kus EasyRent.View projekt hõlmab View-d ning ViewModel-it, Model koosneb kahest eraldi EasyRent.BLL ja EasyRent.Models projektist.
Kuna meeskonna koosseisus toimusid muudatused, siis funktsionaalsust võrreldes planeerituga on vähendatud - nt rollid on täiesti ära kaotatud.
 
Kasutamine:
* Loo VSi uus lokaalne andmebaas nimega EasyRentDB
* Kasuta solutioni "Andmebaas" kaustas olevat EasyRentDB.sql tabelite loomiseks
* Kui probleeme peaks tekkima Entity Framework-iga, siis tee NuGet Packages alt reinstall
* Andmebaasi Kasutaja tabelisse lisa manuaalselt üks kasutaja (sisselogimiseks)
* Lisa rakenduses sõidukeid, kliente ning teosta rentimist/broneerimist
* Listide kohta: topeltklikk valikul avab detailvaate ning rentimisel kliendi või sõiduki lisamine käib samuti topeltkliki abil avanevas listis.
 
Küsimuste korral:
hardi.antsov@itcollege.ee
 
=Lõpptoode=
 
Lõpptoote leiab [http://enos.itcollege.ee/~hantsov/EasyRent_lopp.rar siit].
 
 
==Lahenduse kirjeldus==
 
Rakendus loodi Visual Studio 2013 arenduskeskkonda kasutades. Arendusprotsessis kasutati koodihoidlana TFS-i. Tehnoloogiana kasutati <i>Windows Presentation Foundation</i>'it ning <i>Model-View-ViewModel</i> arendusmustrit. Kasutati ''database first'' lähenemist ning andmebaasiga suhtluseks ja rakenduses kasutavate mudelite loomiseks Entity Framework-i.
 
Rakendus on loodud rentimist teostavale töötajale abiks. Põhifunktsionaalsuse annavad rakendusele kolm kogumit objektidest Sõiduk, Klient ning Rentimine. Neid kuvatakse listidena eraldi akendes ning läbi nende toimub liikumine vastava objekti detailseid andmeid kuvavale aknale. Rakendus lubab avada korraga mitmeid aknaid, mis peaks koos listidele võimalike filtritega tagama mugava ülevaate toimuvast ning tegema rentimise teostamise ja haldamise lihtsaks.
 
==Liikmete panused==
 
Hardi Antsov: 100%
 
Loobunud liikmed:
 
Ahti Jõgi: ~40% (andmebaasi mudel, analüüs)
 
Andres Kaljo: ~10%
 
==Kasutusjuhend==
 
* Loo VSi uus lokaalne andmebaas nimega EasyRentDB
* Kasuta solutioni "Andmebaas" kaustas olevat EasyRentDB.sql tabelite loomiseks
* Kui probleeme peaks tekkima Entity Framework-iga, siis tee NuGet Packages alt reinstall
* Andmebaasi Kasutaja tabelisse lisa manuaalselt üks kasutaja (sisselogimiseks)
 
Peaaken:
 
* Avaneb pärast sisselogimist, siit toimub kolme erineva listiakna avamine
* Avab Sõidukite, Klientide ja Rentimiste aknaid
* Sulgeb kogu rakenduse
 
Sõidukid aken
 
* Avab sõiduki lisamise akna
* Kuvab nimekirjana rakenduse sõidukeid
* Filtreerib nimekirja vastavalt sisestatud infole
* Avab vastava sõiduki detailvaate, kui nimekirjas teha topeltklikk
 
Sõiduki detailvaate aken
 
* Kuvab sõiduki andmeid
* Muudab sõiduki andmeid
* Teostab sõiduki lisamist
* Lisab/avab sõiduki pilti
* Viib rentimise aknasse antud sõiduki andmetega
 
Kliendid aken
 
* Avab kliendi lisamise akna
* Kuvab nimekirjana rakenduse kliente
* Filtreerib nimekirja vastavalt sisestatud infole
* Avab vastava kliendi deailvaate, kui nimekirjas teha topeltklikk
 
Kliendi detailvaate aken
 
* Kuvab kliendi andmeid
* Muudab kliendi andmeid
* Teostab kliendi lisamist
* Viib rentimiste aknasse antud kliendi andmetega
 
Rentimiste aken
 
* Avab rendi/broneeringu lisamise akna
* Kuvab nimekirjana rakenduse rente/broneeringuid
* Filtreerib nimekirja vastavalt sisestatud infole
* Avab vastava rendi/broneeringu detailvaate, kui nimekirjas teha topeltklikk
 
Rendi detailvaate aken
 
* Kuvab rendi/broneeringu kliendi ning sõiduki andmeid
* Lisab rendi/broneeringu kliendi ning sõiduki andmeid
* Teostab rentimise/broneerimise kinnitamist
* Rentimise puhul teostab sõiduki olukorra hinnnangu sisestamist
* Teostab rentimise/broneerimise tühistamist ja tagastamist
 
=Logi=
 
'''30. jaanuar'''
*Lõpptoote üleslaadimine
 
'''19. jaanuar'''
*Prototüübi üleslaadimine
 
 
'''4. jaanuar'''
*Ajapuuduse tõttu lahkus meeskonnast Ahti Jõgi
 
'''29. november'''
*Ajapuuduse tõttu lahkus meeskonnast Andres Kaljo
 
'''12-13. november'''
*Retsensiooni koostamine Google Docs abil.
 
'''8-9. november'''
*Arutelud tööjaotuse osas prototüübi jaoks.
 
'''29. oktoober'''
*Projekti analüüsi teostamine (rakenduse ja selle funktsionaalsuse kirjeldus)
 
'''23. oktoober'''
*Meeskonna nime valik ja wiki lehe loomine
*TFSi projekti loomine ning kasutajate liitmine projektiga
*Esialgse idee kirjeldus
 
'''19. oktoober'''
*Meeskonna kohtumine ning erinevate ideede kaalumine
*Lõpliku teostatava projekti valik
 
'''7. oktoober'''
*Meeskonna moodustamine
*Esialgsete ideede väljapakkumine ning arutelud võimalike teostuste üle

Latest revision as of 15:13, 30 January 2015

Meeskond

Meeskonna liikmed:

  • Hardi Antsov

Idee

Autorendi tarkvara EasyRent

Meeskonna eesmärgiks on luua autorendi teenust pakkuvale firmale põhitegevust toetav tarkvara. Tarkvara eesmärk on hallata sõidukite rentimist.

Rakenduse loomiseks kasutatakse Windows Presentation Foundation'it ning Model-View-ViewModel arendusmustrit.

Rakenduse skoop

Rakendus on mõeldud ainult renditeenuse pakkumise toetamiseks. Skoopi kuulub ka ettevõtte klientide üle arve pidamine.

Rakenduse skoobist on väljas järgmised funktsionaalsused:

  • sõidukite üle raamatupidamise jaoks vajaliku täpsusega arvepidamine, sealhulgas kõik sõidukite remondiga, kindlustamisega ning muu igapäevase haldamisega seotu;
  • klientidele arvete väljastamine.

Mõlemad toodud funktsioonid tuleb ettevõttel lahendada eraldiseisva raamatupidamise tarkvaraga.

Kuna klientidele arvete väljastamise aluseks on EasyRent'ist pärit andmed, siis reaalses maailmas oleks rakenduse üheks järgmiseks arendusetapiks selle liidestamine raamatupidamise tarkvaraga.

Rollid

Rakenduse kasutajatele omistatakse rollid. Rollid määravad kasutajale lubatud tegevused. Ühel kasutajal võib olla mitu rolli. Rakendusele on ligipääs ka autentimata kasutajatel, neil ei ole seega ka rolle.

Rakenduses on kasutusel järgmised rollid:

  • laenutaja - sisaldab endas kliendi teenindamiseks vajalikke tegevusi;
  • nice2have and very optional klient - autenditud klient, saab vaadata pakkumises olevad sõidukeid, teha broneerimisi, muuta mittevõõrandamatuid andmeid;
  • sõiduki sisestaja/muutja - sisaldab endas privileege operatsioonideks sõidukiga; reaalne täitja sõltub ettevõtte suurusest;
  • sõidukile pildi lisaja/muutja - reaalses elus on mõistlik panna pildibaasi up-to-date hoidmine klienditeenindajale;
  • kliendi muutja - kliendi võõrandamatute andmete muutmiseks, samuti kliendi arhiveerimiseks, roll omistatakse kogenud rakenduse kasutajale, kelle eksimisoht on väike (power-user);
  • raamatupidaja - ainult selle rolli omaja saab määrata sõiduki rentimise hinna piirid, laenutaja peab püsima ette seatud piirides, ärilises mõttes kriitilise tähtsusega roll;
  • vaatleja - igale kasutajale vaikimisi omistatav roll, reaalses elus peaks vastama autentimata laenutuse kliendile, selle rolli omaja saab ainult vaadata pakkumises olevaid sõidukeid;
  • kasutajate haldaja - roll võimaldab kasutajaid luua, omistada neile rolle ning nullida parooli.

Funktsionaalsus

Alljärgnevas esituses ei ole funktsionaalsust jagatud MoSCoW järgi. Esitluses on funktsionaalsus toodud äriloogikat silmas pidades. Kirjeldatud funktsionaalsuses on eraldi märgitud, kui silmas on peetud mitte kohustuslikku osa (nice2have).

Sõiduki haldamine

Sõidukil on järgmised omadused: registreerimise number, VIN kood, mudel, mark, värvus, väljalaskmise aasta, läbisõit, sõiduki olukorra iseloomustus, pildid sõidukist.

Olemiga sõiduk on võimalik sooritada järgmisi tegevusi:

  • sõiduki loomine - uue sõiduki andmebaasi sisestamine;
  • sõiduki mahakandmine (arhiveerimine) - sõidukit kustutada ei saa, mahakandmine kaotab ta välja renditavate valikust;
  • sõiduki muutmine - muuta ei saa võõrandamatuid andmeid, sellisteks on registrinumber (tegeleme ainult Eestis registreeritud sõidukitega) ja VIN kood;
  • piltide haldamine - lisamine ja kustutamine, ajalugu ei ole vaja säilitada;
  • rendihinna haldamine - rendihind hoitakse rakenduses vahemikuna, selline lähenemine võimaldab jätta klienditeenindajale väikese kaalutlusõiguse.

Kliendi haldamine

Kliendil on järgmised omadused: registri kood, registri koodi allikas, eesnimi, perenimi/ettevõtte nimi, sünniaeg, sugu, elukoht (ühe väljana), e-post, telefon, kommentaar vaba tekstina.

Olemiga klient on võimalik sooritada järgmisi tegevusi:

  • loomine - uue kliendi andmebaasi sisestamine.
  • muutmine - muuta ei saa võõrandamatuid andmeid, sellisteks andmeteks on registrikoodi ja koodi allika paar, koodi allikaks on näiteks Eesti isikukood, Läti isikukood, Eesti äriregistri kood, RKOARR reg nr, ...
  • klienti kustutada ei saa, samuti ei ole vaja teda arhiveerida, eeldame, et inimesed rakenduse skoobis ei sure
  • nice2have krediidireiting, keeruline on sisuline defineerimine ...

Rentimiste haldus

Rentimise haldus ongi rakenduse põhiline äripoolt toetav funktsionaalsus.

Sõiduki broneerimine

Sõiduki broneerimine on konkreetse kliendi poolt konkreetseks ajaks konkreetse sõiduki kohta esitatud rendi soov.

Kui sama klient soovib broneerida kattuvaks ajaks mitut sõidukit, siis kuvab rakendus selle kohta teate.

Rakendus tuletab kasutajale meelde broneeringu tähtaja möödumistest. Selle eesmärk on, et klienditeenindaja saaks enne broneeringu lõplikku tühistamist potentsiaalse kliendiga üle suhelda.

Broneeringu tühistamine

Klient loobub broneeringust omal initsiatiivil. Sõiduk vabaneb teisteks rentimisteks.

Sõiduki väljastamine

Tähistab sõiduki reaalset välja rentimist ehk sõiduk antakse kliendile üle. Sõiduki kliendile üleandmise käigus vaadatakse koos kliendiga sõiduk üle ning fikseeritakse sõiduki olukord. Sõiduki olukorra hulka kuuluvad sõiduki läbisõit, küte, sõiduki üldine olukord.

Sõiduki tagastamine

Sõiduk toodi firmasse tagasi. See tegevus tähendab sõiduki vabanemist teisteks rentimisteks. Sõiduki tagastamise osaks on sõiduki seisukorra hindamine. Sõiduki olukorra hulka kuuluvad sõiduki läbisõit, küte, sõiduki üldine olukord.

Aruanded

Rakendus võimaldab tegevusest ning hetkeolukorrast ülevaate saamiseks aruannete koostamist.

Vajalikud on järgmised aruanded:

  • tähtajaks tagastamata sõidukite loetelu
    • nice2have rakendus saadab ise automaatselt igal öösel klientidele meeldetuletusi tähtaja möödumise kohta kliendi e-posti aadressile
  • nice2have hinnang kliendile – eesmärk on kliente senise käitumise põhjal profileerida ning halva reitinguga klientidele sõidukit mitte rentida, igale tegevusele hinnang (näiteks bronni mitterealiseerimine on negatiivne), nende summa,
  • nõutavuse top – sõidukite (ka markide?) kaupa

Kasutajate haldamine

Rakenduse privileegidega piiratud osa kasutamiseks on vajalik autentimine ja autoriseerimine. Selleks on rakenduses kasutajad. Kasutajate autentimise toimub parooli abil.

Olem kasutaja omadused on kasutajanimi, nimi, kommentaar ja talle omistatud rollid. Siin on mindud teadlikult lihtsuse teed.

Kasutajate haldamine sisaldab endas:

  • kasutaja loomist;
  • kasutajale rollide omistamist ja rollide eemaldamist;
  • kasutaja rakendusest eemaldamist - sisemiselt märgitakse ta mitteaktiivseks, kasutajaid päriselt kustutada ei saa.


(nice2have and very optional) Väga piiratud funktsionaalsusega veebirakendus klientidele

  • võimaldab autenditud kliendil veebis vaadata pakkumises sõidukeid, teha broneerimist.
  • võimaldab vaatlejal veebis vaadata pakkumises sõidukeid.


Prototüüp

Prototüübi leiab siit. On kasutatud MVVM arendusmustrit, kus EasyRent.View projekt hõlmab View-d ning ViewModel-it, Model koosneb kahest eraldi EasyRent.BLL ja EasyRent.Models projektist. Kuna meeskonna koosseisus toimusid muudatused, siis funktsionaalsust võrreldes planeerituga on vähendatud - nt rollid on täiesti ära kaotatud.

Kasutamine:

  • Loo VSi uus lokaalne andmebaas nimega EasyRentDB
  • Kasuta solutioni "Andmebaas" kaustas olevat EasyRentDB.sql tabelite loomiseks
  • Kui probleeme peaks tekkima Entity Framework-iga, siis tee NuGet Packages alt reinstall
  • Andmebaasi Kasutaja tabelisse lisa manuaalselt üks kasutaja (sisselogimiseks)
  • Lisa rakenduses sõidukeid, kliente ning teosta rentimist/broneerimist
  • Listide kohta: topeltklikk valikul avab detailvaate ning rentimisel kliendi või sõiduki lisamine käib samuti topeltkliki abil avanevas listis.

Küsimuste korral: hardi.antsov@itcollege.ee

Lõpptoode

Lõpptoote leiab siit.


Lahenduse kirjeldus

Rakendus loodi Visual Studio 2013 arenduskeskkonda kasutades. Arendusprotsessis kasutati koodihoidlana TFS-i. Tehnoloogiana kasutati Windows Presentation Foundation'it ning Model-View-ViewModel arendusmustrit. Kasutati database first lähenemist ning andmebaasiga suhtluseks ja rakenduses kasutavate mudelite loomiseks Entity Framework-i.

Rakendus on loodud rentimist teostavale töötajale abiks. Põhifunktsionaalsuse annavad rakendusele kolm kogumit objektidest Sõiduk, Klient ning Rentimine. Neid kuvatakse listidena eraldi akendes ning läbi nende toimub liikumine vastava objekti detailseid andmeid kuvavale aknale. Rakendus lubab avada korraga mitmeid aknaid, mis peaks koos listidele võimalike filtritega tagama mugava ülevaate toimuvast ning tegema rentimise teostamise ja haldamise lihtsaks.

Liikmete panused

Hardi Antsov: 100%

Loobunud liikmed:

Ahti Jõgi: ~40% (andmebaasi mudel, analüüs)

Andres Kaljo: ~10%

Kasutusjuhend

  • Loo VSi uus lokaalne andmebaas nimega EasyRentDB
  • Kasuta solutioni "Andmebaas" kaustas olevat EasyRentDB.sql tabelite loomiseks
  • Kui probleeme peaks tekkima Entity Framework-iga, siis tee NuGet Packages alt reinstall
  • Andmebaasi Kasutaja tabelisse lisa manuaalselt üks kasutaja (sisselogimiseks)

Peaaken:

  • Avaneb pärast sisselogimist, siit toimub kolme erineva listiakna avamine
  • Avab Sõidukite, Klientide ja Rentimiste aknaid
  • Sulgeb kogu rakenduse

Sõidukid aken

  • Avab sõiduki lisamise akna
  • Kuvab nimekirjana rakenduse sõidukeid
  • Filtreerib nimekirja vastavalt sisestatud infole
  • Avab vastava sõiduki detailvaate, kui nimekirjas teha topeltklikk

Sõiduki detailvaate aken

  • Kuvab sõiduki andmeid
  • Muudab sõiduki andmeid
  • Teostab sõiduki lisamist
  • Lisab/avab sõiduki pilti
  • Viib rentimise aknasse antud sõiduki andmetega

Kliendid aken

  • Avab kliendi lisamise akna
  • Kuvab nimekirjana rakenduse kliente
  • Filtreerib nimekirja vastavalt sisestatud infole
  • Avab vastava kliendi deailvaate, kui nimekirjas teha topeltklikk

Kliendi detailvaate aken

  • Kuvab kliendi andmeid
  • Muudab kliendi andmeid
  • Teostab kliendi lisamist
  • Viib rentimiste aknasse antud kliendi andmetega

Rentimiste aken

  • Avab rendi/broneeringu lisamise akna
  • Kuvab nimekirjana rakenduse rente/broneeringuid
  • Filtreerib nimekirja vastavalt sisestatud infole
  • Avab vastava rendi/broneeringu detailvaate, kui nimekirjas teha topeltklikk

Rendi detailvaate aken

  • Kuvab rendi/broneeringu kliendi ning sõiduki andmeid
  • Lisab rendi/broneeringu kliendi ning sõiduki andmeid
  • Teostab rentimise/broneerimise kinnitamist
  • Rentimise puhul teostab sõiduki olukorra hinnnangu sisestamist
  • Teostab rentimise/broneerimise tühistamist ja tagastamist

Logi

30. jaanuar

  • Lõpptoote üleslaadimine

19. jaanuar

  • Prototüübi üleslaadimine


4. jaanuar

  • Ajapuuduse tõttu lahkus meeskonnast Ahti Jõgi

29. november

  • Ajapuuduse tõttu lahkus meeskonnast Andres Kaljo

12-13. november

  • Retsensiooni koostamine Google Docs abil.

8-9. november

  • Arutelud tööjaotuse osas prototüübi jaoks.

29. oktoober

  • Projekti analüüsi teostamine (rakenduse ja selle funktsionaalsuse kirjeldus)

23. oktoober

  • Meeskonna nime valik ja wiki lehe loomine
  • TFSi projekti loomine ning kasutajate liitmine projektiga
  • Esialgse idee kirjeldus

19. oktoober

  • Meeskonna kohtumine ning erinevate ideede kaalumine
  • Lõpliku teostatava projekti valik

7. oktoober

  • Meeskonna moodustamine
  • Esialgsete ideede väljapakkumine ning arutelud võimalike teostuste üle