Projektin suunnittelu Sami Kollanus TJTA330 Ohjelmistotuotanto 15.3. Projektin suunnittelu - CMMIkäytänteet Projektin estimaatit: Määritellään projektin laajuus (scope) Määritellään tehtävien ja tuotosten ominaisuudet Määritellään vaiheet ja aikataulutus Määritellään työmäärä ja kustannukset 2 CMMI-käytänteet Laaditaan projektisuunnitelma: Budjetti ja aikataulu Tunnistetaan riskit Tiedon hallinta Sunnitellaan resurssien tarve Osaamisen ja taitojen saatavuus ja hankinta Eri sidosryhmien osallistuminen ja suhde projektiin (viestintä) 3 1
CMMI-käytänteet Katselmoidaan suunnitelmat Sovitetaan yhteen resurssit ja suunnitelmat (erityisesti useamman tiimin työn syknronointi) Hankitaan sitoumukset 4 IEEE 1058-1998 IEEE Standard for Software Project Management Plans Lyhyesti kuvattu projektisuunnitelman runko Saatavilla IEEE:n elektronisesta arkistosta 5 Projektisuunnitelman runko 1. Yleiskuva (Overview) 2. Viiteet (References) 3. Määritelmät (Definitions) 4. Projektiorganisaatio (Project organization) 5. Hallinnolliset suunnitelmat (Managerial process plans) 6. Tekniset suunnitelmat (Technical process plans) 7. Tukitoimintojen suunnittelu (Supporting process plans) 8. Muut suunnitelmat (Additional plans) 6 2
1. Projektin yleiskuva Projektin tiivistelmä (Summary) Tarkoitus, laajuus ja tavoitteet Oletukset ja rajoitukset Projektin tuotokset Tiivistelmä aikataulusta ja budjetista Suunnitelman kehittyminen Milloin ja miten suunnitelmaa päivitetään? Suunnitellut ja suunnittelemattomat 7 2. Viitteet Listataan viitteet suunnitelman ulkopuoliseen relevanttiin informaatioon Prosessit Standardit Laki Yms. 8 3. Määritelmät Määritellään kaikki käsitteen, joiden merkitys voi olla epäselvä Ei aliarvioida tätä! Tällä on merkitystä varsinkin, kun useampi eri kieltä puhuva yrityskulttuuri kohtaa 9 3
4. Projektiorganisaatio 4.1 Ulkoiset rajapinnat, projektiin liittyvät organisaatiot Asiakas, toimittaja, alihankkija, muut suhteet 4.2 Sisäinen rakenne Kehitystiimi, suhteen muihin yksiköihin, tukiprosessien tarjoajat 4.3 Roolit ja vastuut 10 Projektiorganisaatio Asiakas Käyttäjät Ohjausryhmä Projektiryhmä Asiakkaan projektipäällikkö Tukiryhmä Projektipäällikkö Haikala & Märijärvi 2002, 227. 11 5. Hallinnolliset suunnitelmat 5.1 Projektin käynnistyssuunnitelma 5.1.1 Estimointisuunnitelma: Kuinka ja milloin estimointi tehdään? 5.1.2 Henkilöstösuunnitelma: Mitä osaamista tarvitaan ja kuinka se hankitaan? 5.1.3 Resurssien hankintasuunnitelma: Mitä muita resursseja tarvitaan ja kuinka ne hankitaan? 5.1.4 Koulutussuunnitelma 12 4
5. Hallinnolliset suunnitelmat 5.2 Työsuunnitelma 5.2.1 Tehtävien kuvaus, projektin osittaminen WBR (Work brakedown structure) Tehtäville tuotokset, hyväksymiskriteerit, esiehdot Jaetaan järkevän kokoisiin tehtäviin Eri tehtävillä voi olla erilaiset riskit, laatuvaatimukset yms. 13 Projektinhallinta Projektisuunnitelman laadinta Johtoryhmän palaveri Raportointi Projektin loppuraportin laadinta Esitysohjelmisto Järjestelmätehtävät Versionhallinta ja arkistointi Käyttöohjeen laadinta Hankinnat Koulutus Käyttöönottotuki Asennus Hyväksymiskoe Kartta Määrittelyn tarkennus Karttojen luonti Symbolien luonti Karttaosuuden suunnittelu ja pakkauskuvauksen laadinta Ohjelmointi Moduulitestaus Tietokanta Määrittelyn tarkennus Kohdetietokannan rakenteen suunnittelu Lisätietokannan rakenteen suunnittelu ja pakkauskuvauksen laadinta Tietokanna suorituskykytestit Ohjelmointi Moduulitestaus Testaus Testisuunnitelman laadinta Testiympäristön kokoaminen Testitapausten laadinta Järjestelmätestaus Koekäyttötestaus Liityntä X-järjestelmään Protokollan tarkennus Liityntäosuuden suunnittelu ja pakkauskuvauksen laadinta Ohjelmointi Moduulitestaus Käyttöliittymä Määrittelyn tarkennus Käyttöliittymän luonti Käyttöliittymän arviointi Ikkunoiden viimeistely Tekninen suunnittelu Sovellus Arkkitehtuurikaavioiden laadinta Määrittelyn tarkennus Vaatimusten laadinta arkkitehtuuriosille Sovellusosuuden suunnittelu Tekninen määrittely Koodaus Projektisuunnitelman tarkennus Moduulitestaus WBR esimerkki - Haikala & Märijärvi 2002, 229. 14 5.2 Työsuunnitelma 5.2.2 Aikataulun allokointi Tehtävien aikataulutus Tarkistuspisteet (milestones) Huomioidaan projektin ulkopuoliset rajoitukset Tehtävien väliset suhteet 15 5
Gant kaavio Teht. 1 Teht. 2 Teht. 3 Teht. 4 Teht. 5 Teht. 6 Tammi Helmi Maalis Huhti Touko Kesä Heinä 16 5.2 Työsuunnitelma 5.2.3 Resurssien allokointi Kuinka paljon tarvitaan resusseja tehtäväkohtaisesti? Millaista osaamista eri tehtäviin tarvitaan? 5.2.4 Budjetin allokointi Kuinka paljon eri tehtävät maksavat? Henkilökulut, muut resurssit, matkustus yms. 17 5.3 Hallintasuunnitelma (Control plan) 5.3.1 Vaatimusten hallintasuunnitelma Kuinka muutokset toteutetaan? Kuka, milloin, miten? 5.3.2 Aikataulun hallintasuunnitelma Kuinka työn etenemistä seurataan? Mitä tehdään, jos projekti ei etene suunnitellusti? 5.3.3 Budjetin hallintasuunnitelma 18 6
5.3 Hallintasuunnitelma 5.3.4 Laadun hallintasuunnitelma Mekanismit, joilla laatua mitataan ja valvotaan Aikataulutus! 5.3.5 Raportointisuunnitelma Mitä, kenelle, milloin? 5.3.6 Metriikan keräys Mitä, miksi, miten, milloin? 19 5.4 Riskien hallintasuunnitelma Riskien tunnistus Priorisointi Riskien seuranta Toimenpiteet, joilla riskejä piennnetään Toimentpiteet riskien lauetessa 20 5.5 Projektin lopetus Kuinka projektin päättäminen hoidetaan? Henkilöstön uudelleensijoitus Projektimateriaalin säilytys Kokemusten kerääminen ja analysointi Projektin arviointi 21 7
Tekniset suunnitelmat 6.1 Prosessimalli (elinkaarimalli) Tuotokset, katselmoinnit, tarkistuspisteet yms. 6.2 Menetelmät, työkalut ja tekniikat 6.3 Infrastruktuurin suunnittelu Kehitysympäristö, testiympäristö yms. 6.4 Tuotteen hyväksymissuunnitelma Kuinka asiakas hyväksyy tuotoksen? 22 7. Tukiprosessien suunnitelmat 7.1 Konfiguraation hallinta 7.2 Verifiointi ja validointi 7.3 Dokumentointi 7.4 Laadunhallinta 7.5 Katselmoinnit ja auditoinnit 7.6 Ongelmanratkaisu 7.7 Alihankinnan hallinta 7.8 Prosessin kehittäminen 23 Ylläpito??? 24 8