Maker

From ICO wiki
Revision as of 11:28, 2 November 2015 by Moovel (talk | contribs) (→‎Andmebaas)
Jump to navigationJump to search

Meeskond

Meeskonna liikmed:

  • Marek Öövel (projektijuht)

Idee

Projekti eesmärgiks on luua WPF rakendus, mis haldaks töötajate tööaja arvestust, nimekirja töötajate vastutuses olevatest seadmetest ja töötajate sertifikaatidest.

Analüüs

Projekti kirjeldus

Tänapäeva töökorraldus on aina enam projektipõhine, kus töötajad võivad ühe kuu jooksul osaleda väga erinevates projektides. Selleks, et juhtidel oleks kergem inimressurssi planeerida ja näha töötajate tööle kulunud aega, kasutatakse paljudes ettevõtetes veel Exceli tabelite põhiseid lahendusi. Samuti on ettevõtetes tihtipeale kasutuses töövahendid, mis on antud kindlate inimeste vastutusse ning teatud ettevõtetes, näiteks elektrialal, on oluline jälgida ka töötajate sertifikaatide olemasolu ja uuendamise vajadust, mis samuti on kirjas kuskil Exceli tabelites. Selline tabelitepõhine haldamine on aga üsna ebamugav juba ainuüksi seetõttu, et andmed on erinevates kohtades ja võivad üleüldise faili majandamisega kaotsi minna.

Minu loodav rakendus võiks olla sellistele ettevõtetele alternatiiviks Exceli kõrval, võimaldades teha kõiki ülevalpool loetud protseduure mugavalt ühes kohas. Rakendus peab võimaldama sisestada töötaja töötunde projekti ja tööülesande põhiselt. Töötaja lisatud töötundide arvestus on lisaks juhtide poolt sisestatud töötajate töötundidele eraldi tabelis, andmaks juhtidele võimaluse võrrelda sisestatud andmeid. Sisestatav projekt ja tööülesande liik on võimalik valida rippmenüüst, tekstikasti lisatakse töötundide arv ja kommentaar. Päeva on võimalik valida otse kalendermenüüst või navigeerides edasi-tagasi nuppudega, mööda kalendermenüüd. Iga kuu lõpus on seejärel võimalik genereerida tabel kuu töötundide kohta päevapõhiselt, mida on võimalik välja printida. Töötajaid, käimasolevaid projekte ja tööülesandeid lisavad ning kustutavad (loogiliselt) süsteemist juhid (administraatorid).

Nimekirja ettevõttes olemasolevatest seadmetest ja tööriistadest (vahenditest) on võimalik kuvada tervikuna või gruppide kaupa. Igal vahendil on tema eest vastutav isik. Võimalik on kuvada isiku vastutusse jäävaid seadmeid. Vahendeid lisavad ja kustutavad süsteemist administraatorid. Administraatorid saavad muuta vahendi eest vastutavad isikut. Teatud vahendid vajavad perioodiliselt kalibreerimist ja/või ülevaatust. Selle vajaduse informeerimiseks saadab rakendus seadme eest vastutavale isikule e-maili kalibreerimise uuenduse vajaduse kohta. Nimekirja ettevõtte töötajate serfikaatidest on võimalik kuvada tervikuna või inimese kaupa. Sertifikaate lisavad ja kustutavad süsteemist administraatorid. Sertifikaadid vajavad perioodilist uuendamist. Selle vajaduse informeerimiseks saadab rakendus sertifikaadi omanikule e-maili sertifikaadi uuendamise vajaduse kohta.


Kasutaja rollid

Juhid (administraatorid) – Võimalus hallata töötaja töötundide süsteemi (juhtide tabel). Võimalus näha ja muuta kõikide kõikide töötajate sisestatud tööajatabelit (töötaja tabel). Võimalus hallata nimekirja ettevõttes olemasolevatest seadmetest ja tööriistadest. Võimalus hallata ettevõtte töötajate sertifikaatide nimekirja.

Töötajad – Võimalus hallata enda töötunde (töötaja tabel). Võimalus näha nimekirja ettevõttes olemasolevatest üldkasutatavaid seadmetest ja tööriistadest ja isiklikest vahenditest, kuid ei ole võimalust antud andmeid muuta. Võimalus näha nimekirja isiklikest sertifikaatidest, kuid ei ole võimalust antud andmeid muuta.

Funktsionaalsused, mis peavad olema täidetud

Üldvaade:

Login:

  • Kasutajanimi
  • Password

Juhi(administraatori) vaade:

Töötajate k.a juhid haldamine:

  • Lisamine
    • Töötaja number
    • Eesnimi
    • Perenimi
    • Telefoni number
    • E-mail (default kasutajanimi)
    • Password (default)
    • Autentimise tase (juht või tavatöötaja)
  • Kuvamine
    • Filtreerimine ees –ja perenime järgi
  • Muutmine
  • Kustutamine (loogiline)


Projektide haldamine:

  • Lisamine
    • Projekti number
    • Projekti nimi
    • Projekti kirjeldus
    • Projekti alguskuupäev
    • Projekti eeldatav lõppkuupäev
    • Projekti staatus
    • Tööülesannete haldamine:
      • Tööülesande number
      • Tööülesande nimi
      • Tööülesande kirjeldus
      • Tööülesande alguskuupäev
      • Tööülesande eeldatav lõppkuupäev
      • Tööülesande staatus
  • Kuvamine
    • Filtreerimine projekti nime järgi
    • Filtreerimine projekti alguskuupäeva järgi
  • Muutmine
  • Kustutamine (loogiline)


Töötaja töötundide haldamine (juhi tabel):

  • Lisamine
    • Töötaja number (rippmenüü koos ees –ja perenimega)
    • Projekti number (rippmenüü koos projekti nimega)
    • Tööülesande number (rippmenüü koos tööülesande nimega)
    • Kuupäev (kalender menüü)
    • Töötunnid
    • Kommentaar
  • Kuvamine
    • Filtreerimine töötaja numbri järgi
    • Filtreerimine projekti numbri järgi
  • Muutmine


Töötaja töötundide haldamine (töötaja tabel):

  • Lisamine
    • Töötaja number (rippmenüü koos ees –ja perenimega)
    • Projekti number (rippmenüü koos projekti nimega)
    • Tööülesande number (rippmenüü koos tööülesande nimega)
    • Kuupäev (kalender menüü)
    • Töötunnid
    • Kommentaar
  • Kuvamine
    • Filtreerimine töötaja numbri järgi
    • Filtreerimine projekti numbri järgi
  • Muutmine

Töötaja vaade:

Enda töötundide haldamine:

  • Lisamine
    • Töötaja number
    • Projekti number
    • Tööülesande number
    • Kuupäev (kalender menüü)
    • Töötunnid
    • Kommentaar
  • Kuvamine
    • Filtreerimine projekti numbri järgi
  • Muutmine


Setup vaade, kasutajanime ja passwordi muutmiseks:

  • Kasutajanimi
  • Password

Funktsionaalsused, mida võiks rakendusse lisada kui on aega

Juhi(administraatori) vaade:

Vahendite (seadmetest ja tööriistadest) haldamine:

  • Lisamine
    • Vahendi number
    • Vahendi grupp
    • Vahendi rühm (üld või isiklik)
    • Vahendi nimi
    • Kommentaar
    • Vastutava isiku töötaja number (rippmenüü ees –ja perenimega)
    • Järgmise kalibreerimise aeg
    • Pilt (Nice-to-Have)
  • Kuvamine
    • Filtreerimine grupi ja rühma järgi
    • Filtreerimine vastutava isiku numbri järgi
  • Muutmine
  • Kustutamine

Sertifikaatide haldamine:

  • Lisamine
    • Sertifikaadi number
    • Sertfikaadi nimi
    • Kommentaar
    • Sertifikaadi välja andnud ettevõte
    • Sertifikaadi omaniku number
    • Sertifikaat väljaantud (kuupäev)
    • Sertifikaat kehtiv (kuupäev)
  • Kuvamine
  • Muutmine
  • Kustutamine

Töötaja vaade:

Üldvahendite (seadmetest ja tööriistadest) ja isiklike vahendite haldamine:

  • Kuvamine
    • Filtreerimine grupi ja rühma järgi

Isiklike sertifikaatide haldamine:

  • Kuvamine

E-mail teavitus:

  • Teavitus E-mailile seadme kalibreerimise uuendamise vajadusest
  • Teavitus E-mailile sertifikaadi lõpptähtaja saabumisest


Funktsionaalsused, mida võiks rakendusse lisada kunagi tulevikus

  • Lisada tööajaarvestusse palgaarvestus. Igal töötajal on olemas oma tunnihind ja arvestades tunnihinda, saab arvutada välja töötaja palga. Sellisel juhul peab lisama tööajaarvestusse ka üleajatöö mõiste, mis arvestaks tunnipalka erikoefitsendi alusel.
  • Lisada projekti ajakava arvestus. Projekt koosneb tavaliselt erinevatest etappidest, seda nii tarkvaraarenduses kui ka muude tööde puhul. Oleks hea kui tööajaarvestus võimaldaks võtta neid tööetappe arvesse.
  • Lisada projektide tööajaarvestusse ka seadmed ja tööriistad (vahendid). Kuna mehanismid ja seadmed on kallid, siis ettevõtted üritavad olla nende kasutamisel võimalikult efektiivsed ning ühtegi seadet niisama lattu ei osteta. Selleks, et juhtidel oleks ülevaade vabadest vahenditest, mida projektis võimalik kasutada, võiks projekti tööajaarvestuses olla ka vahendid.

Võimalikud problemaatilised kohad

Üldiselt vaadatuna tekib ilmselt probleeme erinevate kasutaja rollide andmete pärimise filtreerimisega, kus näiteks juhtidel on õigused muuta mingeid andmeid ja töötajatel neid õiguseid ei ole. Seadmete ja sertifikaatide süsteemi osas võib lisaks kasutaja rollide erisustele probleeme tekitada e-maili põhine teavitus. Ilmselt võib kogu vajaliku funktsionaalsuse implementeerimisel probleeme tekitada ajafaktor, kuna kavatsen seda teha üksi. Nice-to-Have funktsionaalsust implementeerides võib tekkida probleeme erinevate andmete tervikuks sidumisega.

Andmebaas