Tietojenkäsittelytiede Ohjelmistotuotanto Kuvaus --------------------------------------------------------------------- 0) 21.02.1992 Jorma Sajaniemi 1) 27.09.1994 Jorma Sajaniemi 2) 08.10.1996 Jorma Sajaniemi ESIMERKKI PROJEKTIN SUUNNITTELU- JA SEURANTAVÄLINEESTÄ Seuraavassa hahmotellaan projektin suunnittelu- ja seuranta- väline SPro. Se saa syötteenään projektin tehtäviä koskevia tietoja ja laatii niistä pelkkiä ASCII-merkkejä käyttäviä, allaolevien esimerkkien mukaisia janaesityksiä. Erityisesti DOS- ja Windows-ympäristöihin on saatavana useita projektien suunnittelu- ja seurantaohjelmistoja, jotka sisäl- tävät vastaavia laskentoja ja kaavioiden piirtämisiä. 1. Projektin aikataulun suunnittelu Projektin suunnitteluvaiheessa ilmoitetaan (ASCII-tiedostos- sa) kustakin tehtävästä sen kesto viikkoina, tehtävän edeltä- jät ja mahdollinen tehtävälle ajateltu ajankohta. Tarkastel- laan esimerkkinä projektia, jossa on neljä tehtävää: A: kesto 8 viikkoa, ei edeltäjiä, aloitus viikolla 39/91 B: kesto 3 viikkoa, ei edeltäjiä, aloitus viikolla 42/91 C: kesto 9 viikkoa, edeltäjinä A ja B, aloitus 50/91 D: kesto 6 viikkoa, edeltäjänä A, aloitus 43/91 Näiden perusteella SPro pystyy piirtämään seuraavanlaisen ku- van: 91 92 3 4 5 1 2 34567890123456789012123456789012345678901234 v A ___++++++++ B ______+++_____ C ___+++++++++______ D >>>>++++++____________ - tarkasteluhetki on viikon 35/91 loppu (merkki v) - projektin lopettamisviikoksi on suunniteltu 10/92 - tehtävä A voidaan aloittaa 36/91, mutta se on suunniteltu aloitettavaksi 39/91; siis pelivaraa alussa - mikään tehtävästä B riippuva muu tehtävä ei ala ennen 50/91, joten sillä on pelivaraa sekä alussa että lopussa - tehtävä C voidaan aloittaa kun tehtävät A ja B ovat valmii- ta, suunniteltu aloitus on 50/92 - tehtävä D on suunniteltu aloitettavaksi viikolla 43/91, mutta koska se riippuu tehtävästä A, niin sen aloitus lyk- kääntyy viikolle 47/91 Tiettyinä viikkoina ei töitä tehdä käytännöllisesti katsoen lainkaan (esimerkiksi vuoden 1996 jouluviikko). Lisäksi jot- kin tehtävät eivät voi edistyä joidenkin kalenteriviikkojen aikana lainkaan esimerkiksi avainhenkilöiden lomien takia. Tämän johdosta on tarpeen voida ilmoittaa tällaisista (kalen- teriviikkoihin sidotuista) rokuliviikoista, jotka voivat koh- Sivu 2 Tietojenkäsittelytiede Ohjelmistotuotanto Kuvaus --------------------------------------------------------------------- distua joko koko projektiin tai vain tiettyihin tehtäviin. Rokuliviikot näkyvät kuvassa kuten muutkin viikot, jolloin tehtävää ei voida tehdä: C ___++++>+++++_____ 2. Resurssitarpeen suunnittelu Henkilöresurssit jakaantuvat kahteen luokkaan: "massa- resursseihin" ja "avainresursseihin". Massaresurssilla tar- koitetaan tässä työntekijäryhmiä, joista voidaan ottaa kuka tahansa tekemään kyseiselle ryhmälle sopivia töitä. Avainre- surssin edustaja taas on henkilö, jonka työpanos ei ole kor- vattavissa toisten henkilöiden tekemällä työllä. Em. luokat (ja itse asiassa myös kaikki muutkin kuin henkilö- resurssit, siis koneresurssit yms.) voidaan käsitellä yhte- näisellä tavalla ottamalla käyttöön resurssiluokat, joista tiedetään nimi ja lukumäärä (avainresursseilla 1). Tarvit- taessa voidaan käytettävissä oleva resurssin lukumäärä il- moittaa kalenteriviikoittain (jolloin pystytään esittämään esimerkiksi avainresurssien lomat yms.). Resurssien käytön laskemiseksi on kullekin tehtävälle ilmoi- tettava mitä resursseja se tarvitsee ja kuinka paljon. SPro olettaa, että kutakin resurssia tarvitaan tasaisesti koko vaiheen ajan. (Tämän voi tietenkin kiertää pilkkomalla tehtä- vän pienemmiksi tehtäviksi). Näiden tietojen perusteella voi SPro esittää resurssien kulu- tuksen eri tehtävissä yhteensä: A ___++++++++ B ______+++_____ C ___+++++++++______ D >>>>++++++____________ Rx ===!!!=====!!!====== Ry .......====== Edellä käyttöaste on ilmaistu seuraavasti: Resurssista käytössä < 20 % . Resurssista käytössä 20-50 % : Resurssista käytössä 50-80 % = Resurssista käytössä 80-120 % ! Resurssista käytössä > 120 % Sivu 3 Tietojenkäsittelytiede Ohjelmistotuotanto Kuvaus --------------------------------------------------------------------- 3. Projektin seuranta Projektin edetessä saadaan tietoja tehtävien todellisista aloitus- ja päättymisajankohdista, uusista kestoarvioista se- kä viikoista, jolloin jotain tehtävää ei tehty lainkaan. Näi- den avulla SPro pystyy kuvaamaan kulloisenkin tilanteen. Seu- raavassa on muutama esimerkki. v A >>++++++++ B ++. C _+++++++++______ D >>>>>>++++++__________ - tehtävän A aloitus on myöhästynyt kaksi viikkoa - tehtävä B on päättynyt ja siihen on kulunut aikaa viikko vähemmän kuin mitä oli arvioitu - tehtävän C aloitusvara on supistunut A:n myöhästymisen ta- kia - tehtävän D aloitus on jo myöhästynyt ja sen arvioidaan myö- hästyvän vielä lisää A:n takia v A >>++++++++XXX B ++. C >>+++++++++____ D >>>>>>>>>++++++_______ - tehtävä A on kestänyt kolme viikkoa yli suunnitellun - tehtävän C aloitus myöhästyy A:n mukaisesti - tehtävän D aloitus myöhästyy A:n mukaisesti v A >>++++++++XXX B ++. C >>+++>>++++++__ D >>>>>>>>>++++++_______ - tehtävä A on päättynyt - tehtävässä C on ollut kaksi väliviikkoa, jolloin tehtävä ei ole päässyt etenemään Seuraavassa on yhteenveto tehtävien kaavioissa käytetyistä merkinnöistä: _ Tehtävällä oleva pelivara (aloituksessa tai lopetuk- sessa); merkitään vain tulevaisuuden osalta + Tehtävälle suunnitellun työmäärän mukainen työviikko X Tehtävälle suunnitellun työmäärän ylittävä työviikko; merkitään vain menneisyyden osalta . Tehtävälle suunnitellun työmäärän alittava työviikko; merkitään vasta kun tehtävä on päättynyt (tällaisia viikkoja voi sijaita myös tulevaisuudessa) > Viikko, jolloin tehtävää olisi pitänyt suunnitelman mukaan tehdä, mutta jolloin sitä ei ole tehty tai jolloin sitä ei ennusteen mukaan voidaan vielä tehdä Tehtävän kokonaismyöhästymisen saa selville laskemalla yhteen tehtävään kuuluvat merkit > ja X. Sivu 4 Tietojenkäsittelytiede Ohjelmistotuotanto Kuvaus --------------------------------------------------------------------- Jotta projektipäällikkö osaisi noin projektin puolivälissä kysellä tekijöiltä tehtävälle suunnitellun keston mielekkyyt- tä, ilmoittaa SPro puolivälissä olevat tehtävät seurantakaa- vion lopussa yksinkertaisesti luettelona: Puoliväli juuri ylitetty: A C 4. Lähtötiedot Kaavioiden piirtämisen lähtökohtana ovat seuraavat ASCII- tiedostot: - Projektin lopettamisviikko - Tehtävien perustiedot ja niiden valmistumistiedot - Rokuliviikkojen tiedot - Resurssien perustiedot - Tehtäviin käytettyjen viikkojen tiedot Tiedostojen tarkempi sisältö jätetään tässä kuvaamatta. Olen- naista on, että - perustietojen ylläpito on helppoa (normaalilla editorilla) - toteutuneiden työaikojen tiedosto saadaan ohjelmallisesti normaalista työajan seurantajärjestelmästä 5. Ongelmia Esitetty menetelmä ei anna mitään mahdollisuutta ilmoittaa, että jokin tehtävä (joka on jo myöhässä eli X:illä) myöhästyy nykyarvion mukaan vielä 2 viikkoa ja saada tämä tulevaisuu- teen sijoittuva myöhästyminen näkymään X:inä. Ainoa keino on ilmoittaa tehtävälle uusi arvioitu kesto, jolloin sen koko kesto tulee +:ksi. Ei ole mahdollista ilmoittaa samaa henkilöä sekä avainresurs- siksi että massaresurssiksi. Toisaalta avainresurssiksi il- moitettavat henkilöt ovat yleensä niin työllistettyjä, että heiltä ei liikene pientäkään panosta muihin kuin oman erikoisalan töihin. Vastaavasti on helppo löytää muita seikkoja, joiden kuvaami- nen ehdotetun järjestelmän puitteissa on hankalaa. SPron pe- rusajatuksena on ollut se, että apuväline olisi melko yksin- kertainen mutta antaisi silti kaikki tärkeimmät tiedot pro- jektin aikataulu- ja resurssisuunnittelun sekä aikatauluseu- rannan tarpeisiin. Tällöin joudutaan väistämättä yksinker- taistamaan mallitettavaa todellisuutta. Tämä ei ole välttä- mättä paha asia, sillä kovin pikkutarkka mallittaminen joh- taisi helposti sihen, että kukaan ei jaksaisi ilmoittaa pro- jektinsa tietoja ja niiden muutoksia riittävällä tarkkuudel- la.