Projektinhallinta

Opasnet Suomista
Siirry navigaatioon Siirry hakuun




Projektinhallinta sisältää menetelmiä tutkimushankkeiden ja muiden projektien suunnitteluun, seurantaan ja hallintaan. Aikakone sisältää työajanhallintaan liittyviä osia. Tällä sivulla on menetelmiä talouden hallintaan.

Budjetin laskenta

Budjetointijärjestelmän olennaisia piirteitä ovat avoimuus, joustavuus ja laajennettavuus.

  • Se toimii Opasnetin perustyökaluilla.
  • Tiedot syötetään suoraan Opasnetin sivulle datatauluksi.
  • Budjetti lasketaan yksinkertaisesti sivulla olevaa nappeja painamalla. Tulosteen yksityiskohtaisuuden voi itse valita.
  • Siinä on sisäänrakennettuna tiedot laitosten lisäkuluprosenteista eri vuosina: Budjettikertoimet
  • Siinä on sisäänrakennettuna tiedot laitosten palkkaluokkien tasosta: Vaativuusluokkien keskipalkat
  • Palkat budjetoidaan henkilökuukausina ja muut menot euroina, eli kuten budjetintekijä ne ajattelee.
  • Se osaa laskea automaattisesti seuraavia asioita yhden rivin mittaisen kuvauksen avulla eli tulot ja menot saadaan pidettyä automaattisesti tasapainossa:
    • "Meno X (esim. henkilön palkka) katetaan budjettimomentilta Y (esim. virkapalkoista)" ja se laskee euromäärät automaattisesti eli tulo muuttuu jos menoa muutetaan. Tämä tapahtuu tekemällä tätä tuloa varten rivi, joka sisältää menoa vastaavat määritteet ja sen lisäksi kuvaus-sarakkeen ensimmäisenä sanana täytyy olla "TULOVASTA" (isoilla kirjaimilla). Vuosisarakkeisiin laitetaan se osuus, joka vastatuloa maksetaan; 1 tarkoittaa 100 % eli kyseinen meno katetaan kokonaisuudessaan tästä tulosta.
    • "Työpaketin TPX vajeesta Z % katetaan budjettimomentilta Y1 [ja (100 - Z) % budjettimomentilta Y2]." Tämä toteutetaan kirjaamalla Kustannuslajiksi "Tulot" ja kuvaus-sarakkeeseen ensimmäiseksi sanaksi "TULOLOPUT". Tämä tulo on kohdennettu tietylle projektille, työpaketille ja vuodelle. Vuosisarakkeisiin laitetaan se osuus, joka työpaketin tappiosta katetaan kyseiseltä tulomomentilta. Erityisesti tästä tykkään, koska ainakin itse joudun budjetoinnissa ähräämään juuri tämän asian kimpussa pisimpään.
  • Jokaisen projektin voi budjetoida toisista riippumatta omalle sivulleen, mutta samalla voidaan helposti hakea vapaavalintaiselta määrältä sivuja budjetit (esim. koskien koko yksikköä tai osastoa) ja laskea ne yhteen yhdeksi budjetiksi projektilistauksen avulla.
  • Jos halutaan, systeemiä voidaan helposti laajentaa niin, että palkkatyön osalta työntekijän nimi nostetaan omaksi kentäkseen, jolloin voidaan tehdä yhteenvetoja myös esim. osaston henkilöiden työaikasuunnitelmista eli siitä, kuka tekee mitäkin projektia ja mikä on kunkin budjetoitu kokonaistyöaika.


Budjetin datataulun rakenne on alla. Sarakkeet Kustannuslaji, vuosi ja kuvaus ovat pakollisia; muut sarakkeet joita ei datataulussa ole annettu luodaan automaattisesti oletusarvoista. Rakenteessa on sellainen erikoisuus, että "kuvaus" on itse asiassa yksi tarkasteltavista vuosista, mikä on jonkin verran hämäävää mutta tuottaa sen edun, että vuodesta toiseen toistuva tapahtuma voidaan kuvata yksinkertaisesti yhdellä rivillä niin että joka vuoden kohdalla on tapahtuman määrä kyseisenä vuonna ja viimeisenä tapahtuman kuvaus.

Budjetin datataulun sarakkeet
Selittävät sarakkeet (indeksit) Vuosi
Laitos Rahoittaja Projekti Työpaketti Kustannuslaji 2012 2013 kuvaus
THL Suomen Akatemia Projektin nimi TP1 Palkka VT7 12 6 Henkilön N.N. palkka vaativuusluokassa VT7, ensimmäisenä vuonna 12 kk, toisena 6 kk
THL Suomen Akatemia Projektin nimi TP1 Matkat 500 500 Matkakustannukset 500 e/vuosi

Lisäksi seuraavat sarakkeet luodaan taustatietojen ja laskennan perusteella:

  • htkk (henkilötyökuukaudet)
  • Yleiskustannus
  • Sivukulu
  • kkpalkka (kuukausipalkka)
  • summa (meno tai tulo euroina)


Syötettävän datan tyypit vaihtelevat rivistä riippuen:

  • Palkkakulut ilmoitetaan kuukausina.
  • Muut menot ja tulot ilmoitetaan euroina.
  • Automaattisesti laskettavat tulot TULOVASTA ja TULOLOPUT ilmoitetaan osuuksina kyseisen menon tai työpaketin tappion suuruudesta.

R-koodi

page:Projektinhallinta|name:budjetti

+ Näytä koodi

Tällä käyttöliittymällä ohjataan budjettilaskentaa:

Voit testata budjettia tällä tilapäisellä lisätapahtumalla.

kustannuslaji.add:

määrä.add:

kuvaus.add:

+ Näytä koodi

generic

Tämä koodi sisältää funktiot dropall ja PTable ja luonnokset koodeista EVPI, EVPPI, stattable.

+ Näytä koodi

Opetuskoodi

Tämä koodi on muuten sama kuin alkuperäinen, mutta se tulostaa kaikki mahdolliset välivaiheet (tosin yleensä vain ensimmäiset rivi tuloksesta), jotta käyttäjä voi helpommin nähdä, mitä se oikein tekee ja miten. Samoin funktio on muutettu suoraksi koodiksi, koska muuten tulokset näkyvät vasta kerralla kun funktio ajetaan, eikä siinä kohdassa kun asia tapahtuu funktion sisällä.

jaottelu:
Kustannuslaji
Työpaketti
Vuosi
Laitos
Rahoittaja
Projekti

+ Näytä koodi

Pohdintaa

Yhteenvetosivulle: projekti, sivutunniste, sivun nimi. Jotta ei tarvitse datataulussa toistaa sitä asiaa, joka on joka rivillä sama.

findident <- function(name) { SELECT obj.ident FROM obj WHERE obj.name = name

  1. HUOM. Tämä ei ota huomioon eri wikejä ja namespaceja, koska tämä tieto ei tallentune obj.nameen

}

Kuinka toimii tehtävienhallinta?

  • budjettiin kirjataan projektiin saadut työkuukaudet (työpaketeittain)
  • tehtävälistaan kirjataan luvatut tehtävät ja arvioidut kestot
  • henkilön työsuunnitelmaan tehdään aikajana siitä, mitä henkilö aikoo tehdä milloinkin. Tähän kirjataan myös lomat, sairauspoissaolot ja matkat.
  • sivulistaus listaa kaikki ne tehtävät, joita perustellusti tehdään, kun sivua päivitetään. EI TOIMI! Missä on sivulistaus? Jospa sekä sivuja että tehtäviä listataan johonkin projektiin kuuluvaksi? Tällöin voi olla yksi sivu per projekti, jossa kaikki nämä tiedot listataan. (Projekti), osaprojekti, tehtävä, henkilö, sivu. Tässä on olennaista, että tehtävät listataan henkilöittäin. Onko? Ei ole, vaan jos henkilöä ei sanota, silloin kuka tahansa projektiin kuuluva henkilö voi tehdä tehtäviä. Tämä taas toteutetaan siten, että jos tehtävän henkilöä ei mainita, kaikki tehtävää tekemään ilmoittautuneet listataan. Projektiin kuuluvat henkilöt taas listataan siten, että mainitaan projekti ja henkilö, mutta ei tehtävää eikä sivua. Tyhjä sarake tarkoittaa "mikä tahansa."
    • Usean projektin sivulla voi siis listata, että jokin sivu kuuluu osaksi sitä. Eli
  • automaattisesti käydään läpi tietoja siitä, kuka on muokannut mitäkin sivuja ja milloin. Sivuseurannan perusteella sivun päivitys jaetaan aina yhteen tehtävään siten, että automaattisesti otetaan huomioon, paljonko mitäkin tehtävää pitäisi tehdä. Tarvitaanko tätä varten erillinen lista, jossa kerrotaan tehtävätasolla se, mitä projektia katsotaan tehtävän, jos kyseinen sivul liittyy useampaan tehtävään? Pitäisikö tämä tarkastelu tehdä millä tasolla? Vaihtoehdot: projekti, osaprojekti, tehtävä. Tehtävä ei käy, koska hako pitää tehdä nimenomaan hallinnollisista syiistä ja tehtävät on jaettu toiminnallisin perustein. Hallinollisista syistä seurantatarkkuus on alaprojekti, koska esim EU:lla ei projektitaso riitä. Eli päätelmä: kukin tehtävä kytekeätän ainakin yhteen tai useampaan aliprojektiin (jos projektissa ei ole aliprojekteja, aliprojektiksi katsotaan automaattisesti projekti itse). Eli jotta homma onnistuisi, jokainen sivu pitää pystyä kytkemään yhteen tehtävään, joka puolestaan kytketään useampaan aliprojektiin.
  • Miten sitten hallitaan tehtävän tekemisen seurantaa? Jotenkin pitäisi helposti pystyä listaamaan se, missä tilanteessa tehtävä on. Tätä on melko hellppo listata suoraan tehtävälistaan, mitta sitten etenemistä pitää seurata erikseen. Entä jos tieto-oliotemlaattiin laitettaisiin parametriksi tehtävän eteneminen? Ei toimi, koska yhdellä sivulla voi olla useita tehtäviä. Entä jos hyödynnetään todota ja lisätään siihen yksi parametri, joka voidaan lukea suoraan tietokannasta? Tämä voisi toimia, mutta tehtävälistauksen seurannan pitäisi toimia myös. Jos on molemmissa tietoa, sivun todo ajaa yli tehtävälistasta. Niinpä jos halutaan seurata tilannetta, ei pidä katsoa alkuperäistä listaa vaan pitää ajaa malli, joka tekee tilannekatsauksen.
  • työajan seuranta (timetracking) korjaa päivittäin sitä, mitä itse asiassa tuli tehdyksi. Tämä ajaa yli työsuunnitelman ja sivuseurannan, jos on ristiriitoja.

Laskenta:

  • Resurssitarkistus: verrataan budjetit ja tehtävälistat toisiinsa. Kaikkiin tehtäviin pitäisi olla löydettävissä riittävästi budjettia työn tekemiseksi.
  • Työaikatarkistus: verrataan tehtävälistaa ja henkilöiden työsuunnitelmia toisiinsa. Jokaisen tehtävän pitäisi löytyä jonkun työaikasuunnitelmasta, ja työaikasuunnitelmat eivät saisi olla kohtuuttomasti ylityöllistettyjä.
  • Työtehtävien seuranta: katsotaan tehtävään suunniteltu työaika tehtävälistasta. Lisäksi katsotaan, paljonko tehtävään on oikeasti käytetty aikaa työsuunnitelman, sivuseurannan ja päivittäisen työajanseurannan perusteella.
  • Työaikaraportointi: Käydään läpi tehtyjä työtehtäviä. näistä kertyvät työtunnit allokoidaan aliprojekteille siten, että tärkeyslistalla ensimmäiset aliprojektit tulevat ensimmäisenä raportoitua. Kun jokin projekti on raportoitu, työaikaraportti on lukittava jotta laskenta ei muutu jälkikäteen. Miten? Tietty tehtävä tai aliprojekti ei kuitenkaan ole tullut valmiiksi raportointijakson päättyessä.

Pitääkö tehdä niin, että aina kun raportoidaan, kyseinen työaikalistaus kopioidaan jollekin sivulle, ja se sitten automaattisesti miinustetaan tehdyistä työajoista ensimmäisenä, ja vasta jäljelle jääneeseen työaikaan sovelletaan allokointia. Mutta sitten siitäkin tarvitaan listaus, mitä projektiraportointeja lasketaan mukaan mihinkin työaikaraportointiin. Vai tehdäänkö niin, että on yksi lista siitä, minkä projektin raportointi on missäkin, ja sitten kaikkien relevanttien projektien raportoinnit kaivetaan esiin? Tämä on hyvä.

  • Projektin tuntiraportti: projekti, aliprojekti, henkilö, alku, loppu, tehdyt tunnit. Tämä summataan sopivaan tarkkuuteen projektista riippuen, esim. EU-projekteissa henkilö, alku, loppu summataan raportointijaksolla pois, kun taas EAKR-projekteissa mitään niistä ei summata vaan raportti tehdään yksityiskohtiaan myöten. Ilmeisesti joka tapauksessa yksityiskohtainen raportti pitää tallentaa, muuten käy niin, ettei summatiedolla pystytä yksiselitteisesti laskemaan jo raportoituja tunteja pois.

Katso myös

Viitteet

Aiheeseen liittyviä tiedostoja

<mfanonymousfilelist></mfanonymousfilelist>