.BUG: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Hluts (talk | contribs)
No edit summary
Hluts (talk | contribs)
Line 16: Line 16:
== Kasutatav .NET tehnoloogia ==
== Kasutatav .NET tehnoloogia ==


Rakenduse esimene versioon on planeeritud desktop-lahendusena kasutades:
Target framework: .NET Framework 4.5


C# + WPF + LINQ
Rakenduse esimene versioon on planeeritud desktop-lahendusena kasutades: C# + WPF + LINQ


== Analüüs ==  
== Analüüs ==  

Revision as of 15:13, 21 November 2013

Idee: Inimressursi planeerija

Eesmärk on luua tarkvara, mis toetaks ettevõtte juhil inimressursside kasutuse planeerimist. Programm on eelkõige mõeldud ettevõtetele, kus inimesed töötavad mitmes vahetuses (näiteks hommikust õhtuni avatud restoran). Programm aitab juhil planeerida päevast inimressursi vajadust, määrata eri tundidel asutuses inimressursi vajadus, määrata vastavalt vajadusele ettevõtte personal tööle, anda ülevaade personali rakendamisest (töötundide arvu mõistes) ettevõtte töös ning anda väljund töögraafiku näol, mis annaks infot ka ettevõtte töötajatele, millal on nende tööaeg. Samuti, mitte vähemolulisema nüansina, annab programm ülevaate ettevõte personalist ning infost nende töötundidest, hõlbustades juhil koostamast selliseid töögraafikuid, et inimeste potentsiaal saaks maksimaalselt rakendatud.

Meeskond .BUG

    * Teele Sepman
    * Harles Luts
    * Rain Adamson
    * Mattiko Kabanen

Projekti blogi

"Meeskond .BUG"

Kasutatav .NET tehnoloogia

Target framework: .NET Framework 4.5

Rakenduse esimene versioon on planeeritud desktop-lahendusena kasutades: C# + WPF + LINQ

Analüüs

Rakenduse baasfunktsionaalsuse kirjeldus

Programm on eelkõige töövahend juhtidele, kes vastutavad ettevõtte toimimise eest. Programm on mõeldud efektiivseks inimressursi haldamiseks ning selle abil on tunduvalt lihtsam määrata õigel ajal tööle õigeid inimesi. Programm annab juhile visuaalse ülevaate, kuidas on ettevõtte personal eri päevadel tööle rakendatud. Lihtsustatult öeldes annab programm töögraafiku väljundi, mille pealt saab vaadelda, kas ettevõtte lahtiolekuaegadel on ettevõttes tööl vajalikul määral inimtööjõudu. Samuti on programmi visuaalne külg kasulik ning vajalik ka ettevõtte personalile, kes saavad programmi kaudu kätte oma töögraafikud.

Programmis on olemas järgmised võimalused:

  • Päevase töögraafiku koostamine, muutmine, kustutamine.
  • Päevase töögraafiku žablooni koostamine. See tähendab, et juht saab määrata millised ametikohad on tarvilikud ettevõtte toimimiseks kindlal ajal. Hiljem saab selle žablooni järgi määrata töötajaid just sel ajahetkel sel ametikohal tööle.
  • Päevaste töögraafikute põhjal pikemaajalisemate töögraafikute kuvamine (nädala töögraafik, kuu töögraafik).
  • Uute töötajate lisamine, lahkunud töötajate kustutamine, töötajate info muutmine (näiteks töökoormuse muutus)
  • Töögraafiku automaatne koostamine. Juht saab olemasolevate töötajate põhjal anda programmile ülesandeks koostada ise töögraafik (kas päevane, nädalane, või kuine). Programm hoolitseb selle eest, et kõikide töötajate ajakasutus optimeeritud ja kõik töötajad saaksid vajalikul määral rakendatud.
  • Töötajate infograafik. Juhil on võimalus vaadelda kompaktset töötajate nimekirja koos oluliste karakteristikutega (mitu tundi on iga isik sel nädalal/kuul töötanud). See on abiks käsitsi töögraafiku koostamisel, et kindlustada kõikide töötajate võrdne rakendamine.

Programmi väljundiks on kinnitatud töögraafik kõikide töötajate tööaegadega. Samuti saab välja võtta individuaalse töötaja töögraafiku. Seejärel saab seda printida või soovi korral töötajale meilile saata.

Järgnevalt vaatleme programmi olemust detailsemalt.

Rakenduse üldised baasfunktsionaalsused UML (Unified Modeling Language) kasutusjuhtude diagrammina (Must have)

Programm on mõeldud kasutamiseks eelkõige inimesele, kes vastutab ettevõtte töö toimimise eest. Programm annab inimesele järgmised võimalused: päevagraafiku lisamine kindlale kuupäevale, soovitava ajaperioodi ülevaade, vajadusel graafiku muutmine, vaadelda eraldi töölise koos tema töötundidega, soovi korral koostab programm töögraafiku inimese eest ise ning inimene saab ise tööliste andmeid muuta ja töölisi lisada või kustutada, kui töötaja on kas ettevõttesse tööle tulnud või töölt lahkunud.

Kasutusjuhud

Programmis on võimalikud järgmised tegevuste ahelad

1) Uue töötaja lisamine. Uue töötaja lisamiseks avab kasutaja töötajate vaate, seejärel avab ta tühja vormi kuhu saab kanda inimese nime, ameti, töökoormuse ja kontaktandmed ning salvestab. Nimi, amet ja töökoormus on kohustuslikud väljad. Töötaja andmete redigeerimise vormil on ka kirje kustutamise võimalus, juhul kui kasutaja soovib muudatused tagasi võtta.

Uue töötaja lisamine

2) Olemasolevate töötajate nimekirja kuvamine. See kuvatakse töötajate vaates. Kasutajal on võimalik valida nimekirjast töötaja ja soovi korral tema andmeid muuta. Samuti saab valitud töötaja kirje kustutada. Lisaks sellele annab programm infot kui palju on töötaja töötanud mingil ajavahemikul (sel nädalal, sel kuul). See annab juhile ülevaate, kas tema ettevõtte töötaja on ala- või ülerakendatud.

3) Manuaalne päevagraafiku koostamine. Uue manuaalse graafiku lisamiseks avab kasutaja töögraafikute vaate ning seejärel vastava vormi tühja graafikuga, mille ühel teljel on aeg (24 tundi) ning teisel teljel on töötajad. Käsitsi sisestatud ajagraafiku lisamiseks kannab kasutaja iga inimese töötunnid graafikule, sisestab kuupäeva ning salvestab. Graafiku redigeerimise vormil on ka selle graafiku kustutamise võimalus, kui kasutaja soovib muudatused tagasi võtta.

Päevagraafiku manuaalne koostamine

4) Ametite ja tööaja põhine päevagraafiku koostamine. Juhul kui kasutaja soovib graafikut autogenereerida, tuleb tal kõigepealt sisestada graafik, kus konkreetsete töötajate asemel on märgitud töötunnid ametite kaupa. Kasutaja avab töögraafiku lisamise vormi, mille ühel teljel on aeg ning teisel ametid, sisestab vastavate ametite tööajad ning salvestab. Nüüd on võimalik genereerida graafik soovitud ajaperioodile, selle käigus seob rakendus iga graafikule kantud ameti sobiva töötajaga.

Ametite ja tööaja põhine päevagraafiku koostamine

5) Žablooni põhjal töögraafiku koostamine. Tegemist on juhuga kui eelmises punktis on juba ametite ja tööaja põhine päevagraafik koostatud. Selle eelnevalt koostatud graafiku põhjal on võimalik lisada manuaalselt sobivad töötajad eelnevalt žabloonis määratud ametikohtadele.

5) Pikemaajaliste töögraafikute kuvamine. Juba sisestatud graafikuid kuvatakse graafikute vaates. Kasutajal on võimalik sirvida graafikuid kas ühe päeva, nädala või kuu kaupa. Sisestatud päevagraafiku saab võtta muutmisele või kustutada. Samuti saab sisestatud graafikute alusel genereerida väljundi valitud perioodi jaoks.

Pikemaajaline töögraafikute väljund.

Programmi eeldatav andmebaasi mudel

Hetkel näeme, et otstarbekas on kasutada seitset tabelit. Nendeks on isikute tabel, tööaja tabel, ametite tabel, ametinimede tabel, bosside tabel, logide tabel ning graafikute tabel. Täpsemalt on tabelite nimed ja nendevahelised seosed illustreeritud järgneval joonisel.

Tabelite struktuur

Programmi eeldatav klasside struktuur

Eeldatavad klassid ja nendevahelised seosed on esitatud UML klassidiagrammiga. Diagrammil toodud klassid on niiöelda esimene lahendus ja nende täpne sisu selgub arenduse käigus. Klasside struktuur on välja toodud järgneval joonisel.

Programmis kasutusele tulevad eeldatavad klassid

Logi

Lisaks sellele tuleb programmi ka logi xml faili kujul, et kasutajatel oleks ülevaade programmi abil tehtud muutustest tööaja ning töögraafikute suhtes.

Kas näeme arenduses ette problemaatilisi kohti?

Näeme ikka. Hetkel on kõige suuremaks väljakutseks graafikute graafilise väljundi tegemine. Oleme mõelnud esimestele lennukatele ideedele, kuidas seda rakendada, ent praktikas pole midagi veel katsetanud.

Funktsioonid, mis võiksid veel lisaks olla (Nice to have)

  • Kasutaja autentimine programmi avamisel.
  • Programm annab teavituse, kui lubatud töötundide arv nädalas on ületatud.
  • Programm peab ülevaadet nädalas üle normtööaja (s.t 40 töötundi) läinud tundide kohta.
  • Töögraafiku saab printida või soovi korral töötajale meilile saata.
  • Töögraafikusse asendaja märkimine.