EasyDesk: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Mputsepp (talk | contribs)
Mputsepp (talk | contribs)
 
(10 intermediate revisions by the same user not shown)
Line 11: Line 11:
* Kasutajaliides: Windows Presentation Foundation
* Kasutajaliides: Windows Presentation Foundation


== Rakenduse sisu ==
== Rakenduse analüüs ==


Rakenduse ''Must have'' funktsionaalsused:
'''Idee ja eesmärk'''
* Konto registreerimise ja sisselogimise võimalus;
* Pakutavate teenuste sisestamine, muutmine ja kustutamine;
* Tellimuste sisestamine, muutmine ja kustutamine;
* Klientide ja nende kontaktandmete sisestamine, muutmine ja kustutamine;
* Töötajate sisestamine, muutmine ja kustutamine;
* Tellimuste sidumine klientide (kes teenust tarbib) ja töötajatega (kes teenust pakub);
* Aruannete loomine – tehtud tellimused teatud perioodi lõikes, tehtud tellimused kliendi lõikes jne;
* Andmed salvestatakse andmebaasi;


Rakenduse ''Nice to have'' funktsionaalsused:
EasyDesk rakendusega saab kasutaja (ettevõte) hallata igapäevaselt oma kliente ja tellimusi. Idee loomisel on silmas peetud eelkõige ettevõtteid, kes pakuvad teenuseid (st ei müü kaupu). Projekti eesmärgiks on see, et ettevõttel oleks üks koht, kus ta saaks ülevaate oma klientidest (kes ja kui palju tema teenuseid kasutab), teenustest (milliseid teenuseid ta pakub) ja tellimustest. Rakendus võimaldab sisestada teenuseid, mida ettevõte pakub, sisestada tellimusi, sisestada kliente koos kontaktandmetega ning sisestada töötajaid koos kontaktandmetega.
* Kalendripõhine broneerimissüsteem – tellimusi sisestatakse vastavalt vabadele aegadele, ehk rakendus pakub ka broneerimise võimalust
 
* Klientidele saadetakse pakkumisi lähtuvalt tema teenuse kasutamisest
'''Rakenduse tehniline külg'''
* Klientidele saadetakse sünnipäeval õnnitlusmeil.
 
* Iga kliendiprofiili juures oleks kommenteerimisvõimalus.
Rakendus arendatakse Microsoft Visual Studiot kasutades. Rakenduse kood on kirjutatud C# programmeerimiskeeles. Kasutajaliidesena kasutatakse WPF tehnoloogiat, ehk rakendus luuakse töölauarakendusena. Arendusmustrina kasutatakse Model-View-ViewModel (MVVM) mudelit. Rakendusel on SQL andmebaas. Arvatavasti arendatakse rakendus kasutades lokaalset andmebaasi. Rakendus koosneb mitmest vaatest.
* Rakendusel on olemas veebivorm, mille kaudu saavad kliendid broneerida teenuse kasutamist. Antud vormi saaks iga ettevõte oma veebilehele lisada.
 
* Aruannete salvestamine (pdf, csv vms)
'''''Must have'' funktsionaalsused'''
 
Rakenduse funktsionaalsused, mis käesoleva kursuse käigus peaksid kindlasti valmis saama (Must have):
    * Konto registreerimise ja sisselogimise võimalus;
    * Pakutavate teenuste sisestamine, muutmine ja kustutamine;
    * Tellimuste sisestamine, muutmine ja kustutamine;
    * Klientide ja nende kontaktandmete sisestamine, muutmine ja kustutamine;
    * Töötajate sisestamine, muutmine ja kustutamine;
    * Tellimuste sidumine klientide (kes teenust tarbib) ja töötajatega (kes teenust pakub);
    * Aruannete loomine – tehtud tellimused teatud perioodi lõikes, tehtud tellimused kliendi lõikes jne;
    * Andmed salvestatakse andmebaasi;
    * Kõikide andmebaasi tabelite muudatused salvestatakse logifaili.
 
'''Vaated'''
 
# '''Avakuva''' – rakenduse töölehakkamisel kuvatakse avavaade, mis sisaldab kahte nuppu. Üks nupp viib sisselogimislehele (vt punkt 2), teine kasutajaks registreerimise lehele (vt punkt 3).
# '''Sisselogimise leht''' – kasutaja, kellel on konto, saab antud lehel rakendusse sisse logida, sisestades kastuajanime ja parooli. Vaade koosneb tekstiväljast, parooliväljast ja nupust. Väljad peavad olema valideeritud. Kui mõni väli jääb tühjaks, või on vale, siis kuvatakse väljade all veateadet. Kui sisselogimine õnnestub, viiakse kasutaja tema konto pealehele (vt punkt 4).
# '''Registreerimisleht''' – siin saab ettevõte endale konto luua. Registreerimiseks peab sisestama kasutajanime, ettevõtte nime, parooli kaks korda. Väljad on valideeritud, veateadet kuvatakse järgmistel juhtudel: kui kasutajanimi ja/või ettevõte nimi on juba kasutusel, kui parool on liiga lühike, kui sisestatud paroolid ei ühti. Registreerimiseks vajutatakse nuppu REGISTREERI. Kui registreerimine õnnestub kuvatakse teadet „Registreerimine õnnestus“ ning nupu tekst muutub „SISENE“, millele vajutades viiakse sisselogimise lehele (vt punkt 2).
# '''Ettevõtte pealeht (põhivaade)''' – rakenduse põhivaatelehe võib jagada kolme ossa:
## '''Päis''' – päises kuvatakse menüüd, ettevõtte nime, SEADED nuppu ja LOGI VÄLJA nuppu. Menüü koosneb järgnevatest elementidest: pealeht, teenused, tellimused, kliendid, töötajad, aruanded. Hetkel kuvatava lehe menüüelement on teist värvi kui teised menüüelemendid, mis viitab sellele, mis lehel ollakse. SEADED nupu vajutamisel kuvatakse konto seaded (vt punkt 5), LOGI VÄLJA nupp sulgeb rakenduse.
## '''Sisu''' – vahetub vastavalt menüüs valitud elemendile. Ettevõtte pealehe sisu võib jagada kolme ossa: Vasakul on kiirviited (nupud) peamistele tegevustele, mida kasutaja saab teha: lisada uue teenuse, lisada uue tellimuse, lisada uue kliendi, lisada uue töötaja, vaata aruandeid. Keskmises osas kuvatakse vastava päeva tellimusi (Nice to have funktsionaalsusega oleks selle asemel kalendrivaade ning võimalus tellimusi broneerida), paremas osas kuvatakse huvipakkuvamat statistikat (nt kokku teenuseid, kokku kliente jms).
## '''Jalus''' – Rakenduse nimi ja muu info, mis puudutab rakendust ennast.
# '''Seaded leht''' – seadete all on võimalik kasutajal muuta parooli ning muuta ettevõtte nime.
# '''Teenused leht (põhivaate leht)''' – kuvatakse kõiki sisestatud teenuseid, vasakul pool asub nimekiri kõikidest teenustest, teenuse peal klikates avaneb paremal pool informatsioon teenuse kohta. Info, mida kuvatakse: teenuse nimetus, teenuse staatus (aktiivne – pakutakse aktiivselt, arhiveeritud – ei pakuta aktiivselt), kestus, hind, lisainfo. Lisaks on lehel nupud LISA UUS (viib uue teenuse lisamise aknasse, punkt 7), MUUDA (viib teenuse muutmise aknasse, punkt 7), KUSTUTA (kustutab teenuse).
# '''Uue teenuse lisamine''' – pop-up aken, kasutaja saab lisada uue teenuse. Väljad on valideeritud. Kui teenuse nimetus  ja/või kestus on tühi, siis kuvab veateade vastavat infot. Vormi all on nupp LISA. Edukal lisamisel kuvatakse test „Uus teenus lisatud“, nupu tekst muutub LISA UUS, sellele vajutades tühjendakse väljad ja kasutaja saab uue teenuse lisada.
# '''Tellimused leht (põhivaate leht)''' - kuvatakse kõiki sisestatud tellimused, vasakul pool asub nimekiri kõikidest tellimustest, tellimuse peal klikates avaneb paremal pool informatsioon tellimuse kohta. Info, mida kuvatakse: kuupäev (tellimuse täitmise), tellimuse staatus (täidetud, täitmisel, tühistatud), teenus (viide pakutavale teenusele), klient (viide teenust tellinud kliendile), töötaja (viide teenust pakkunud töötajale), lisainfo. Tellimuste nimekirja on võimalik sorteerida. Lisaks on lehel nupud LISA UUS (viib uue tellimuse lisamise aknasse, punkt 9), MUUDA (viib tellimuse muutmise aknasse, punkt ), KUSTUTA (kustutab tellimuse).
# '''Uue tellimuse lisamine''' - pop-up aken, kasutaja saab lisada uue tellimuse. Väljad on valideeritud. Kui tellimuse kuupäev ja/või teenus on tühi, siis kuvab veateade vastavat infot. Vormi all on nupp LISA. Edukal lisamisel kuvatakse tekst „Uus tellimus lisatud“, nupu tekst muutub LISA UUS, sellele vajutades tühjendakse väljad ja kasutaja saab uue tellimuse lisada.
# '''Kliendid leht (põhivaate leht)''' - kuvatakse kõiki sisestatud kliente, vasakul pool asub nimekiri kõikidest klientides, kliendi peal klikates avaneb paremal pool informatsioon kliendi kohta. Info, mida kuvatakse: eesnimi, perenimi, sünniaeg, aadress e-post, telefon, lisainfo. Klientide nimekirja on võimalik sorteerida. Lisaks on lehel nupud LISA UUS (viib uue kliendi lisamise aknasse, punkt 11), MUUDA (viib kliendi muutmise aknasse, punkt ), KUSTUTA (kustutab kliendi).
# '''Uue kliendi lisamine''' - pop-up aken, kasutaja saab lisada uue kliendi. Väljad on valideeritud. Kui kliendi eesnimi ja/või perenimi on tühi, siis kuvab veateade vastavat infot. Vormi all on nupp LISA. Edukal lisamisel kuvatakse tekst „Uus klient lisatud“, nupu tekst muutub LISA UUS, sellele vajutades tühjendakse väljad ja kasutaja saab uue kliendi lisada.
# '''Töötajad leht (põhivaate leht)'''- kuvatakse kõiki sisestatud töötajad, vasakul pool asub nimekiri kõikidest töötajatest, töötaja peal klikates avaneb paremal pool informatsioon töötaja kohta. Info, mida kuvatakse: eesnimi, perenimi, aadress, meili-aadress, lisainfo. Töötajate  nimekirja on võimalik sorteerida. Lisaks on lehel nupud LISA UUS (viib uue töötaja lisamise aknasse, punkt 13), MUUDA (viib töötaja muutmise aknasse, punkt 13), KUSTUTA (kustutab töötaja).
# '''Uue töötaja lisamine''' - pop-up aken, kasutaja saab lisada uue töötaja. Väljad on valideeritud. Kui töötaja eesnimi ja/või perenimi on tühi, siis kuvab veateade vastavat infot. Vormi all on nupp LISA. Edukal lisamisel kuvatakse tekst „Uus töötaja lisatud“, nupu tekst muutub LISA UUS, sellele vajutades tühjendakse väljad ja kasutaja saab uue töötaja lisada.
# '''Aruanded leht (põhivaate leht)''' – kasutajal on võimalik luua aruandeid ja kuvada neid ekraanil. Lehe võib jagada kolme ossa, ülemises osas saab kasutaja erinevate parameetritega määrata, millist aruannet ta näha soovib (nt kuva kõik teenused, kuva tellimused klientide kaupa vms). Kui kasutaja on valikud teinud vajutab ta nupule LOO ARUANNE, millega lehe keskmises osas kuvatakse aruanne. Lehe alumises osas asuvad lisafunktsionaalsuste nupud (nt lae alla).
 
'''Andmebaasimudel'''
 
[[File:sql_data.jpg|300px]]
 
'''''Nice to have'' funktsionaalsused'''
 
Rakenduse funktsionaalsused, mis aja ja teadmiste olemasolul võivad realiseeruda kuid ei pruugi (Nice to have):
    * Kalendripõhine broneerimissüsteem – tellimusi sisestatakse vastavalt vabadele aegadele, ehk rakendus pakub ka broneerimise võimalust
    * Klientidele saadetakse pakkumisi lähtuvalt tema teenuse kasutamisest
    * Klientidele saadetakse sünnipäeval õnnitlusmeil.
    * Iga kliendi juures oleks kommenteerimisvõimalus.
    * Rakendusel on olemas veebivorm, mille kaudu saavad kliendid broneerida teenuse kasutamist. Antud vormi saaks iga ettevõte oma veebilehele lisada.
    * Aruannete salvestamine (pdf, csv vms kujul)


== Workload ==
== Workload ==
=== 28.01.2017 ===
Lõpptoode valmis
=== 18.12.2016 ===
Prototüüp valmis
=== 13.11.2016 ===
Retsensioon Agraarbeib meeskonna analüüsile lisatud.
=== 01.11.2016 ===
Analüüs valmis. Analüüs lisatud viki lehele.
=== 22.10.2016 ===
TFSi konto loodud ja õppejõule kutse saadetud


=== 18.10.2016 ===
=== 18.10.2016 ===

Latest revision as of 18:58, 28 January 2017

Meeskond ja rollid

  • Marju Pütsepp - projektijuht, arendaja...teen kõike, mida vaja

Idee

Klientide ja tellimuste haldamise rakendus teenindusettevõtetele.

Projekti TFS: https://marjup.visualstudio.com/EasyDesk

Tehnoloogia

  • Kasutajaliides: Windows Presentation Foundation

Rakenduse analüüs

Idee ja eesmärk

EasyDesk rakendusega saab kasutaja (ettevõte) hallata igapäevaselt oma kliente ja tellimusi. Idee loomisel on silmas peetud eelkõige ettevõtteid, kes pakuvad teenuseid (st ei müü kaupu). Projekti eesmärgiks on see, et ettevõttel oleks üks koht, kus ta saaks ülevaate oma klientidest (kes ja kui palju tema teenuseid kasutab), teenustest (milliseid teenuseid ta pakub) ja tellimustest. Rakendus võimaldab sisestada teenuseid, mida ettevõte pakub, sisestada tellimusi, sisestada kliente koos kontaktandmetega ning sisestada töötajaid koos kontaktandmetega.

Rakenduse tehniline külg

Rakendus arendatakse Microsoft Visual Studiot kasutades. Rakenduse kood on kirjutatud C# programmeerimiskeeles. Kasutajaliidesena kasutatakse WPF tehnoloogiat, ehk rakendus luuakse töölauarakendusena. Arendusmustrina kasutatakse Model-View-ViewModel (MVVM) mudelit. Rakendusel on SQL andmebaas. Arvatavasti arendatakse rakendus kasutades lokaalset andmebaasi. Rakendus koosneb mitmest vaatest.

Must have funktsionaalsused

Rakenduse funktsionaalsused, mis käesoleva kursuse käigus peaksid kindlasti valmis saama (Must have):

   * Konto registreerimise ja sisselogimise võimalus;
   * Pakutavate teenuste sisestamine, muutmine ja kustutamine;
   * Tellimuste sisestamine, muutmine ja kustutamine;
   * Klientide ja nende kontaktandmete sisestamine, muutmine ja kustutamine;
   * Töötajate sisestamine, muutmine ja kustutamine;
   * Tellimuste sidumine klientide (kes teenust tarbib) ja töötajatega (kes teenust pakub);
   * Aruannete loomine – tehtud tellimused teatud perioodi lõikes, tehtud tellimused kliendi lõikes jne;
   * Andmed salvestatakse andmebaasi;
   * Kõikide andmebaasi tabelite muudatused salvestatakse logifaili.

Vaated

  1. Avakuva – rakenduse töölehakkamisel kuvatakse avavaade, mis sisaldab kahte nuppu. Üks nupp viib sisselogimislehele (vt punkt 2), teine kasutajaks registreerimise lehele (vt punkt 3).
  2. Sisselogimise leht – kasutaja, kellel on konto, saab antud lehel rakendusse sisse logida, sisestades kastuajanime ja parooli. Vaade koosneb tekstiväljast, parooliväljast ja nupust. Väljad peavad olema valideeritud. Kui mõni väli jääb tühjaks, või on vale, siis kuvatakse väljade all veateadet. Kui sisselogimine õnnestub, viiakse kasutaja tema konto pealehele (vt punkt 4).
  3. Registreerimisleht – siin saab ettevõte endale konto luua. Registreerimiseks peab sisestama kasutajanime, ettevõtte nime, parooli kaks korda. Väljad on valideeritud, veateadet kuvatakse järgmistel juhtudel: kui kasutajanimi ja/või ettevõte nimi on juba kasutusel, kui parool on liiga lühike, kui sisestatud paroolid ei ühti. Registreerimiseks vajutatakse nuppu REGISTREERI. Kui registreerimine õnnestub kuvatakse teadet „Registreerimine õnnestus“ ning nupu tekst muutub „SISENE“, millele vajutades viiakse sisselogimise lehele (vt punkt 2).
  4. Ettevõtte pealeht (põhivaade) – rakenduse põhivaatelehe võib jagada kolme ossa:
    1. Päis – päises kuvatakse menüüd, ettevõtte nime, SEADED nuppu ja LOGI VÄLJA nuppu. Menüü koosneb järgnevatest elementidest: pealeht, teenused, tellimused, kliendid, töötajad, aruanded. Hetkel kuvatava lehe menüüelement on teist värvi kui teised menüüelemendid, mis viitab sellele, mis lehel ollakse. SEADED nupu vajutamisel kuvatakse konto seaded (vt punkt 5), LOGI VÄLJA nupp sulgeb rakenduse.
    2. Sisu – vahetub vastavalt menüüs valitud elemendile. Ettevõtte pealehe sisu võib jagada kolme ossa: Vasakul on kiirviited (nupud) peamistele tegevustele, mida kasutaja saab teha: lisada uue teenuse, lisada uue tellimuse, lisada uue kliendi, lisada uue töötaja, vaata aruandeid. Keskmises osas kuvatakse vastava päeva tellimusi (Nice to have funktsionaalsusega oleks selle asemel kalendrivaade ning võimalus tellimusi broneerida), paremas osas kuvatakse huvipakkuvamat statistikat (nt kokku teenuseid, kokku kliente jms).
    3. Jalus – Rakenduse nimi ja muu info, mis puudutab rakendust ennast.
  5. Seaded leht – seadete all on võimalik kasutajal muuta parooli ning muuta ettevõtte nime.
  6. Teenused leht (põhivaate leht) – kuvatakse kõiki sisestatud teenuseid, vasakul pool asub nimekiri kõikidest teenustest, teenuse peal klikates avaneb paremal pool informatsioon teenuse kohta. Info, mida kuvatakse: teenuse nimetus, teenuse staatus (aktiivne – pakutakse aktiivselt, arhiveeritud – ei pakuta aktiivselt), kestus, hind, lisainfo. Lisaks on lehel nupud LISA UUS (viib uue teenuse lisamise aknasse, punkt 7), MUUDA (viib teenuse muutmise aknasse, punkt 7), KUSTUTA (kustutab teenuse).
  7. Uue teenuse lisamine – pop-up aken, kasutaja saab lisada uue teenuse. Väljad on valideeritud. Kui teenuse nimetus ja/või kestus on tühi, siis kuvab veateade vastavat infot. Vormi all on nupp LISA. Edukal lisamisel kuvatakse test „Uus teenus lisatud“, nupu tekst muutub LISA UUS, sellele vajutades tühjendakse väljad ja kasutaja saab uue teenuse lisada.
  8. Tellimused leht (põhivaate leht) - kuvatakse kõiki sisestatud tellimused, vasakul pool asub nimekiri kõikidest tellimustest, tellimuse peal klikates avaneb paremal pool informatsioon tellimuse kohta. Info, mida kuvatakse: kuupäev (tellimuse täitmise), tellimuse staatus (täidetud, täitmisel, tühistatud), teenus (viide pakutavale teenusele), klient (viide teenust tellinud kliendile), töötaja (viide teenust pakkunud töötajale), lisainfo. Tellimuste nimekirja on võimalik sorteerida. Lisaks on lehel nupud LISA UUS (viib uue tellimuse lisamise aknasse, punkt 9), MUUDA (viib tellimuse muutmise aknasse, punkt ), KUSTUTA (kustutab tellimuse).
  9. Uue tellimuse lisamine - pop-up aken, kasutaja saab lisada uue tellimuse. Väljad on valideeritud. Kui tellimuse kuupäev ja/või teenus on tühi, siis kuvab veateade vastavat infot. Vormi all on nupp LISA. Edukal lisamisel kuvatakse tekst „Uus tellimus lisatud“, nupu tekst muutub LISA UUS, sellele vajutades tühjendakse väljad ja kasutaja saab uue tellimuse lisada.
  10. Kliendid leht (põhivaate leht) - kuvatakse kõiki sisestatud kliente, vasakul pool asub nimekiri kõikidest klientides, kliendi peal klikates avaneb paremal pool informatsioon kliendi kohta. Info, mida kuvatakse: eesnimi, perenimi, sünniaeg, aadress e-post, telefon, lisainfo. Klientide nimekirja on võimalik sorteerida. Lisaks on lehel nupud LISA UUS (viib uue kliendi lisamise aknasse, punkt 11), MUUDA (viib kliendi muutmise aknasse, punkt ), KUSTUTA (kustutab kliendi).
  11. Uue kliendi lisamine - pop-up aken, kasutaja saab lisada uue kliendi. Väljad on valideeritud. Kui kliendi eesnimi ja/või perenimi on tühi, siis kuvab veateade vastavat infot. Vormi all on nupp LISA. Edukal lisamisel kuvatakse tekst „Uus klient lisatud“, nupu tekst muutub LISA UUS, sellele vajutades tühjendakse väljad ja kasutaja saab uue kliendi lisada.
  12. Töötajad leht (põhivaate leht)- kuvatakse kõiki sisestatud töötajad, vasakul pool asub nimekiri kõikidest töötajatest, töötaja peal klikates avaneb paremal pool informatsioon töötaja kohta. Info, mida kuvatakse: eesnimi, perenimi, aadress, meili-aadress, lisainfo. Töötajate nimekirja on võimalik sorteerida. Lisaks on lehel nupud LISA UUS (viib uue töötaja lisamise aknasse, punkt 13), MUUDA (viib töötaja muutmise aknasse, punkt 13), KUSTUTA (kustutab töötaja).
  13. Uue töötaja lisamine - pop-up aken, kasutaja saab lisada uue töötaja. Väljad on valideeritud. Kui töötaja eesnimi ja/või perenimi on tühi, siis kuvab veateade vastavat infot. Vormi all on nupp LISA. Edukal lisamisel kuvatakse tekst „Uus töötaja lisatud“, nupu tekst muutub LISA UUS, sellele vajutades tühjendakse väljad ja kasutaja saab uue töötaja lisada.
  14. Aruanded leht (põhivaate leht) – kasutajal on võimalik luua aruandeid ja kuvada neid ekraanil. Lehe võib jagada kolme ossa, ülemises osas saab kasutaja erinevate parameetritega määrata, millist aruannet ta näha soovib (nt kuva kõik teenused, kuva tellimused klientide kaupa vms). Kui kasutaja on valikud teinud vajutab ta nupule LOO ARUANNE, millega lehe keskmises osas kuvatakse aruanne. Lehe alumises osas asuvad lisafunktsionaalsuste nupud (nt lae alla).

Andmebaasimudel

Nice to have funktsionaalsused

Rakenduse funktsionaalsused, mis aja ja teadmiste olemasolul võivad realiseeruda kuid ei pruugi (Nice to have):

   * Kalendripõhine broneerimissüsteem – tellimusi sisestatakse vastavalt vabadele aegadele, ehk rakendus pakub ka broneerimise võimalust
   * Klientidele saadetakse pakkumisi lähtuvalt tema teenuse kasutamisest
   * Klientidele saadetakse sünnipäeval õnnitlusmeil.
   * Iga kliendi juures oleks kommenteerimisvõimalus.
   * Rakendusel on olemas veebivorm, mille kaudu saavad kliendid broneerida teenuse kasutamist. Antud vormi saaks iga ettevõte oma veebilehele lisada.
   * Aruannete salvestamine (pdf, csv vms kujul)

Workload

28.01.2017

Lõpptoode valmis

18.12.2016

Prototüüp valmis

13.11.2016

Retsensioon Agraarbeib meeskonna analüüsile lisatud.

01.11.2016

Analüüs valmis. Analüüs lisatud viki lehele.

22.10.2016

TFSi konto loodud ja õppejõule kutse saadetud

18.10.2016

Alustasin analüüsi koostamist

14.10.2016

Idee kirjapanek, viki loomine